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 Pod をローリング再起動して、新しいサイズを反映します。Cassandra Pod を 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 Pod が新しいボリューム サイズになっていることを確認します。
    kubectl -n apigee get pvc