Ta bort en Azure Arc-aktiverad PostgreSQL-server
I det här dokumentet beskrivs stegen för att ta bort en server från din Azure Arc-konfiguration.
Kommentar
Som en förhandsgranskningsfunktion omfattas tekniken som presenteras i den här artikeln av kompletterande användningsvillkor för Förhandsversioner av Microsoft Azure.
De senaste uppdateringarna är tillgängliga i viktig information.
Ta bort servern
Låt oss till exempel överväga att ta bort postgres01-instansen från konfigurationen nedan:
az postgres server-arc list --k8s-namespace <namespace> --use-k8s
Name State
---------- -------
postgres01 Ready
Det allmänna formatet för borttagningskommandot är:
az postgres server-arc delete -n <server name> --k8s-namespace <namespace> --use-k8s
När du kör det här kommandot uppmanas du att bekräfta borttagningen av servern. Om du använder skript för att automatisera borttagningar måste du använda parametern --force för att kringgå bekräftelsebegäran. Du kan till exempel köra ett kommando som:
az postgres server-arc delete -n <server name> --force --k8s-namespace <namespace> --use-k8s
Om du vill ha mer information om borttagningskommandot kör du:
az postgres server-arc delete --help
Ta bort servern som används i det här exemplet
az postgres server-arc delete -n postgres01 --k8s-namespace <namespace> --use-k8s
Återta Kubernetes Persistent Volume Claims (PVCs)
En PersistentVolumeClaim (PVC) är en begäran om lagring av en användare från Kubernetes-klustret när du skapar och lägger till lagring på en PostgreSQL-server. Om du tar bort en servergrupp tas inte dess associerade datorer bort. Det här är avsiktligt. Avsikten är att hjälpa användaren att komma åt databasfilerna om instansen tas bort av misstag. Det är inte obligatoriskt att ta bort PVC:er. Men det rekommenderas. Om du inte återtar dessa PVC:er får du till slut fel eftersom Kubernetes-klustret tror att diskutrymmet eller användningen av samma PostgreSQL-servernamn tar slut när du skapar ett nytt kan orsaka inkonsekvenser. Gör så här för att frigöra PVC:er:
1. Visa en lista över datorerna för den servergrupp som du tog bort
Kör följande kommando för att visa en lista över datorerna:
kubectl get pvc [-n <namespace name>]
Den returnerar listan över datorer, särskilt datorerna för den servergrupp som du tog bort. Till exempel:
kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
data-few7hh0k4npx9phsiobdc3hq-postgres01-0 Bound pvc-72ccc225-dad0-4dee-8eae-ed352be847aa 5Gi RWO default 2d18h
data-few7hh0k4npx9phsiobdc3hq-postgres01-1 Bound pvc-ce6f0c51-faed-45ae-9472-8cdf390deb0d 5Gi RWO default 2d18h
data-few7hh0k4npx9phsiobdc3hq-postgres01-2 Bound pvc-5a863ab9-522a-45f3-889b-8084c48c32f8 5Gi RWO default 2d18h
data-few7hh0k4npx9phsiobdc3hq-postgres01-3 Bound pvc-00e1ace3-1452-434f-8445-767ec39c23f2 5Gi RWO default 2d15h
logs-few7hh0k4npx9phsiobdc3hq-postgres01-0 Bound pvc-8b810f4c-d72a-474a-a5d7-64ec26fa32de 5Gi RWO default 2d18h
logs-few7hh0k4npx9phsiobdc3hq-postgres01-1 Bound pvc-51d1e91b-08a9-4b6b-858d-38e8e06e60f9 5Gi RWO default 2d18h
logs-few7hh0k4npx9phsiobdc3hq-postgres01-2 Bound pvc-8e5ad55e-300d-4353-92d8-2e383b3fe96e 5Gi RWO default 2d18h
logs-few7hh0k4npx9phsiobdc3hq-postgres01-3 Bound pvc-f9e4cb98-c943-45b0-aa07-dd5cff7ea585 5Gi RWO default 2d15h
Det finns 8 datorer för den här servergruppen.
2. Ta bort var och en av datorerna
Ta bort data- och logg-PVC:erna för den PostgreSQL-server som du tog bort.
Det allmänna formatet för det här kommandot är:
kubectl delete pvc <name of pvc> [-n <namespace name>]
Till exempel:
kubectl delete pvc data-few7hh0k4npx9phsiobdc3hq-postgres01-0
kubectl delete pvc data-few7hh0k4npx9phsiobdc3hq-postgres01-1
kubectl delete pvc data-few7hh0k4npx9phsiobdc3hq-postgres01-2
kubectl delete pvc data-few7hh0k4npx9phsiobdc3hq-postgres01-3
kubectl delete pvc logs-few7hh0k4npx9phsiobdc3hq-postgres01-0
kubectl delete pvc logs-few7hh0k4npx9phsiobdc3hq-postgres01-1
kubectl delete pvc logs-few7hh0k4npx9phsiobdc3hq-postgres01-2
kubectl delete pvc logs-few7hh0k4npx9phsiobdc3hq-postgres01-3
Var och en av dessa kubectl-kommandon bekräftar att PVC-koden har raderats. Till exempel:
persistentvolumeclaim "data-postgres01-0" deleted
Kommentar
Om du inte tar bort datorerna kan det så småningom hända att kubernetes-klustret hamnar i en situation där det utlöser fel. Några av dessa fel kan vara att det inte går att skapa, läsa, uppdatera, ta bort resurser från Kubernetes-API:et eller att kunna köra kommandon som az arcdata dc export
kontrollantpoddar kan avlägsnas från Kubernetes-noderna på grund av det här lagringsproblemet (normalt Kubernetes-beteende).
Du kan till exempel se meddelanden i loggarna som liknar:
Annotations: microsoft.com/ignore-pod-health: true
Status: Failed
Reason: Evicted
Message: The node was low on resource: ephemeral-storage. Container controller was using 16372Ki, which exceeds its request of 0.