日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Longhorn云原生容器分布式存儲(chǔ)-AirGap安裝

Longhorn云原生容器分布式存儲(chǔ)-Air Gap安裝

作者:為少 2021-08-29 23:53:32

存儲(chǔ)

存儲(chǔ)軟件

云原生

分布式 Longhorn 可以通過使用 manifest file、Helm chart 或 Rancher UI 安裝在 air gapped 環(huán)境中。

成都創(chuàng)新互聯(lián)長(zhǎng)期為上千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為雨花臺(tái)企業(yè)提供專業(yè)的網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站,雨花臺(tái)網(wǎng)站改版等技術(shù)服務(wù)。擁有十年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

Longhorn 可以通過使用 manifest file、Helm chart 或 Rancher UI 安裝在 air gapped 環(huán)境中。

目錄

  • 前提要求
  • 使用 Manifest File
  • 使用 Helm chart
  • 使用 Rancher app
  • 故障排除

前提要求

  • 將 Longhorn Components 鏡像部署到您自己的 registry。
  • 將 Kubernetes CSI driver 組件鏡像部署到您自己的 registry。

注意:

  • 所有需要的鏡像的完整列表在 longhorn-images.txt 中。首先,通過運(yùn)行下載鏡像列表:

wget https://raw.githubusercontent.com/longhorn/longhorn/v1.1.2/deploy/longhorn-images.txt

  • 我們提供了一個(gè)腳本 save-images.sh 來快速拉取上面的 longhorn-images.txt 列表。如果您為標(biāo)志 --images 指定 tar.gz 文件名,腳本會(huì)將所有鏡像保存到提供的文件名。在下面的示例中,腳本將 Longhorn 鏡像拉取并保存到文件 longhorn-images.tar.gz。然后,您可以將該文件復(fù)制到您的 air-gap 環(huán)境中。另一方面,如果您不指定文件名,腳本只會(huì)將鏡像列表拉到您的計(jì)算機(jī)上。
  
 
 
 
  1. wget https://raw.githubusercontent.com/longhorn/longhorn/v1.1.2/scripts/save-images.sh 
  2. chmod +x save-images.sh 
  3. ./save-images.sh --image-list longhorn-images.txt --images longhorn-images.tar.gz 
  • 我們提供了另一個(gè)腳本 load-images.sh,用于將 Longhorn 鏡像推送到您的私有 registry。如果您為標(biāo)志 --images 指定 tar.gz 文件名,腳本將從 tar 文件加載鏡像并推送它們。否則,它將在您的本地 Docker 中找到鏡像并推送它們。在下面的示例中,腳本從文件 longhorn-images.tar.gz 加載鏡像并將它們推送到
  
 
 
 
  1. wget https://raw.githubusercontent.com/longhorn/longhorn/v1.1.2/scripts/load-images.sh 
  2. chmod +x load-images.sh 
  3. ./load-images.sh --image-list longhorn-images.txt --images longhorn-images.tar.gz --registry  
  • 有關(guān)使用腳本的更多選項(xiàng),請(qǐng)參閱 flag --help:
  
 
 
 
  1. ./save-images.sh --help 
  2. ./load-images.sh --help 

使用 Manifest File

獲取 Longhorn Deployment manifest file

  
 
 
 
  1. wget https://raw.githubusercontent.com/longhorn/longhorn/v1.1.2/deploy/longhorn.yaml 

創(chuàng)建 Longhorn namespace

  
 
 
 
  1. kubectl create namespace longhorn-system 

如果私有 registry 需要身份驗(yàn)證,在 longhorn-system 命名空間中創(chuàng)建 docker-registry secret:

  
 
 
 
  1. kubectl -n longhorn-system create secret docker-registry  --docker-server= --docker-username= --docker-password= 
  • longhorn-driver-deployer Deployment
  • longhorn-manager DaemonSet
  • longhorn-ui Deployment
  • 在以下資源中將您的 secret 名稱 SECRET_NAME 添加到 imagePullSecrets.name

示例:

  
 
 
 
  1. apiVersion: apps/v1 
  2. kind: Deployment 
  3. metadata: 
  4.   labels: 
  5.     app: longhorn-ui 
  6.   name: longhorn-ui 
  7.   namespace: longhorn-system 
  8. spec: 
  9.   replicas: 1 
  10.   selector: 
  11.     matchLabels: 
  12.       app: longhorn-ui 
  13.   template: 
  14.     metadata: 
  15.       labels: 
  16.         app: longhorn-ui 
  17.     spec: 
  18.       containers: 
  19.       - name: longhorn-ui 
  20.         image: longhornio/longhorn-ui:v0.8.0 
  21.         ports: 
  22.         - containerPort: 8000 
  23.         env: 
  24.           - name: LONGHORN_MANAGER_IP 
  25.             value: "http://longhorn-backend:9500" 
  26.       imagePullSecrets: 
  27.       - name:                           ## Add SECRET_NAME here 
  28.       serviceAccountName: longhorn-service-account 

