成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在 Kubernetes 集群中設置動態 NFS 配置

系統
在這篇文章中,我們將向你展示如何在 Kubernetes(k8s)集群中設置動態 NFS 配置。

Kubernetes 中的動態 NFS 存儲配置允許你按需自動為 Kubernetes 應用配置和管理 NFS(網絡文件系統)卷。它允許創建持久卷(PV)和持久卷聲明(PVC),而無需手動干預或預配置存儲。

NFS 配置程序負責動態創建 PV 并將其綁定到 PVC。它與 NFS 服務器交互,為每個 PVC 創建目錄或卷。

先決條件

  • 預裝 Kubernetes 集群
  • 具有 Kubernetes 集群管理員權限的普通用戶
  • 互聯網連接

事不宜遲,讓我們深入探討步驟:

步驟 1、準備 NFS 服務器

就我而言,我將在 Kubernetes 主節點(Ubuntu 22.04)上安裝 NFS 服務器。登錄主節點并運行以下命令:

$ sudo apt update
$ sudo apt install nfs-kernel-server -y

創建以下文件夾并使用 NFS 共享它:

$ sudo mkdir /opt/dynamic-storage
$ sudo chown -R nobody:nogroup /opt/dynamic-storage
$ sudo chmod 777 /opt/dynamic-storage

在 /etc/exports 文件中添加以下條目:

$ sudo vi /etc/exports
/opt/dynamic-storage 192.168.1.0/24(rw,sync,no_subtree_check)

保存并關閉文件。

注意:不要忘記更改導出文件中適合你的部署的網絡。

要使上述更改生效,請運行:

$ sudo exportfs -a
$ sudo systemctl restart nfs-kernel-server
$ sudo systemctl status nfs-kernel-server

NFS-Service-Status-Kubernetes-Master-UbuntuNFS-Service-Status-Kubernetes-Master-Ubuntu

NFS-Service-Status-Kubernetes-Master-Ubuntu

在工作節點上,使用以下 apt 命令安裝 nfs-common 包。

$ sudo apt install nfs-common -y

步驟 2、安裝和配置 NFS 客戶端配置程序

NFS 子目錄外部配置程序在 Kubernetes 集群中部署 NFS 客戶端配置程序。配置程序負責動態創建和管理由 NFS 存儲支持的持久卷(PV)和持久卷聲明(PVC)。

因此,要安裝 NFS 子目錄外部配置程序,首先使用以下命令集安裝 helm:

$ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
$ chmod 700 get_helm.sh
$ ./get_helm.sh

運行以下命令來啟用 helm 倉庫:

$ helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner

使用以下 helm 命令部署配置程序:

$ helm install -n nfs-provisioning --create-namespace nfs-subdir-external-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner --set nfs.server=192.168.1.139 --set nfs.path=/opt/dynamic-storage

helm-install-nfs-provisioning-kubernetes-clusterhelm-install-nfs-provisioning-kubernetes-cluster

helm-install-nfs-provisioning-kubernetes-cluster

上面的 helm 命令將自動創建 nfs-provisioning 命名空間,并安裝 NFS 配置程序的容器莢/部署、名稱為 nfs-client 的存儲類,并將創建所需的 rbac。

$ kubectl get all -n nfs-provisioning
$ kubectl get sc -n nfs-provisioning

kubectl-get-all-nfs-provisioning-kubernetes-clusterkubectl-get-all-nfs-provisioning-kubernetes-cluster

kubectl-get-all-nfs-provisioning-kubernetes-cluster

完美,上面的輸出確認了配置程序容器莢和存儲類已成功創建。

步驟 3、創建持久卷聲明(PVC)

讓我們創建 PVC 來為你的容器莢或部署請求存儲。PVC 將從存儲類 nfs-client 請求特定數量的存儲:

$ vi demo-pvc.yml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: demo-claim
  namespace: nfs-provisioning
spec:
  storageClassName: nfs-client
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Mi

保存并關閉文件。

PVC-Yaml-Dynamic-NFS-KubernetesPVC-Yaml-Dynamic-NFS-Kubernetes

PVC-Yaml-Dynamic-NFS-Kubernetes

運行以下 kubectl 命令以使用上面創建的 YML 文件創建 PVC:

$ kubectl create -f demo-pvc.yml

驗證 PVC 和 PV 是否創建:

$ kubectl get pv,pvc -n nfs-provisioning

Verify-pv-pvc-dynamic-nfs-kubernetes-clusterVerify-pv-pvc-dynamic-nfs-kubernetes-cluster

Verify-pv-pvc-dynamic-nfs-kubernetes-cluster

