IBM Cloud Docs
IBM Cloud File Storage for VPCの管理

IBM Cloud File Storage for VPCの管理

クラスタに永続ストレージを設定する場合、ストレージを要求する Kubernetes 永続ボリューム要求(PVC)、ポッドにマウントされPVCに記述される Kubernetes 永続ボリューム(PV)、ファイル共有の3つの主要コンポーネントがあります。 ストレージの作成方法によっては、3 つのコンポーネントすべてを個別に削除しなければならない場合があります。

アドオンには以下の制限が適用されます。

  • クラスターと VPC は同じリソース グループに含めることをお勧めします。 クラスターと VPC が別々のリソース グループにある場合は、ファイル共有をプロビジョニングする前に、独自のストレージ クラスを作成し、VPC リソース グループ ID を指定する必要があります。 詳細については、独自のストレージクラスを作成する
  • クラスターバージョンで新しいセキュリティグループルールが導入されました1.25以降。 これらのルールの変更により、セキュリティグループを同期してから使用する必要があります。File Storage for VPC 。 詳細については、追加File Storage for VPCアプリへ
  • バージョンで新しいストレージクラスが追加されました2.0アドオンの。 古いストレージ クラスを使用する新しいファイル共有をプロビジョニングすることはできなくなります。 古いストレージ クラスを使用する既存のボリュームは引き続き機能しますが、古いクラスを使用して作成されたボリュームを拡張することはできません。 詳細については、新しいストレージクラスへの移行

File Storage for VPC クラスター・アドオンの更新

アカウントにログインします。 該当する場合は、適切なリソース・グループをターゲットにします。 クラスターのコンテキストを設定します。

  1. クラスター ID を取得します。

    ibmcloud ks cluster ls
    
  2. 利用可能なアドオンのバージョンを確認する。

    ibmcloud ks cluster addon versions
    
  3. アドオンを無効にします。

    ibmcloud ks cluster addon disable vpc-file-csi-driver --cluster CLUSTER
    
  4. 新しいバージョンのアドオンを有効にします。

    ibmcloud ks cluster addon enable vpc-file-csi-driver --cluster CLUSTER --version VERSION
    
  5. 以下のコマンドを実行して、アドオンが有効になっていることを確認します。

    kubectl get deploy -n kube-system | grep file
    
    ibm-vpc-file-csi-controller   2/2     2            2           13m
    
    kubectl get ds -n kube-system | grep file
    
    ibm-vpc-file-csi-node    2         2         2       2            2           <none>          14m
    
    kubectl get pods -n kube-system  | grep file
    
    ibm-vpc-file-csi-controller-7899db784-kc29g   5/5     Running   0             14m
    ibm-vpc-file-csi-controller-7899db784-mp5jt   5/5     Running   0             14m
    ibm-vpc-file-csi-node-bfqdz                   4/4     Running   0             14m
    ibm-vpc-file-csi-node-n7jbx                   4/4     Running   0             14m
    

コンフィグマップでリソースとリクエストの上限を設定する

  1. 以下のコマンドを実行して、configmap を編集します。

    kubectl edit cm addon-vpc-file-csi-driver-configmap -n kube-system
    

    出力例。

    apiVersion: v1
    data:
      CSIBlockDriverCPULimit: 300m
      CSIBlockDriverCPURequest: 75m
      CSIBlockDriverMemoryLimit: 600Mi
      CSIBlockDriverMemoryRequest: 150Mi
      CSIDriverRegistrarCPULimit: 40m
      CSIDriverRegistrarCPURequest: 10m
      CSIDriverRegistrarMemoryLimit: 80Mi
      CSIDriverRegistrarMemoryRequest: 20Mi
      CSILivenessProbeCPULimit: 20m
      CSILivenessProbeCPURequest: 5m
      CSILivenessProbeMemoryLimit: 40Mi
      CSILivenessProbeMemoryRequest: 10Mi
      CSINodeDriverCPULimit: 120m
      CSINodeDriverCPURequest: 30m
      CSINodeDriverMemoryLimit: 300Mi
      CSINodeDriverMemoryRequest: 75Mi
      CSIProvisionerCPULimit: 80m
      CSIProvisionerCPURequest: 20m
      CSIProvisionerMemoryLimit: 160Mi
      CSIProvisionerMemoryRequest: 40Mi
      CSIResizerCPULimit: 80m
      CSIResizerCPURequest: 20m
      CSIResizerMemoryLimit: 160Mi
      CSIResizerMemoryRequest: 40Mi
      EIT_ENABLED_WORKER_POOLS: ""
      ENABLE_EIT: "false"
      SET_DEFAULT_STORAGE_CLASS: ""
      SecretSidecarCPULimit: 60m
      SecretSidecarCPURequest: 15m
      SecretSidecarMemoryLimit: 80Mi
      SecretSidecarMemoryRequest: 20Mi
    kind: ConfigMap
    metadata:
      annotations:
        revision: "2"
        version: v2.0
      creationTimestamp: "2025-06-19T11:23:13Z"
      labels:
        app.kubernetes.io/name: ibm-vpc-file-csi-driver
      name: addon-vpc-file-csi-driver-configmap
    
  2. 必要に応じてパラメータを編集し、ファイルを保存する。

