症状
Cassandra データベースのディスク容量が不足しているため、Apigee ハイブリッド インストール プロセスが失敗します。インストール プロセスが失敗し、次のエラー メッセージが表示されます。
Error: UPGRADE FAILED: cannot patch "default" with kind ApigeeDatastore: Internal error occurred
また、Cassandra ログに次のような警告が記録されます。
WARN [main] 2024-06-18 12:34:55,583 DatabaseDescriptor.java:579 - Only 62.440GiB free across all data volumes. Consider adding more capacity to your cluster or removing obsolete snapshots
共通の診断手順
Apigee ハイブリッドの Must-Gather スクリプトを使用して、Cassandra Pod からログを収集して確認します。
考えられる原因
原因 | 説明 |
---|---|
ディスク容量が不足している | Cassandra の使用可能なディスク容量が 50% 未満です。 |
原因 1: ディスク容量が不足している
Apigee ハイブリッドをアップグレードするときは、すべての Cassandra Pod で 50% を超えるディスク空き容量を確保してください。
診断
-
Apigee ハイブリッドの必須収集スクリプトで、次のコマンドの出力を調べて、Cassandra に関連付けられたボリュームの合計サイズを確認します。
kubectl get pv -n APIGEE_NAMESPACE
出力例:
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS VOLUMEATTRIBUTESCLASS REASON AGE pvc-0b6b2daa-d512-4780-9021-fc97293a8154 10Gi RWO Delete Bound apigee/cassandra-data-apigee-cassandra-default-1 standard-rwo <unset> - 20d pvc-2263fc7c-e057-406a-ad60-38573733c92d 10Gi RWO Delete Bound apigee/cassandra-data-apigee-cassandra-default-2 standard-rwo <unset> - 20d pvc-8c854fe9-adaa-440f-90d9-d15497e7f530 10Gi RWO Delete Bound apigee/cassandra-data-apigee-cassandra-default-0 standard-rwo <unset> - 20d
-
nodetool
ステータス出力で、各 Cassandra Pod で使用されているディスクを確認します。Cassandra Pod に割り当てられた永続ボリューム要求(PVC)のディスク容量使用率は、使用可能なストレージ容量の 50% を超えないようにする必要があります。次のコマンドを参照してください。kubectl -n APIGEE_NAMESPACE -c apigee-cassandra exec apigee-cassandra-default-1 -- bash -c 'nodetool -u cassandra -pw $CASS_PASSWORD status'
ここで、CASS_PASSWORD は 構成プロパティ リファレンスで説明されている
cassandra.auth.default.password
です。出力例:
Datacenter: us-west3 ======================== Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 10.10.10.1 6.69 GiB 256 100.0% 2a184030-444-4155-8375-156e87539711 a UN 10.10.10.2 7.42 GiB 256 53.1% f22b66c7-4444-4000-b9c0-5a71ee6315a8 c UJ 10.10.10.3 7.39 GiB 256 ? 78fb2737-4444-4468-a786-e473ead115b5 b UN 10.10.10.4 7.81 GiB 256 47.0% 779fcdf1-4444-4186-bcbb-2844e59629c2 b UN 10.10.10.5 6.91 GiB 256 53.0% 55ca07b2-4444-4967-b321-6477d50f9846 b UN 10.10.10.6 7.41 GiB 256 46.9% 0cf33585-444-46ce-811f-9c6376ed58ac c
(省略可)
kubectl
を使用して Cassandra コンテナ内でコマンドを実行し、ディスク使用率を確認します。kubectl exec -it apigee-cassandra-default-0 -n apigee – df -h /opt/apigee/data
kubectl exec -it apigee-cassandra-default-1 -n apigee – df -h /opt/apigee/data
kubectl exec -it apigee-cassandra-default-2 -n apigee – df -h /opt/apigee/data
例
次の例は、ディスク容量の使用率が 50% を超えている場所を示しています。これにより、Apigee ハイブリッドのアップグレードで問題が発生します。
kubectl exec -it apigee-cassandra-default-0 -n apigee -- df -h /opt/apigee/data
Defaulted container "apigee-cassandra" out of: apigee-cassandra, apigee-cassandra-ulimit-init (init) Filesystem Size Used Avail Use% Mounted on /dev/sdb 10G 6G 4G 60% /opt/apigee/data
kubectl exec -it apigee-cassandra-default-1 -n apigee -- df -h /opt/apigee/data
Defaulted container "apigee-cassandra" out of: apigee-cassandra, apigee-cassandra-ulimit-init (init) Filesystem Size Used Avail Use% Mounted on /dev/sdb 10G 5.9G 4.1G 59% /opt/apigee/data
kubectl exec -it apigee-cassandra-default-2 -n apigee -- df -h /opt/apigee/data
Defaulted container "apigee-cassandra" out of: apigee-cassandra, apigee-cassandra-ulimit-init (init) Filesystem Size Used Avail Use% Mounted on /dev/sdb 10G 5.6G 4.4G 56% /opt/apigee/data
解決策
ディスク使用率が 50% を超えている場合は、Apigee ハイブリッド アップグレードを実行する前に、Cassandra のディスク容量をスケーリングして 50% 以下にします。
ディスク容量を拡張するには、Cassandra の永続ストレージのサイズを管理するをご覧ください。
診断情報の収集が必要な場合
上記の手順でも問題が解決しない場合は、次の診断情報を収集して Google Cloud カスタマーケアにご連絡ください。- Google Cloud プロジェクト ID。
- Apigee ハイブリッド組織。
- ソースと新しいリージョンの両方の
overrides.yaml
ファイル(機密情報をマスキングしてください)。 - Apigee ハイブリッドの Must-Gather のコマンド出力。