Удаление всех связанных постоянных дисков при удалении кластера - PullRequest
0 голосов
/ 09 января 2020

Согласно документации при удалении кластера постоянный диск все еще будет существовать (https://cloud.google.com/kubernetes-engine/docs/how-to/deleting-a-cluster). Я хочу удалить все связанные постоянные диски при удалении кластера, но я не знаю имени / идентификатора постоянного диска. API Cluster get не содержит информации о дисках и узлах.

resp, err := containerService.Projects.Zones.Clusters.Get(project, zone, cluster).Context(ctx).Do()

Ответы [ 4 ]

0 голосов
/ 01 февраля 2020

Cloud SDK может использоваться для идентификации дисков, если правильный фильтр и формат имеют синтаксический анализ

т.е.

Чтобы вывести список всех дисков, используемых GKE ( вы можете изменить фильтр по вашему усмотрению)

gcloud compute disks list --format="table(name,users)" --filter="name~^gke-"

Для отображения только дисков, используемых в качестве PV C

gcloud compute disks list --format="table(name,users)" --filter="name~^gke-.*-pvc-.*"

Эта последняя команда выведет список отключенных PV C disk

gcloud compute disks list --format="table(name,users)" --filter="name~^gke-.*-pvc-.* AND -users:*"

Чтобы убедиться, что отдельный диск не используется кластером, вот команда kubectl, чтобы вывести список PV кластера и их GCE PD:

kubectl get pv -o custom-columns=K8sPV:.metadata.name,GCEDisk:spec.gcePersistentDisk.pdName

соответствующий метод API - disks.list

0 голосов
/ 15 января 2020

Чтобы добиться того, что вы ищете, следующие документы Google помогут получить имя узла через Go API, используя два метода 1 <<a href="https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools/get" rel="nofollow noreferrer"> nodeget > 2 <<a href="https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroupManagers/get" rel="nofollow noreferrer"> instagroupget >

0 голосов
/ 16 января 2020

Для наборов с сохранением состояния будет создан диск в следующем формате

gke-standard-cluster-3-pv c -8586b7f8-37fd-11ea-beff-42010a80012a

Где standard-cluster-3 будет именем вашего кластера, а pv c -8586b7f8-37fd-11ea-beff-42010a80012a будет именем вашего тома

При этом вы можете использовать этот метод для перехвата имени постоянного диска, созданного набором с сохранением состояния.

0 голосов
/ 10 января 2020

Чтобы запустить имя узла, имя диска совпадает с именем узла. Вы можете удалить диск после кластера, но перед удалением вам нужно запустить kubectl get. Также, чтобы получить идентификатор диска, вы можете использовать команду gcloud: gcloud compute disk описать --zone | grep "id" Перейдите по этой ссылке, чтобы ознакомиться с рекомендациями Google по удалению дисков кластера: ссылка

...