アドオンの無効化

vpc-file-csi-driver を無効にすると、転送中の暗号化パッケージがワーカー・ノードから削除されます。

  1. 以下のコマンドを実行してアドオンを無効にする。

    ibmcloud ks cluster addon disable --addon vpc-file-csi-driver --cluster CLUSTER
    
  2. ポッドが削除されたことを確認します。

    kubectl get pods -n kube-system  | grep file
    

ストレージ削除オプションについて

タグ付けは、バージョン 1.2ではサポートされていませんでした。 これは、 --force-delete-storage オプションを指定してクラスターを削除すると、ファイル共有の削除に影響します。 クラスターを削除する前に、バージョン 1.2 のアドオンで作成されたすべての PVC をクリーンアップしてください。

IBM Cloud アカウントから永続ストレージを削除する方法は、ストレージをプロビジョンした方法と、どのコンポーネントを既に削除したかによって異なります。

クラスタを削除すると永続ストレージは削除されますか?
クラスターの削除中に、永続ストレージの削除を選択できます。 ただし、ストレージをプロビジョンした方法によっては、ストレージの削除にすべてのストレージ・コンポーネントが含まれない場合があります。 reclaimPolicy: Delete を設定するストレージクラスでストレージを動的にプロビジョニングした場合、クラスターを削除する と、PVC、PV、およびストレージインスタンスは自動的に削除されます。 静的にプロビジョニングされたストレージ、または reclaimPolicy: Retain を設定するストレージクラスでプロビジョニングしたストレージの場合、クラスタを削除するとPVCとPVは削除されますが、ストレージインスタンスとデータは残ります。 ストレージ・インスタンスは引き続き課金されます。 また、クラスターを正常でない状態で削除した場合は、ストレージを削除することを選択していても、ストレージがまだ存在している可能性があります。
クラスターを維持したい場合、ストレージを削除するにはどうすればよいですか?
reclaimPolicy: Delete を設定するストレージ・クラスを使用してストレージを動的にプロビジョンした場合、PVC を削除することにより、永続ストレージの削除プロセスを開始できます。 PVC、PV、およびストレージ・インスタンスは自動的に削除されます。 静的にプロビジョニングされたストレージ、または reclaimPolicy: Retain を設定するストレージクラスでプロビジョニングしたストレージについては、さらなる課金を避けるために、PVC、PV、およびストレージインスタンスを手動で削除する必要があります。
ストレージを削除した後、課金はどのように停止されますか?
削除するストレージ・コンポーネントとそのタイミングによっては、請求処理サイクルが即時に停止しない場合があります。 PVC と PV を削除しても、IBM Cloud アカウントのストレージ・インスタンスを削除しなかった場合は、そのインスタンスがまだ存在するので課金されます。

PVC、PV、およびストレージ・インスタンスを削除すると、ストレージのプロビジョン時に選択した billingType およびストレージの削除方法に応じて、請求処理サイクルが停止します。

  • IBM Cloud コンソールまたはCLIから永続ストレージインスタンスを手動でキャンセルすると、課金は次のように停止します:

    • 時間単位のストレージの場合: 課金は即座に停止されます。 ストレージが取り消された後も、最大で 72 時間、コンソールに引き続きそのストレージ・インスタンスが表示される可能性があります。
    • 月単位のストレージの場合: 即時取り消しまたは確定日に取り消しのいずれかを選択できます。 いずれの場合も、現在の請求処理サイクルの終わりまで課金され、次の請求処理サイクルで課金が停止します。 ストレージを取り消した後も、最大 72 時間、コンソールまたは CLI に引き続きそのストレージ・インスタンスが表示される可能性があります。
    • 即時キャンセル: ストレージを即時に削除するには、このオプションを選択します。 お客様もお客様のユーザーも、ストレージの使用やデータのリカバリーをすることとができなくなります。
    • 確定日: 次の確定日にストレージを取り消すには、このオプションを選択します。 ストレージ・インスタンスは次回の確定日までアクティブのままになり、この日付までは引き続き使用できます (例えば、チームにデータのバックアップを作成する時間を与えることができます)。
  • reclaimPolicy: Delete を設定するストレージ・クラスを使用してストレージを動的にプロビジョンし、PVC の削除を選択すると、PV およびストレージ・インスタンスは即時に削除されます。 時間単位で課金されるストレージの場合、請求処理は即時に停止します。 月単位で課金されるストレージの場合、その月の最後まで引き続き請求されます。 ストレージが削除されて請求処理が停止した後も、最大で 72 時間、コンソールまたは CLI に引き続きそのストレージ・インスタンスが表示される可能性があります。

