14.4. OpenShift 클러스터에서 NFS 내보내기 사용


OpenShift Data Foundation과 동일한 클러스터 내의 컨테이너 또는 OpenShift Virtualization VM에서 실행되는 NFS 클라이언트는 기존 PVC에서 생성된 NFS 내보내기를 마운트할 수 있습니다.

프로세스

  1. nfs 플래그가 활성화되면 Rook에서 singe-server CephNFS를 배포합니다. 다음 단계에서 사용할 nfs-ganesha 서버의 ceph_nfs 필드 값을 가져와야 합니다.

    $ oc get pods -n openshift-storage | grep rook-ceph-nfs
    $ oc describe pod  <name of the rook-ceph-nfs pod> | grep ceph_nfs

    예를 들면 다음과 같습니다.

    $ oc describe pod rook-ceph-nfs-ocs-storagecluster-cephnfs-a-7bb484b4bf-bbdhs | grep ceph_nfs
      ceph_nfs=my-nfs
  2. Kubernetes LoadBalancer Service를 생성하여 OpenShift 클러스터 외부에 NFS 서버를 노출합니다. 아래 예제에서는 LoadBalancer 서비스를 생성하고 OpenShift Data Foundation에서 생성한 NFS 서버를 참조합니다.

    apiVersion: v1
    kind: Service
    metadata:
     name: rook-ceph-nfs-ocs-storagecluster-cephnfs-load-balancer
     namespace: openshift-storage
    spec:
     ports:
       - name: nfs
         port: 2049
     type: LoadBalancer
     externalTrafficPolicy: Local
     selector:
       app: rook-ceph-nfs
       ceph_nfs: <my-nfs>
       instance: a

    & lt;my-nfs& gt;를 1단계에서 얻은 값으로 바꿉니다.

  3. 연결 정보를 수집합니다. NFS 클라이언트가 내보내기에 연결하는 데 필요한 정보는 PVC에 대해 생성된 PV(영구 볼륨) 및 이전 단계에서 생성한 LoadBalancer 서비스의 상태에서 가져옵니다.

    1. PV에서 공유 경로를 가져옵니다.

      1. NFS 내보내기의 PVC와 연결된 PV의 이름을 가져옵니다.

        $ oc get pvc <pvc_name> --output jsonpath='{.spec.volumeName}'
        pvc-39c5c467-d9d3-4898-84f7-936ea52fd99d

        & lt;pvc_name& gt;을 자체 PVC 이름으로 바꿉니다. 예를 들면 다음과 같습니다.

        oc get pvc pvc-39c5c467-d9d3-4898-84f7-936ea52fd99d --output jsonpath='{.spec.volumeName}'
        pvc-39c5c467-d9d3-4898-84f7-936ea52fd99d
      2. 이전에 얻은 PV 이름을 사용하여 NFS 내보내기의 공유 경로를 가져옵니다.

        $ oc get pv pvc-39c5c467-d9d3-4898-84f7-936ea52fd99d --output jsonpath='{.spec.csi.volumeAttributes.share}'
        /0001-0011-openshift-storage-0000000000000001-ba9426ab-d61b-11ec-9ffd-0a580a800215
    2. NFS 서버의 수신 주소를 가져옵니다. 서비스의 수신 상태는 여러 주소가 있을 수 있습니다. NFS 클라이언트에 사용할 항목을 선택합니다. 아래 예제에는 단일 주소만 있습니다. 호스트 이름 ingress-id.somedomain.com.

      $ oc -n openshift-storage get service rook-ceph-nfs-ocs-storagecluster-cephnfs-load-balancer --output jsonpath='{.status.loadBalancer.ingress}'
      [{"hostname":"ingress-id.somedomain.com"}]
  4. 이전 단계의 공유 경로 및 수신 주소를 사용하여 NFS 클라이언트를 연결합니다. 다음 예제에서는 클라이언트의 디렉토리 경로 /export/mount/path 에 내보내기를 마운트합니다.

    $ mount -t nfs4 -o proto=tcp ingress-id.somedomain.com:/0001-0011-openshift-storage-0000000000000001-ba9426ab-d61b-11ec-9ffd-0a580a800215 /export/mount/path

    이 작업이 즉시 작동하지 않으면 Kubernetes 환경이 여전히 NFS 서버로 수신을 허용하도록 네트워크 리소스를 구성하는 데 시간이 걸릴 수 있습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동