28.5.4. 스토리지 사용
이때 PVC에 바인딩된 GlusterFS 볼륨이 동적으로 생성됩니다. 이제 Pod에서 이 PVC를 사용할 수 있습니다.
Pod 오브젝트 정의를 생성합니다.
apiVersion: v1 kind: Pod metadata: name: hello-openshift-pod labels: name: hello-openshift-pod spec: containers: - name: hello-openshift-pod image: openshift/hello-openshift ports: - name: web containerPort: 80 volumeMounts: - name: gluster-vol1 mountPath: /usr/share/nginx/html readOnly: false volumes: - name: gluster-vol1 persistentVolumeClaim: claimName: gluster1 1
- 1
- 이전 단계에서 생성한 PVC의 이름입니다.
OpenShift Container Platform 마스터 호스트에서 Pod를 생성합니다.
# oc create -f hello-openshift-pod.yaml pod "hello-openshift-pod" created
포드를 확인합니다. 이미지를 다운로드해야 하는 경우 이미지를 다운로드해야 하므로 몇 분 정도 기다립니다.
# oc get pods -o wide NAME READY STATUS RESTARTS AGE IP NODE hello-openshift-pod 1/1 Running 0 9m 10.38.0.0 node1
oc exec
를 컨테이너로 실행하고 Pod의mountPath
정의에 index.html 파일을 생성합니다.$ oc exec -ti hello-openshift-pod /bin/sh $ cd /usr/share/nginx/html $ echo 'Hello OpenShift!!!' > index.html $ ls index.html $ exit
이제 Pod의 URL을
curl
합니다.# curl http://10.38.0.0 Hello OpenShift!!!
Pod를 삭제하고 다시 생성한 다음 표시될 때까지 기다립니다.
# oc delete pod hello-openshift-pod pod "hello-openshift-pod" deleted # oc create -f hello-openshift-pod.yaml pod "hello-openshift-pod" created # oc get pods -o wide NAME READY STATUS RESTARTS AGE IP NODE hello-openshift-pod 1/1 Running 0 9m 10.37.0.0 node1
이제 포드를 다시
curl
로 지정하면 이전과 동일한 데이터가 계속 있어야 합니다. IP 주소가 변경될 수 있습니다.# curl http://10.37.0.0 Hello OpenShift!!!
모든 노드에서 다음을 수행하여 index.html 파일이 GlusterFS 스토리지에 작성되었는지 확인합니다.
$ mount | grep heketi /dev/mapper/VolGroup00-LogVol00 on /var/lib/heketi type xfs (rw,relatime,seclabel,attr2,inode64,noquota) /dev/mapper/vg_f92e09091f6b20ab12b02a2513e4ed90-brick_1e730a5462c352835055018e1874e578 on /var/lib/heketi/mounts/vg_f92e09091f6b20ab12b02a2513e4ed90/brick_1e730a5462c352835055018e1874e578 type xfs (rw,noatime,seclabel,nouuid,attr2,inode64,logbsize=256k,sunit=512,swidth=512,noquota) /dev/mapper/vg_f92e09091f6b20ab12b02a2513e4ed90-brick_d8c06e606ff4cc29ccb9d018c73ee292 on /var/lib/heketi/mounts/vg_f92e09091f6b20ab12b02a2513e4ed90/brick_d8c06e606ff4cc29ccb9d018c73ee292 type xfs (rw,noatime,seclabel,nouuid,attr2,inode64,logbsize=256k,sunit=512,swidth=512,noquota) $ cd /var/lib/heketi/mounts/vg_f92e09091f6b20ab12b02a2513e4ed90/brick_d8c06e606ff4cc29ccb9d018c73ee292/brick $ ls index.html $ cat index.html Hello OpenShift!!!