永続ボリュームの使用
この永続ストレージを使用するには、Kubernetesデプロイメントを作成し、永続ボリューム要求を割り当てます。
ファイル・システム・ストレージの使用
次の例では、ファイル・システム・ストレージを使用します:
$ kubectl create -f nginx-deploy.yaml
次に、nginx-deploy.yaml
ファイルの内容を示します。
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-fss-deployment spec: replicas: 3 selector: matchLabels: app: nginx-fss template: metadata: labels: app: nginx-fss spec: containers: - name: nginx image: nginx:latest volumeMounts: - mountPath: /usr/share/nginx/ name: data ports: - containerPort: 80 name: http protocol: TCP volumes: - name: data persistentVolumeClaim: claimName: fss-pvc
ブロック・ボリューム・ストレージの使用
次の例では、ブロック・ボリューム・ストレージを使用します:
$ kubectl create -f nginx-deploy.yaml
次に、nginx-deploy.yaml
ファイルの内容を示します。
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-bv-deployment spec: replicas: 3 selector: matchLabels: app: nginx-bv template: metadata: labels: app: nginx-bv spec: containers: - name: nginx image: available_internal_registry/nginx:latest volumeMounts: - mountPath: /usr/share/nginx/ name: data ports: - containerPort: 80 name: http protocol: TCP volumes: - name: data persistentVolumeClaim: claimName: mynginxclaim
新しいストレージ・アセットの確認
get pod
サブコマンドを使用して、ポッド内のレプリカの名前を表示します:
$ kubectl get pod nginx-deployment-55ff88b668-2k8rt 1/1 Running 0 4m54s nginx-deployment-55ff88b668-79c2t 1/1 Running 0 4m54s nginx-deployment-55ff88b668-qpdfd 1/1 Running 0 4m54s
ポッドにログインし、Linuxのdf
コマンドを使用して、アプリケーションのレプリカがpersistentVolumeClaim
ストレージを使用していることを示します。 df
出力の「ファイルシステム」列には、マウント・ターゲットのIPアドレスとファイル・システムのエクスポート・パスが表示されます。
kubectl exec -it nginx-deployment-55ff88b668-2k8rt -- df -h /usr/share/nginx/html Filesystem Size Used Avail Use% Mounted on xxx.xx.xxx.xxx:/export/4fsderwh09ufyf84ei1lh3q2x8ou86pq5vcbx3aeeo060xxxxxxxxxxxxxxx 67T 0 67T 0% /usr/share/nginx/html