1. 程式人生 > >Rancher2.0中部署Longhorn分布式存儲實驗

Rancher2.0中部署Longhorn分布式存儲實驗

完成 ef7 ESS 動態 快照 全局 ip地址 AC 參考


目錄

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分布式存儲實驗