We implement RAID6VM: Implement RAID-6 distributed storage system on multiple virtual machines. for CE7490 project 2.
Code contriutors: Minghao LI, Tianwen ZHU.
The system is designed with six primary functions: storage, update, failure detection, restoration, and retrieval. Instead of using folders to emulate nodes, extend the implementation to work across multiple virtual machines (VM) to realize a peer-to-peer RAIN. We use the OS-level virtualization techniques to start the VMs.
- Docker version 24.0.2, build cb74dfc
- python==3.9.0
- Flask==3.0.0
- numpy==1.22.4
- kademlia==2.2.2
- requests==2.28.0
- requests-oauthlib==1.3.1
- nest-asyncio==1.5.6
Before install RAID6VM, you need to build the docker image by
bash raidvm/vm_app/build.shUse the package manager pip to install RAID6VM.
pip install poetry
poetry installTo initiate the test experiments and observe the RAID-6 system in action, run:
bash test.shMnay thanks to Ruihang's code at https://github.com/RuihangWang/RAID6.

