27.3.6. 프로비저닝


GlusterFS 볼륨은 정적 또는 동적으로 프로비저닝할 수 있습니다. 정적 프로비저닝은 모든 구성에서 사용할 수 있습니다. 통합 모드와 독립 모드만 동적 프로비저닝을 지원합니다.

27.3.6.1. 정적 프로비저닝

  1. 정적 프로비저닝을 활성화하려면 먼저 GlusterFS 볼륨을 만듭니다. heketi - cli 를 사용하여 이 작업을 수행하는 방법에 대한 자세한 내용은 Red Hat Gluster Storage 관리 가이드를 참조하십시오. 이 예에서는 볼륨의 이름은 myVol1 로 지정됩니다.
  2. gluster-endpoints.yaml에서 다음 서비스 및 엔드포인트를 정의합니다.

    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: glusterfs-cluster 1
    spec:
      ports:
      - port: 1
    ---
    apiVersion: v1
    kind: Endpoints
    metadata:
      name: glusterfs-cluster 2
    subsets:
      - addresses:
          - ip: 192.168.122.221 3
        ports:
          - port: 1 4
      - addresses:
          - ip: 192.168.122.222 5
        ports:
          - port: 1 6
      - addresses:
          - ip: 192.168.122.223 7
        ports:
          - port: 1 8
    1 2
    이러한 이름은 일치해야 합니다.
    3 5 7
    ip 값은 호스트 이름이 아닌 Red Hat Gluster Storage 서버의 실제 IP 주소여야 합니다.
    4 6 8
    포트 번호는 무시됩니다.
  3. OpenShift Container Platform 마스터 호스트에서 서비스 및 엔드포인트를 생성합니다.

    $ oc create -f gluster-endpoints.yaml
    service "glusterfs-cluster" created
    endpoints "glusterfs-cluster" created
  4. 서비스 및 엔드포인트가 생성되었는지 확인합니다.

    $ oc get services
    NAME                       CLUSTER_IP       EXTERNAL_IP   PORT(S)    SELECTOR        AGE
    glusterfs-cluster          172.30.205.34    <none>        1/TCP      <none>          44s
    
    $ oc get endpoints
    NAME                ENDPOINTS                                               AGE
    docker-registry     10.1.0.3:5000                                           4h
    glusterfs-cluster   192.168.122.221:1,192.168.122.222:1,192.168.122.223:1   11s
    kubernetes          172.16.35.3:8443                                        4d
    참고

    엔드포인트는 프로젝트별로 고유합니다. GlusterFS 볼륨에 액세스하는 각 프로젝트에는 고유한 엔드포인트가 필요합니다.

  5. 볼륨에 액세스하려면 볼륨의 파일 시스템에 액세스할 수 있는 UID(사용자 ID) 또는 그룹 ID(GID)를 사용하여 컨테이너를 실행해야 합니다. 이 정보는 다음과 같은 방식으로 검색할 수 있습니다.

    $ mkdir -p /mnt/glusterfs/myVol1
    
    $ mount -t glusterfs 192.168.122.221:/myVol1 /mnt/glusterfs/myVol1
    
    $ ls -lnZ /mnt/glusterfs/
    drwxrwx---. 592 590 system_u:object_r:fusefs_t:s0    myVol1 1 2
    1
    UID는 592입니다.
    2
    GID는 590입니다.
  6. gluster-pv.yaml에서 다음 PV(PersistentVolume)를 정의합니다.

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: gluster-default-volume 1
      annotations:
        pv.beta.kubernetes.io/gid: "590" 2
    spec:
      capacity:
        storage: 2Gi 3
      accessModes: 4
        - ReadWriteMany
      glusterfs:
        endpoints: glusterfs-cluster 5
        path: myVol1 6
        readOnly: false
      persistentVolumeReclaimPolicy: Retain
    1
    볼륨의 이름입니다.
    2
    GlusterFS 볼륨의 루트에 있는 GID입니다.
    3
    이 볼륨에 할당된 스토리지의 용량입니다.
    4
    accessModes 는 PV 및 PVC와 일치하는 라벨로 사용됩니다. 현재는 액세스 제어 형식을 정의하지 않습니다.
    5
    이전에 생성한 Endpoints 리소스입니다.
    6
    액세스할 GlusterFS 볼륨입니다.
  7. OpenShift Container Platform 마스터 호스트에서 PV를 생성합니다.

    $ oc create -f gluster-pv.yaml
  8. PV가 생성되었는지 확인합니다.

    $ oc get pv
    NAME                     LABELS    CAPACITY     ACCESSMODES   STATUS      CLAIM     REASON    AGE
    gluster-default-volume   <none>    2147483648   RWX           Available                       2s
  9. gluster-claim.yaml에서 새 PV에 바인딩할 PVC(PersistentVolumeClaim)를 생성합니다.

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: gluster-claim  1
    spec:
      accessModes:
      - ReadWriteMany      2
      resources:
         requests:
           storage: 1Gi    3
    1
    클레임 이름은 해당 volumes 섹션의 포드에서 참조합니다.
    2
    PV의 accessModes 와 일치해야 합니다.
    3
    이 클레임은 1Gi 이상의 용량을 제공하는 PV를 찾습니다.
  10. OpenShift Container Platform 마스터 호스트에서 PVC를 생성합니다.

    $ oc create -f gluster-claim.yaml
  11. PV 및 PVC가 바인딩되었는지 확인합니다.

    $ oc get pv
    NAME         LABELS    CAPACITY   ACCESSMODES   STATUS      CLAIM          REASON    AGE
    gluster-pv   <none>    1Gi        RWX           Available   gluster-claim            37s
    
    $ oc get pvc
    NAME            LABELS    STATUS    VOLUME       CAPACITY   ACCESSMODES   AGE
    gluster-claim   <none>    Bound     gluster-pv   1Gi        RWX           24s
참고

PVC는 프로젝트별로 고유합니다. GlusterFS 볼륨에 액세스하는 각 프로젝트에는 자체 PVC가 필요합니다. PV는 단일 프로젝트에 바인딩되지 않으므로 여러 프로젝트의 PVC가 동일한 PV를 참조할 수 있습니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.