この記事はJapaneseで表示されません。Koreanでご覧ください。

PVC(PersistentVolumeClaim)を作成してPodにマウントする

印刷

IBM Cloudのストレージタイプ

  • Block Storage

    • Access Modes で「ReadWriteOne」可能

    • ストレージ共有不可

  • File Storage

    • Access Modes で「ReadWriteMany」可能

    • ポッドが複数ある場合は、ストレージを共有できます

評価

  • bronze〜gold:固定IOPSでストレージサイズを選択
  • custom:Storage SizeおよびSizeに合ったIOPSを選択

bronzesilvergoldcustom
iopsPerGB2410
sizeRange[20-12000]Gi[20-12000]Gi[20-4000]Gi
sizeIOPSRange


[20-39]Gi : [100-1000]
[40-79]Gi : [100-2000]
[80-99]Gi : [100-4000]
[100-499]Gi : [100-6000]
[500-999]Gi : [100-10000]
[1000-1999]Gi : [100-20000]
[2000-2999]Gi : [200-40000]
[3000-3999]Gi : [200-48000]
[4000-7999]Gi : [300-48000]
[8000-9999]Gi : [500-48000]
[10000-12000]Gi : [1000-48000]


ビリング

  • monthly または hourly (一時テストの作成時に hourly を使用することをお勧めします)

persistentVolume Reclaim Policy 値

  • ibmc-block-{등급} : "delete"

  • ibmc-block-retain-{등급} : "retain"


生成例

ibmc-block-retain-silver

apiVersion: v1 kind: PersistentVolumeClaim metadata:  name: pvc-myapp  annotations:    volume.beta.kubernetes.io/storage-class: "ibmc-block-retain-silver"  labels:    billingType: "monthly" spec:  accessModes:    - ReadWriteOnce  resources:    requests:      storage: 20Gi


ibmc-block-retain-custom

apiVersion: v1 kind: PersistentVolumeClaim metadata:  name: pvc-myapp  annotations:    volume.beta.kubernetes.io/storage-class: "ibmc-block-retain-custom"  labels:    billingType: "monthly" spec:  accessModes:    - ReadWriteOnce   # file storage인 경우에는 - ReadWriteMany  resources:    requests:      storage: 20Gi      iops: "1000"

生成されたPVCをDeploymentにマウント

apiVersion: apps/v1 kind: Deployment metadata:  name: <deployment_name>  labels:    app: <deployment_label> spec:  selector:    matchLabels:      app: <app_name>  template:    metadata:      labels:        app: <app_name>    spec:      containers:      - image: <image_name>        name: <container_name>        volumeMounts:        - name: <volume_name>          mountPath: /<file_path>      volumes:      - name: <volume_name>        persistentVolumeClaim:          claimName: <pvc_name>

生成されたPVCをStatefulSetにマウントする

apiVersion: apps/v1 kind: StatefulSet metadata: name: web spec: serviceName: "nginx" replicas: 3 podManagementPolicy: "Parallel" selector:   matchLabels:     app: nginx template:   metadata:     labels:       app: nginx   spec:     affinity:       podAntiAffinity:         preferredDuringSchedulingIgnoredDuringExecution:         - weight: 100       podAffinityTerm:         labelSelector:           matchExpressions:               - key: app             operator: In             values:                 - nginx             topologyKey: failure-domain.beta.kubernetes.io/zone     containers:     - name: nginx       image: k8s.gcr.io/nginx-slim:0.8       ports:       - containerPort: 80         name: web       volumeMounts:       - name: www         mountPath: /usr/share/nginx/html       - name: wwwww         mountPath: /tmp1 volumeClaimTemplates: - metadata:     name: myvol1   spec:     accessModes:     - ReadWriteMany # access mode     resources:       requests:         storage: 20Gi     storageClassName: ibmc-file-bronze-delayed - metadata:     name: myvol2   spec:     accessModes:     - ReadWriteMany # access mode     resources:       requests:         storage: 20Gi     storageClassName: ibmc-file-bronze-delayed

References

オンライン相談

問い合わせ

この回答は役に立ちましたか? はい いいえ

フィードバックを送信
お役に立てずに申し訳ございません。この記事を向上させるためにフィードバックをお願い致します。