centos7下安裝docker(16.1docker跨主機存儲--Rex-Ray)


一。Rex-Ray以standalone進程的方式運行在docker主機上,安裝方法很簡單:在docker1和docker2上運行如下命令:

curl -sSL https://dl.bintray.com/emccode/rexray/install | sh

然后創建並編輯Rex-Ray的配置文件/etc/rexray/config.yml

 

也可以使用圖形化的在線Rex-Ray配置生成:http://rexrayconfig.codedellemc.com/

配置文件的內容如下:

1. service: virtualbox   使用virtualbox的virtual media作為backend,提供data volume。原因是我們的實驗環境就是virtualbox,不需要額外部署存儲系統,作為驗證和實踐,已經足夠多了。如果是生產系統,肯定得選擇更加穩定的backend,比如ceph rbd

2. endpoint: http://192.168.99.1:18083 是vietualbox宿主機的服務端口,后面會演示如何啟動這個服務

3.volumePath: /Users/<your-name>/VirtualBox/Volumes 是vietual宿主機上存放data volume的目錄

4. controllerName: SATA  是controller的名字,不用修改

 

 

 

二 .在每台host主機上配置完Rex-Ray driver之后,要配置backend

注:由於實驗環境的原因,沒有做實驗,就不展示了

 

 

三。在每台host主機上分別創建volume

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

 

 

四。先在一台host主機上運行容器並使用數據卷(mysqldata)

宿主機提供的backend被容器使用過程:

1.backend首先提供了volume,如:mysqldata

2.mysqldata先被掛載到host主機上,host主機會自動創建一個掛載點

3.host主機上的掛載點通過容器運行時的指定,被掛載到容器上

 

五。更新容器中的數據,刪除容器

 

 

六。在另外一個host主機上重新運行一個容器,並掛載相同的volume(mysqldata),這個volume(mysqldata)會被沖重新使用。使用過程和之前一樣

 

 

 

總結:1.假設有兩個host主機docker1和docker2,當我們在docker1上運行了兩個有狀態的容器時,要分別創建兩個不同名的volume,

2.volume實際是backend的一部分

3.volume有點類似共享存儲

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM