Cassandra の永続ボリュームを拡張する

このプロセスでは、Apigee ハイブリッド Cassandra データベースで使用される永続ボリュームを拡張することで、より大きいストレージの要求に対応できます。単に追加のストレージを用意するために新しいノードを作成する必要はありません。

Apigee ハイブリッド cassandra コンポーネントでは、永続ボリュームを使用してデータを保存します。永続ボリュームのサイズは、インストール時と初期構成時に定義されます。この初期ストレージ サイズは不変の値であり、変更できません。したがって、クラスタに追加された新しいノードではすべて同じ永続ボリュームのサイズを使用します。

既存の永続ボリュームのサイズは、永続ボリューム要求で直接変更して増やすことができますが、新しいノードでは小さい方の初期永続ボリューム サイズが引き続き使用されます。

ハイブリッド Cassandra データベースがストレージ容量の上限に近づいている場合は、この手順を使用すると、既存の永続ボリュームを拡張できます。また、新しいノードでも永続ボリュームを拡張できます。

プロセス

  1. 永続ボリュームの拡張に進む前に、作成時に StorageClass に「allowVolumeExpansion: true」が設定されていることを確認します。
    kubectl get sc standard -o json | jq .allowVolumeExpansion true
  2. 既存の永続ボリューム構成(PVC)のボリューム サイズを更新します。
    kubectl -n apigee edit pvc 
  3. カスケード削除を行わずに StatefulSet を削除します。
    kubectl -n apigee delete sts --cascade=false apigee-cassandra
  4. overrides.yaml を更新して変更を適用します。
    cassandra:
      storage:
        capacity: 20Gi
    ./apigeectl apply -c cassandra -f overrides.yaml
  5. Cassandra ポッドをローリング再起動して、新しいサイズを反映します。Cassandra ポッドを 1 つずつ削除します。StatefulSet が正常であることを確認してから、次のノードに進みます。
    kubectl -n apigee delete pod apigee-cassandra-2
    kubectl -n apigee get sts
      NAME               READY   AGE
      apigee-cassandra   3/3     64s
  6. Cassandra ポッドが新しいボリューム サイズになっていることを確認します。
    kubectl -n apigee get pvc