Rancher2.0中部署Longhorn分布式存儲實驗
目錄
1、簡介
2、實驗環境
3、應用商店中部署longhorn
4、創建工作負載,使用longhorn存儲
5、查看longhorn UI
6、註意事項
1、簡介:
??? Longhorn是RancherLab為K8S環境研發的一種分布式塊存儲系統。Longhorn輕便易用,你可以用Kubectl命令,在一個現有的K8S集群上快速部署。結合Rancher2.0環境中的應用商店,還可以實現一鍵部署,為K8S集群環境提供動態的StorageClass持久卷支持。
??? Longhorn使用容器和微服務方式來實現分布式塊存儲。它為每個塊設備創建了專用存儲控制器,並在多個節點上跨多個副本同步復制卷,存儲控制器和副本本身也是使用K8S編排的,還支持快照和備份功能。
2、實驗環境:
??? 4臺主機使用Rancher2.0搭建K8S環境,角色及基本信息如下:
機器名????? IP地址????? 主機角色??????
Rancher2? 192.168.3.220? Rancher Server
Node221? 192.168.3.221? etcd、control、worker
Node222? 192.168.3.222? etcd、control、worker
Node223? 192.168.3.223? etcd、control、worker
圖1-使用rancher2.0部署的K8S集群環境
3、應用商店中部署longhorn:
圖02-在全局環境下啟用官方認證應用商店
圖03-在項目default中的應用商店中,啟動longhorn應用
圖04-在項目default中的應用商店中,啟動longhorn應用
圖05-點擊啟動按鈕,即可完成Longhorn部署,可通過端口訪問UI管理面板
圖06-部署Longhorn應用以後,各主機上的Pod狀態
圖07-此時集群Cluster中已經自動創建好了存儲類StorageClass
4、創建工作負載
圖08-在項目的工作負載中,部署一個服務
圖09-部署工作負載-工作負載數量只能是1個Pod
圖10-部署工作負載-卷-添加新的持久化卷聲明
圖11-部署工作負載時,添加卷聲明的設置
圖12-部署工作負載時,設置掛載點後,啟動工作負載2
圖13-工作負載nginx部署完畢
圖14-工作負載nginx容器中的目錄sss
5、查看Longhorn UI
圖15-在負載均衡中訪問Longhorn UI
圖16-LonghornUI中能看到有3臺主機和剛剛創建的1個卷
圖17-LonghornUI中能看到有3臺主機和剛剛創建的1個卷的副本
圖18-LonghornUI中卷的信息
圖19-LonghornUI中卷的信息
圖20-K8S集群中持久卷的信息,已包含剛剛創建的持久卷
6、註意事項:
1、因為是塊設備,工作負載中的Pod數量只能是1個;
2、因為是塊設備,創建持久卷聲明時,只能選擇單主機讀寫,不能像NFS那樣可以多主機讀寫,塊設備選擇多主機讀寫會出錯。
3、Longhorn是一個正在進行中的項目,目前只發布0.1/0.2/0.3這3個版本。
參考鏈接:
Longhorn在Github上的鏈接:
https://github.com/rancher/longhorn
https://github.com/rancher/longhorn-manager
https://github.com/rancher/longhorn-ui
Rancher2.0中部署Longhorn分布式存儲實驗