對(duì) manifest file 應(yīng)用以下修改

  • longhornio/longhorn-manager
  
 
 
 
  1. image: /longhorn-manager: 
  • longhornio/longhorn-engine
  
 
 
 
  1. image: /longhorn-engine: 
  • longhornio/longhorn-share-manager
  
 
 
 
  1. image: /longhorn-instance-manager: 
  • longhornio/longhorn-ui
  
 
 
 
  1. image: /longhorn-ui: 
  • CSI_ATTACHER_IMAGE
  • CSI_PROVISIONER_IMAGE
  • CSI_NODE_DRIVER_REGISTRAR_IMAGE
  • CSI_RESIZER_IMAGE
  • CSI_SNAPSHOTTER_IMAGE

修改 longhorn-driver-deployer Deployment 中的 Kubernetes CSI driver 組件環(huán)境變量指向你的私有 registry 鏡像

  
 
 
 
  1. - name: CSI_ATTACHER_IMAGE 
  2.   value: /csi-attacher: 
  3. - name: CSI_PROVISIONER_IMAGE 
  4.   value: /csi-provisioner: 
  5. - name: CSI_NODE_DRIVER_REGISTRAR_IMAGE 
  6.   value: /csi-node-driver-registrar: 
  7. - name: CSI_RESIZER_IMAGE 
  8.   value: /csi-resizer: 
  9. - name: CSI_SNAPSHOTTER_IMAGE 
  10.   value: /csi-snapshotter: 
  • 修改 Longhorn 鏡像以指向您的私有 registry 鏡像

示例:

  
 
 
 
  1. apiVersion: apps/v1 
  2. kind: Deployment 
  3. metadata: 
  4.   labels: 
  5.     app: longhorn-ui 
  6.   name: longhorn-ui 
  7.   namespace: longhorn-system 
  8. spec: 
  9.   replicas: 1 
  10.   selector: 
  11.     matchLabels: 
  12.       app: longhorn-ui 
  13.   template: 
  14.     metadata: 
  15.       labels: 
  16.         app: longhorn-ui 
  17.     spec: 
  18.       containers: 
  19.       - name: longhorn-ui 
  20.         image: /longhorn-ui:   ## Add image name and tag here 
  21.         ports: 
  22.         - containerPort: 8000 
  23.         env: 
  24.           - name: LONGHORN_MANAGER_IP 
  25.             value: "http://longhorn-backend:9500" 
  26.       imagePullSecrets: 
  27.       - name:  
  28.       serviceAccountName: longhorn-service-account 

使用修改后的 manifest 文件部署 Longhorn

  
 
 
 
  1. kubectl apply -f longhorn.yaml 

使用 Helm Chart

在 v1.1.2 中,Longhorn 自動(dòng)為鏡像添加 前綴。您只需設(shè)置 registryUrl 參數(shù)即可從您的私有 registry 中提取鏡像。

注意: 一旦您將 registryUrl 設(shè)置為您的私有 registry ,Longhorn 會(huì)嘗試專門從注冊(cè)表中提取鏡像。確保所有 Longhorn 組件的鏡像都在注冊(cè)表中,否則 Longhorn 將無法拉取鏡像。

使用默認(rèn)鏡像名稱

如果您按照此處推薦的方式保留鏡像名稱,則只需執(zhí)行以下步驟:

克隆 Longhorn 倉(cāng)庫(kù):

  
 
 
 
  1. git clone https://github.com/longhorn/longhorn.git 

在 chart/values.yaml

Longhorn 將使用這些信息自動(dòng)生成一個(gè) secret,并使用它從您的私人 registry 中提取鏡像。

  
 
 
 
  1. defaultSettings: 
  2.   registrySecret:  
  3.  
  4. privateRegistry: 
  5.     registryUrl:  
  6.     registryUser:  
  7.     registryPasswd:  
  8.     registrySecret:  
  • 指定 Private registry URL。如果注冊(cè)表需要身份驗(yàn)證,請(qǐng)指定 Private registry user、Private registry password 和 Private registry secret。

使用自定義鏡像名稱

如果要使用自定義圖像的名稱,可以使用以下步驟:

克隆 longhorn repo

  
 
 
 
  1. git clone https://github.com/longhorn/longhorn.git 

在 chart/values.yaml 中

