이 프로세스를 수행하면 더 많은 스토리지를 제공하기 위해 새 노드를 만들지 않고도 Apigee Hybrid Cassandra 데이터베이스에서 사용하는 영구 볼륨을 확장하여 스토리지 추가 요구사항을 충족할 수 있습니다.
Apigee Hybrid cassandra
구성요소는 영구 볼륨을 사용하여 데이터를 저장합니다. 영구 볼륨의 크기는 설치 및 초기 구성 중에 정의됩니다. 이 초기 스토리지 크기의 값은 변경할 수 없습니다. 따라서 클러스터에 추가된 새 노드는 동일한 영구 볼륨 크기를 사용합니다.
기존 영구 볼륨은 영구 볼륨 신청에서 직접 크기를 변경하여 늘릴 수 있지만 새 노드는 이보다 작은 초기 영구 볼륨 크기를 계속 사용합니다.
하이브리드 Cassandra 데이터베이스가 스토리지 용량 한도에 가까워지면 이 절차에 따라 기존 영구 볼륨을 확장하고 새 노드에서도 영구 볼륨을 확장하도록 할 수 있습니다.
처리
- 영구 볼륨 확장을 계속하기 전에 StorageClass가 생성될 때 '
allowVolumeExpansion: true
'가 StorageClass에 설정되어 있는지 확인합니다.kubectl get sc standard -o json | jq .allowVolumeExpansion true
- 기존 영구 볼륨 구성(PVC)의 볼륨 크기를 업데이트합니다.
kubectl -n apigee edit pvc
- 단계식 삭제 없이 statefulset를 삭제합니다.
kubectl -n apigee delete sts --cascade=false apigee-cassandra
- override.yaml을 업데이트하고 변경사항을 적용합니다.
cassandra: storage: capacity: 20Gi
./apigeectl apply -c cassandra -f overrides.yaml
- 새 크기를 반영하도록 Cassandra pod를 순차적으로 재시작합니다. Cassandra pod를 한 번에 하나씩 삭제합니다. 다음 노드로 진행하기 전에 statefulset가 정상인지 확인합니다.
kubectl -n apigee delete pod apigee-cassandra-2
kubectl -n apigee get sts NAME READY AGE apigee-cassandra 3/3 64s
- Cassandra pod가 새 볼륨 크기를 가지는지 확인합니다.
kubectl -n apigee get pvc