永続的ストレージを削除する前に注意すべきことは?
永続ストレージをクリーンアップすると、保管されているすべてのデータが削除されます。 データのコピーが必要な場合は、バックアップを作成してください。
ストレージインスタンスを削除した。 自分のインスタンスがまだ表示されるのはなぜですか?
永続ストレージを削除した後、削除の処理が完了して、そのストレージが IBM Cloud コンソールまたは CLI に表示されなくなるまでに、最大 72 時間かかる可能性があります。

永続ストレージのクリーンアップ

永続ストレージに対する追加料金が発生することを回避するために、PVC、PV、およびストレージ・インスタンスを IBM Cloud アカウントから削除します。

始める前に

永続データをクリーンアップするには、次の手順を実行します。

  1. クラスターの PVC をリストし、PVC の NAMESTORAGECLASS、および PVC にバインドされていて VOLUME として表示されている PV の名前をメモします。

    kubectl get pvc
    

    出力例

    NAME                  STATUS    VOLUME                                     CAPACITY   ACCESSMODES   STORAGECLASS            AGE
    claim1   Bound     pvc-06886b77-102b-11e8-968a-f6612bb731fb   20Gi       RWO           class       78d
    claim2     Bound     pvc-457a2b96-fafc-11e7-8ff9-b6c8f770356c   4Gi        RWX           class 105d
    claim3      Bound     pvc-1efef0ba-0c48-11e8-968a-f6612bb731fb   24Gi       RWX           class        83d
    
  2. ストレージ・クラスの ReclaimPolicybillingType を確認します。

    kubectl describe storageclass <storageclass_name>
    

    回収ポリシーが Delete の場合は、PVC を削除すると、PV と物理ストレージも削除されます。 回収ポリシーが Retain の場合、またはストレージ・クラスを指定せずにストレージをプロビジョンした場合は、PVC を削除しても、PV と物理ストレージは削除されません。 PVC、PV、および物理ストレージを個別に削除する必要があります。

    ストレージの課金が月単位の場合は、課金サイクルの終了前にストレージを削除しても、その月の月額料金が課金されます。

  3. PVC をマウントするすべてのポッドを削除します。 PVC をマウントするポッドをリストします。 CLI 出力でポッドが返されない場合は、PVC を使用するポッドがありません。

    kubectl get pods --all-namespaces -o=jsonpath='{range .items[*]}{"\n"}{.metadata.name}{":\t"}{range .spec.volumes[*]}{.persistentVolumeClaim.claimName}{" "}{end}{end}' | grep "<pvc_name>"
    

    出力例

    depl-12345-prz7b:    claim1
    
  4. PVC を使用するポッドを削除します。 ポッドがデプロイメントの一部である場合は、デプロイメントを削除します。

    kubectl delete pod <pod_name>
    
  5. ポッドが削除されたことを確認します。

    kubectl get pods
    
  6. PVC を削除します。

    kubectl delete pvc <pvc_name>
    
  7. PV の状況を確認します。 先ほど取得した PV の名前を、VOLUME として使用します。 PVC を削除すると、PVC にバインドされている PV はリリースされます。 PV の状態は、ストレージをプロビジョンした方法に応じて、PV が自動的に削除された場合は Deleting 状態になり、PV を手動で削除する必要がある場合は Released 状態になります。 : 自動的に削除される PV の場合、削除が終わる前に一時的に状況が Released と表示されることがあります。 数分後にコマンドを再実行し、PV が削除されたことを確認してください。

    kubectl get pv <pv_name>
    
  8. PV が削除されていない場合は、手動で PV を削除します。

    kubectl delete pv <pv_name>
    
  9. PV が削除されたことを確認します。

    kubectl get pv
    
  10. 共有をリストします。

    ibmcloud is shares
    
  11. 各ファイル共有をリストし、関連するクラスター ID を見つけます。

    ibmcloud is share SHARE | grep CLUSTER-ID
    
  12. 共有を削除します。

    ibmcloud is share-delete (SHARE1 SHARE2 ...)