RestApp 볼륨 설정하기

작성자 김아름 수정일 2022-10-17 15:35

#SparklingSoDA4.0, #스파클링소다4.0, #restapp, #volume, #볼륨

아티클 관련 제품: SparklingSoDA4.0

이 글을 읽으면

  • Rest Server 나 Rest App 생성 시, pv를 생성할 수 있습니다.

  • 해당 기능을 이용하면, 컨테이너 내부와 host 혹은 nfs 와 마운트 되어 접근할 수 있습니다.



사전 작업 및 준비

  • Type을 host path로 지정할 경우, 마운트 될 디렉터리가 존재해야 합니다.

  • Type을 nfs로 지정할 경우, nfs server (NAS)에 마운트 될 디렉터리가 존재해야 합니다.



PV 생성하여 REST APP

본 가이드에서는, rest app 생성으로 진행합니다.


  1. Rest App 을 생성합니다.

  2. Rest App 정보를 입력하는 창의 하단에 위치한 Volume을 지정합니다.

  3. 리스트를 확인해 보면, None, hostPath, NFS 가 있습니다.

    None : pv를 생성하지 않습니다.
    hostPath : 해당 rest app 이 구동 될 node의 host 경로에 마운트 하여 pv를 생성합니다.
    NFS : nfs server에 마운트 하여 pv를 생성합니다.

    1. hostPath
      본 가이드 에서는 rest app이 master 노드에 올라오도록 resource 설정을 했습니다.
      또한, master 노드에 마운트 될 디렉터리는 /restPV 로 생성하였습니다.
      ls -al / | grep rest
      drwxr-xr-x    2 root root    6 Sep 30 17:12 restPV

      volume Type은 hostPath
      Path /restPV
      로 지정한 후, 저장합니다.

      master 노드에서 pod 를 검색합니다.
      kubectl get po -owide | grep rest
      restapp-test-app1e34a-0                                   1/1     Running   0          18s    6.2.219.93    master 
      출력 된 pod 이름을 복사한 후, 아래와 같이 검색합니다.
      kubectl describe po <pod name>
      Volumes:
        notebook-data:
          Type:       PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
          ClaimName:  notebook-restapp-test-app1e34a-pv-claim
          ReadOnly:   false

      결과 값 하단의 volumes 에 notebook-data 라는 이름의 PV가 생성된 것을 확인할 수 있습니다.

      마운트 확인하기 위해 IDE로 접속합니다.

      EXPLORER에서 우클릭 하여 terminal을 엽니다.

      hostPath와 마운트 된 경로는 /data 입니다.
      /data 경로에서 test.txt 파일을 만들고, host 경로에서 확인해 보겠습니다.

      cd /data
      touch text.txt
      ls -al
      total 0
      drwxr-xr-x 2 winter winter 22 Sep 30 17:35 ./
      drwxr-xr-x 1 root   root   74 Sep 30 17:15 ../
      -rw-r--r-- 1 winter winter  0 Sep 30 17:35 test.txt


      master 서버로 접속하여 /restPV 경로를 검색 해 봅니다.

      ls -al /restPV/
      total 4
      drwxr-xr-x   2 winter winter   22 Sep 30 17:35 .
      dr-xr-xr-x. 22 root   root   4096 Sep 30 17:34 ..
      -rw-r--r--   1 winter winter    0 Sep 30 17:35 test.txt


      rest app 노트북의 /data와 host의 /restPV 가 정상적으로 마운트가 되어 있는 것을 알 수 있습니다.


    2. NFS
      본 가이드의 nfs server IP는 192.168.50.160 입니다.
      또한, nfs server에 pv를 마운트 할 경로는 /restPV 로 생성하였습니다.


      Volume Type 을 NFS로 지정하면, NFS Server 와 NFS Path 값을 입력합니다.
      NFS Server에는 NFS Server의 IP 를, NFS Path에는 nfs server에 마운트 될 경로를 입력합니다.

      NFS Path
      노드가 마운트 된 nfs 경로 하위로 지정합니다.

      이후, nfs 서버와 노트북의 마운트 확인은 hostPath 방법과 동일합니다.



마치며

  • RestAPP 및 Rest Server를 생성할 때, 볼륨 마운트가 필요할 수 있습니다.

  • 이때, pv 볼륨을 생성하게 되는데 host 혹은 nfs server 측에 마운트 하는 방법을 알아보았습니다.


아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.

02-558-8300