본문으로 바로가기

NFS-Client-Provisioner 설치

category Kubernetes/Kuberenetes 설치 2022. 12. 2. 14:08

NFS-Client-Provisioner 란?

  k8s에서 PVC를 연결 할 PV 생성을 별도로 해야 하는데 NFS Client Provisioner 을 사용하여 PVC가 자동으로 PV에 바인딩 되도록 설정

 

1. NFS 서버 만들기      (NFS 서버의 IP는 172.30.3.251 로 설정 - 별도의 vm)

  1) NFS pkg 설치

      # yum -y install nfs-utils

 

  2) 저장할 디렉토리와 권한 부여

      # mkdir /nfs

      # vi /etc/exports

         /nfs *(rw, no_root_squash)

 

  3) NFS 적용

      # exportfs -r

 

  4) NFS 가동

      # systemctl start nfs-server && systemctl enable nfs-server

      # systemctl start rpcbind && systemctl enable rpcbind

 

  5) NFS 정상 동작 확인 

      # showmount -e 172.30.3.251

2. HELM Chart 로 NFS-Client-Provisioner 설치

  1) helm repo list 등록

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

 

  2) helm install nfs   (nfs.server에는 본인 nfs 서버의 IP를 입력, nfs.path에는 본인이 설정한 저장 디렉토리)

      # helm install nfs-subdir-external-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner \
         --set nfs.server=172.30.3.251 \
         --set nfs.path=/nfs \
         --set storageClass.defaultClass=true

  

  3) StorageClass 확인

      # kubectl get storageclass (Class 네임이 nfs-client 로 되어 있음을 확인)

        * storageClass를 확인 하는 이유는 helm Chart로 설치 하는 Container 중에 pvc를 사용하게 되면 helm Chart value 안

           storage class name을 넣어 주어야 하기 때문 (추후 작성되는 페이지에서 확인 가능)

3. PVC 연결 테스트

      # vi pvc-test.yaml   (아래 command 작성)

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: pvc-test
spec:
  accessModes:
  - ReadWriteMany
  resources:
   requests:
    storage: 1G

      # kubectl apply -f pvc-test.yaml (apply)

      # kubectl get pvc (확인)

 

이렇게 하여 nfs-client-provisioner 설치가 완료 되었다.

'Kubernetes > Kuberenetes 설치' 카테고리의 다른 글

Ingress 설치  (0) 2022.12.05
Monitoring 구축 (prometheus, grafana)  (0) 2022.12.02
argoCD 설치 방법  (0) 2022.12.02
Kubernetes설치 2/2  (0) 2021.11.16
Kubernetes 설치 1/2  (0) 2021.11.15