注意: 不包括私有 registry 前綴,它將自動(dòng)添加。例如:如果您的鏡像是 example.com/username/longhorn-manager,請(qǐng)?jiān)谝韵?charts 中使用 username/longhorn-manager。

  • 指定 Longhorn 鏡像和 tag:
  
 
 
 
  1. image: 
  2.   longhorn: 
  3.     engine: 
  4.       repository: longhornio/longhorn-engine 
  5.       tag:  
  6.     manager: 
  7.       repository: longhornio/longhorn-manager 
  8.       tag:  
  9.     ui: 
  10.       repository: longhornio/longhorn-ui 
  11.       tag:  
  12.     instanceManager: 
  13.       repository: longhornio/longhorn-instance-manager 
  14.       tag:  
  15.     shareManager: 
  16.       repository: longhornio/longhorn-share-manager 
  17.       tag:  
  • 指定 CSI Driver 組件鏡像和標(biāo)簽:
  
 
 
 
  1. csi: 
  2.     attacher: 
  3.       repository: longhornio/csi-attacher 
  4.       tag:  
  5.     provisioner: 
  6.       repository: longhornio/csi-provisioner 
  7.       tag:  
  8.     nodeDriverRegistrar: 
  9.       repository: longhornio/csi-node-driver-registrar 
  10.       tag:  
  11.     resizer: 
  12.       repository: longhornio/csi-resizer 
  13.       tag:  
  14.     snapshotter: 
  15.       repository: longhornio/csi-snapshotter 
  16.       tag:  
  • 指定 Private registry URL。如果 registry 需要身份驗(yàn)證,請(qǐng)指定 Private registry user、Private registry password 和 Private registry secret。 Longhorn 將使用這些信息自動(dòng)生成一個(gè) secret,并使用它從您的私有 registry 中提取鏡像。
  
 
 
 
  1. defaultSettings: 
  2.   registrySecret:  
  3.  
  4. privateRegistry: 
  5.     registryUrl:  
  6.     registryUser:  
  7.     registryPasswd:  

安裝 Longhorn

  • Helm2
  
 
 
 
  1. helm install ./chart --name longhorn --namespace longhorn-system 
  • Helm3
  
 
 
 
  1. kubectl create namespace longhorn-system 
  2.  
  3. helm install longhorn ./chart --namespace longhorn-system 

使用 Rancher app

使用默認(rèn)鏡像名稱

如果您按照上面推薦的方式保留鏡像名稱,則只需執(zhí)行以下步驟:

  • 在 Private Registry Settings 部分指定:

Longhorn 將使用這些信息自動(dòng)生成一個(gè) secret,并使用它從您的私人 registry 中提取鏡像。

  • 私有 registry URL
  • 私有 registry user
  • 私有 registry password
  • 私有 registry secret name

使用自定義鏡像名稱

  • 如果要使用自定義鏡像的名稱,可以將 Use Default Images 設(shè)置為 False 并指定鏡像的名稱。

注意: 不包括私有 registry 前綴,它將自動(dòng)添加。例如:如果您的鏡像是 example.com/username/longhorn-manager,請(qǐng)?jiān)谝韵?charts 中使用 username/longhorn-manager。

  • 指定 Private registry URL。如果注冊(cè)中心需要身份驗(yàn)證,請(qǐng)指定 Private registry user、Private registry password 和 Private registry secret name。Longhorn 將使用這些信息自動(dòng)生成一個(gè) secret,并使用它從您的私人 registry 中提取鏡像。

故障排除

對(duì)于 Helm/Rancher 安裝,如果用戶忘記提交 secret 以對(duì)私有 registry 進(jìn)行身份驗(yàn)證,則 longhorn-manager DaemonSet 將無法創(chuàng)建。

創(chuàng)建 Kubernetes secret

  
 
 
 
  1. kubectl -n longhorn-system create secret docker-registry  --docker-server= --docker-username= --docker-password= 

手動(dòng)創(chuàng)建 registry-secret 設(shè)置對(duì)象。

  
 
 
 
  1. apiVersion: longhorn.io/v1beta1 
  2. kind: Setting 
  3. metadata: 
  4.   name: registry-secret 
  5.   namespace: longhorn-system 
  6. value:  

kubectl apply -f registry-secret.yml

刪除 Longhorn 并重新安裝。

  • Helm2
  
 
 
 
  1. helm uninstall ./chart --name longhorn --namespace longhorn-system 
  2.  
  3. helm install ./chart --name longhorn --namespace longhorn-system 
  • Helm3
  
 
 
 
  1. helm uninstall longhorn ./chart --namespace longhorn-system 
  2.  
  3. helm install longhorn ./chart --namespace longhorn-system 

推薦:

強(qiáng)烈建議不要操作鏡像 tag,尤其是實(shí)例管理器鏡像 tag,例如 v1_20200301,因?yàn)槲覀冇幸馐褂萌掌谝员苊鈱⑵渑c Longhorn 版本相關(guān)聯(lián)。

Longhorn 組件的鏡像托管在 Dockerhub 中的 longhornio 帳戶下。例如,longhornio/longhorn-manager:v1.1.2。建議在將鏡像推送到私有 registry 時(shí)保持帳戶名 longhornio 相同。這有助于避免不必要的配置問題。


分享題目:Longhorn云原生容器分布式存儲(chǔ)-AirGap安裝
文章鏈接:http://www.dlmjj.cn/article/djjehgh.html