tft每日頭條

 > 科技

 > 容器存儲

容器存儲

科技 更新时间:2024-12-04 15:45:00
入坑準備

REX-Ray 容器跨主機存儲坑實在是太多,百度搜索出來的各種解決方案很少有實際意義,跟風粘貼複制者衆,大家在學習這些前沿技術時,學會去國外官方論壇上查詢問題。rex-ray作為docker跨主機數據卷存儲解決方案,支持很多存儲模式,例如openstack的cinder,分布式存儲ceph等,但是今天我們用VirtualBox 虛拟機virtualbox來實現容器的跨主機存儲。

步驟一

閱讀官方文檔,了解rex-ray究竟是什麼,能夠做什麼,為什麼選用它,它又支持什麼。

官方鍊接 :

https://rexray.readthedocs.io/en/stable/

https://rexray.readthedocs.io/en/stable/user-guide/storage-providers/virtualbox/#virtualbox

步驟二

安裝VirtualBox,并啟動一個虛拟機,例如centos7虛拟機。我是直接搜狗搜索VirtualBox,然後默認安裝。安裝centos7虛拟機也很簡單,如果不會可以百度教程。

需要注意的是,安裝虛拟機時,網絡選擇橋接,确保centos7虛拟機可以正常聯網。同時存儲需要删除默認的控制器,選用SATA的控制器,安裝完系統後,請清空其他軟盤設備隻保留你的虛拟機硬盤。細心的讀者已經發現,我的端口數設置為30,這是REX-Ray官方給的推薦配置,隻有擴大端口數你之後創建的卷才能被機器識别使用。

建議直接安裝兩台虛拟機!!!以便等會驗證跨主機存儲。

容器存儲(容器跨主機存儲入坑指南)1

步驟三

為兩台虛拟機安裝docker和rex-ray。如果你不能保證你的網絡可以與互聯網正常通信,就不用繼續下面的教程了。

我的習慣是禁SELINUX,sed -i "s/^SELINUX=.*/SELINUX=disabled/" /etc/selinux/config

然後安裝docker,yum -y install docker

接下來安裝rexray,curl -sSL https://rexray.io/install | sh -s -- stable

最後編寫/etc/rexray/config.yml文件

libstorage: service: virtualbox virtualbox: endpoint: http://172.16.2.214:18083 userName: root password: 123qwe tls: false volumePath: /Users/cgls/VirtualBox vms/cjm controllerName: SATA localMachineNameOrId: cjm

解讀config文件:

service選擇VirtualBox的virtualbox;

endpoint設置為你啟動VirtualBox的宿主機加18083端口,這是因為你在宿主機上啟動了VirtualBox而虛拟機都是使用橋接網絡,所以ip是宿主機的ip;

volumePath是你的第一台虛拟機的存放位置,我的第一台虛拟機是cjm所以位置是這個;

controllerName:設置SATA類型;

localMachineNameOrId是指定的vm的名字。

這個時候先不要執行 systemctl restart rexray.service

我們需要去cmd中rexray的安裝目錄下執行關閉登錄認證 和 啟動vboxwebsrv 服務

VBoxManage setproperty websrvauthlibrary null vboxwebsrv -H 0.0.0.0

執行完畢之後,我們就可以啟動相關服務了。

systemctl restart rexray systemctl restart docker

步驟四

跨主機數據卷測試

現在兩台虛拟機都啟動了docker和rexray服務。我們創建數據卷設備驗證一下:

docker volume create --driver rexray --name=mysqldata --opt=size=2 docker volume create --driver rexray --name=mysqldata1 --opt=size=2 docker volume ls rexray volume ls

容器存儲(容器跨主機存儲入坑指南)2

現在我們在第一台虛拟機上創建一個t1的容器,挂載mysqldata設備,并在mysqldata設備上寫一個測試文件1.txt。

容器存儲(容器跨主機存儲入坑指南)3

然後我們删除t1容器在另外一台虛拟機上創建t2的容器,也挂載mysqldata設備,并查看之前寫的文件是否還存在。

容器存儲(容器跨主機存儲入坑指南)4

跨主機存儲已經實現,如果你在實現rexray遇到了很多坑,可以一起交流交流。

容器存儲(容器跨主機存儲入坑指南)5

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved