증상
Cassandra 데이터베이스의 디스크 공간이 부족하여 Apigee Hybrid 설치 프로세스가 실패합니다. 다음 오류 메시지와 함께 설치 프로세스가 실패합니다.
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 Hybrid 수집 필요 스크립트를 사용하여 검토할 Cassandra 포드에서 로그를 수집합니다.
가능한 원인
원인 | 설명 |
---|---|
디스크 공간 부족 | Cassandra의 사용 가능한 디스크 공간이 50% 미만입니다. |
원인 1: 디스크 공간 부족
Apigee Hybrid를 업그레이드할 때는 모든 Cassandra 포드에 사용 가능한 디스크 공간이 50% 이상인지 확인하세요.
진단
-
Apigee Hybrid 수집 필요 스크립트에서 다음 명령어의 출력을 검사하여 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 포드에서 사용되는 디스크를 확인합니다. Cassandra 포드에 할당된 영구 볼륨 클레임 (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 Hybrid 업그레이드에 문제가 발생합니다.
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 Hybrid 업그레이드를 실행하기 전에 Cassandra 디스크 용량을 확장하여 50% 미만이 되도록 합니다.
디스크 용량을 확장하려면 Cassandra 영구 스토리지 크기 관리를 참고하세요.
진단 정보 수집 필요
위 안내를 따른 후에도 문제가 지속되면 다음 진단 정보를 수집한 후 Google Cloud Customer Care에 문의하세요.- Google Cloud 프로젝트 ID입니다.
- Apigee Hybrid 조직
- 소스 및 새 리전의
overrides.yaml
파일 (민감한 정보를 마스킹해야 함) - Apigee Hybrid 수집 필요의 명령어 출력