太好了,上面的輸出表明 PV 和 PVC 創建成功。

步驟 4、測試并驗證動態 NFS 配置

為了測試和驗證動態 NFS 配置,請使用以下 YML 文件啟動測試容器莢:

$ vi test-pod.yml
kind: Pod
apiVersion: v1
metadata:
  name: test-pod
  namespace: nfs-provisioning
spec:
  containers:
  - name: test-pod
    image: busybox:latest
    command:
      - "/bin/sh"
    args:
      - "-c"
      - "touch /mnt/SUCCESS && sleep 600"
    volumeMounts:
      - name: nfs-pvc
        mountPath: "/mnt"
  restartPolicy: "Never"
  volumes:
    - name: nfs-pvc
      persistentVolumeClaim:
        claimName: demo-claim

Pod-Yml-Dynamic-NFS-kubernetesPod-Yml-Dynamic-NFS-kubernetes

Pod-Yml-Dynamic-NFS-kubernetes

使用以下 kubectl 命令部署容器莢:

$ kubectl create -f test-pod.yml

驗證 test-pod 的狀態:

$ kubectl get pods -n nfs-provisioning

Verify-Test-Pod-Using-NFS-Volume-KubernetesVerify-Test-Pod-Using-NFS-Volume-Kubernetes

Verify-Test-Pod-Using-NFS-Volume-Kubernetes

登錄到容器莢并驗證 NFS 卷是否已安裝。

$ kubectl exec -it test-pod -n nfs-provisioning /bin/sh

Access-Dynamic-NFS-Inside-Pod-KubernetesAccess-Dynamic-NFS-Inside-Pod-Kubernetes

Access-Dynamic-NFS-Inside-Pod-Kubernetes

太棒了,上面容器莢的輸出確認了動態 NFS 卷已安裝且可訪問。

最后刪除容器莢和 PVC,查看 PV 是否自動刪除。

$ kubectl delete -f test-pod.yml
$ kubectl delete -f demo-pvc.yml
$ kubectl get pv,pvc -n  nfs-provisioning

Delete-Pod-PVC-Dynamic-NFSDelete-Pod-PVC-Dynamic-NFS

責任編輯:趙寧寧 來源: Linux中國
相關推薦

2024-07-22 15:49:07

KubernetesRedis

2019-07-12 16:28:32

MacKubernetes

2023-06-25 18:53:03

2020-07-13 07:00:21

Kubernetes

2014-06-30 09:27:17

UbuntuTomcat集群

2012-12-31 10:54:09

LinuxNFS

2011-07-13 15:32:38

ODBC數據庫驅動程序系統DSN

2020-07-20 07:00:00

KubernetesHostPath

2019-07-30 10:33:01

2010-06-01 10:42:59

動態VDI

2022-06-27 05:48:24

Kubernetes容器

2024-07-30 08:00:00

Kubernetes數據庫

2021-12-02 08:00:00

Kubernetes集群容器

2022-03-07 10:41:09

云計算容器Kubernetes

2021-11-11 09:01:01

Helm Chart Kubernetes

2010-08-05 14:50:42

AIX NFS

2019-04-16 10:30:45

Windows 10配置鍵盤Windows

2017-02-22 10:06:11

UbuntuCeph存儲

2021-06-16 09:49:14

Windows 11微軟動態磁貼

2010-08-05 11:21:58

NFS共享
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧产日产国产精品视频 | 欧美精品久久久久久久久久 | 日本精品一区二区三区在线观看视频 | 成人h视频 | 性高湖久久久久久久久 | 久久免费精品视频 | 色综合久久久 | 台湾av在线 | 久久久网 | 国产成人精品一区二区三区在线 | 91一区二区在线观看 | 精品亚洲一区二区 | 成人综合一区二区 | 亚洲高清一区二区三区 | 国产yw851.c免费观看网站 | 97avcc| 欧美三级在线 | 亚洲欧美一区二区三区1000 | 国产一级片 | 91精品国产综合久久国产大片 | 一级黄色录像毛片 | 美女久久 | 久久一区二区免费视频 | 性高湖久久久久久久久aaaaa | 日本超碰 | 综合久久久久 | 午夜精品一区 | 欧美激情国产日韩精品一区18 | ririsao久久精品一区 | 精品99久久久久久 | 免费观看一级毛片 | 第一色在线| 国产精品久久久久久一区二区三区 | 国产成人免费视频 | 亚洲欧洲精品成人久久奇米网 | 欧美激情久久久 | 一区二区三区视频 | 91亚洲国产成人久久精品网站 | 一区二区三区小视频 | 国产在线精品一区二区三区 | 国产日韩欧美 |