Gegevensservices met Azure Arc verwijderen
In dit artikel wordt beschreven hoe u met Azure Arc ingeschakelde gegevensservicebronnen verwijdert uit Azure.
Waarschuwing
Wanneer u resources verwijdert zoals beschreven in dit artikel, kunnen deze acties niet ongedaan worden.
Het implementeren van gegevensservices met Azure Arc omvat het implementeren van een Azure Arc-gegevenscontroller en exemplaren van gegevensservices met SQL Managed Instance waarvoor Azure Arc of PostgresQL-server met Azure Arc is ingeschakeld. Implementatie maakt verschillende artefacten, zoals:
- Aangepaste resourcedefinities (CRD's)
- Clusterrollen
- Clusterrolbindingen
- API-services
- Naamruimte, als deze nog niet bestond
In de rechtstreeks verbonden modus zijn er extra artefacten, zoals:
- Clusterextensies
- Aangepaste locaties
Vóór
Voordat u een resource verwijdert, zoals SQL Managed Instance die is ingeschakeld door Azure Arc of een gegevenscontroller, moet u eerst de volgende acties uitvoeren:
Voor een indirect verbonden gegevenscontroller exporteert en uploadt u de gebruiksgegevens naar Azure voor nauwkeurige factureringsberekening door de instructies te volgen die worden beschreven in factureringsgegevens uploaden naar de indirect verbonden modus van Azure.
Zorg ervoor dat alle gegevensservices die zijn gemaakt op de gegevenscontroller, worden verwijderd zoals beschreven in:
- SQL Managed Instance verwijderen die is ingeschakeld door Azure Arc
- Een PostgreSQL-server met Azure Arc verwijderen.
Nadat u bestaande exemplaren van SQL Managed Instance hebt verwijderd die zijn ingeschakeld door Azure Arc en/of een PostgreSQL-server met Azure Arc, verwijdert u de gegevenscontroller met behulp van een van de juiste methoden voor de connectiviteitsmodus.
Notitie
Als u de gegevenscontroller hebt geïmplementeerd in de modus direct verbonden, volgt u de stappen om:
- Gegevenscontroller verwijderen in de direct verbonden modus met behulp van Azure Portal of
- Verwijder de gegevenscontroller in de rechtstreeks verbonden modus met behulp van Azure CLI en verwijder vervolgens de gegevenscontroller uit de Azure-portal of CLI en verwijder vervolgens (2) Kubernetes-clusterartefacten.
Als u de gegevenscontroller in indirect verbonden modus hebt geïmplementeerd, volgt u de stappen om de gegevenscontroller in indirect verbonden modus te verwijderen.
Gegevenscontroller verwijderen in de direct verbonden modus met behulp van Azure Portal
Vanuit Azure Portal:
- Blader naar de resourcegroep en verwijder de gegevenscontroller.
- Selecteer het Kubernetes-cluster met Azure Arc en ga naar de pagina Overzicht:
- Extensies selecteren onder Instellingen
- Selecteer op de pagina Extensies de Azure Arc-extensie voor gegevensservices (van het type
microsoft.arcdataservices
) en selecteer bij Verwijderen
- Verwijder eventueel de aangepaste locatie waarop de gegevenscontroller is geïmplementeerd.
- U kunt desgewenst ook de naamruimte in uw Kubernetes-cluster verwijderen als er geen andere resources zijn gemaakt in de naamruimte.
Zie Azure-resources beheren met behulp van Azure Portal.
Gegevenscontroller verwijderen in de direct verbonden modus met behulp van Azure CLI
Als u de gegevenscontroller in de rechtstreeks verbonden modus met de Azure CLI wilt verwijderen, zijn er drie stappen:
- De gegevenscontroller verwijderen
- De extensie voor de gegevenscontroller verwijderen
- De aangepaste locatie verwijderen
De gegevenscontroller verwijderen
Nadat u verbinding hebt gemaakt met uw Kubernetes-cluster, voert u de volgende opdracht uit om de gegevenscontroller te verwijderen:
az arcdata dc delete --name <name of datacontroller> --resource-group <name of resource-group>
## Example
az arcdata dc delete --name arcdc --resource-group myrg
De extensie voor de gegevenscontroller verwijderen
Nadat u de gegevenscontroller hebt verwijderd, verwijdert u de extensie van de gegevenscontroller, zoals hieronder wordt beschreven. Als u de naam van de Arc-gegevenscontrollerextensie wilt ophalen, gaat u naar de pagina Overzicht van uw verbonden cluster in Azure Portal en kijkt u onder het tabblad Extensies of gebruikt u de onderstaande opdracht om een lijst met alle extensies op het cluster op te halen:
az k8s-extension list --resource-group <name of resource-group> --cluster-name <name of connected cluster> --cluster-type connectedClusters
## Example
az k8s-extension list --resource-group myrg --cluster-name mycluster --cluster-type connectedClusters
Nadat u de naam van de Arc-gegevenscontrollerextensie hebt, verwijdert u deze door het volgende uit te voeren:
az k8s-extension delete --resource-group <name of resource-group> --cluster-name <name of connected cluster> --cluster-type connectedClusters --name <name of your Arc data controller extension>
## Example
az k8s-extension delete --resource-group myrg --cluster-name mycluster --cluster-type connectedClusters --name myadsextension
Wacht enkele minuten totdat de bovenstaande acties zijn voltooid. Zorg ervoor dat de gegevenscontroller wordt verwijderd door de onderstaande opdracht uit te voeren om de status te controleren:
kubectl get datacontrollers -A
De aangepaste locatie verwijderen
Als er geen andere extensies zijn gekoppeld aan deze aangepaste locatie, gaat u als volgt verder met het verwijderen van de aangepaste locatie:
az customlocation delete --name <Name of customlocation> --resource-group <Name of resource group>
## Example
az customlocation delete --name myCL --resource-group myrg
Gegevenscontroller verwijderen in indirect verbonden modus
Met een indirect verbonden gegevenscontrollerimplementatie is Azure Portal zich per definitie niet bewust van uw Kubernetes-cluster. Als u de gegevenscontroller wilt verwijderen, moet u deze daarom in twee stappen verwijderen in het Kubernetes-cluster en in Azure Portal.
- Gegevenscontroller verwijderen in indirect verbonden modus van cluster
- Gegevenscontroller verwijderen in indirect verbonden modus vanuit Azure Portal
Gegevenscontroller verwijderen in indirect verbonden modus van cluster
Verwijder de gegevenscontroller van het Kubernetes-cluster door de volgende opdracht uit te voeren:
az arcdata dc delete --name <name of datacontroller> --k8s-namespace <namespace of data controller> --use-k8s
## Example
az arcdata dc delete --name arcdc --k8s-namespace arc --use-k8s
Gegevenscontroller verwijderen in indirect verbonden modus vanuit Azure Portal
Blader in Azure Portal naar de resourcegroep met de gegevenscontroller en verwijder deze.
Kubernetes-clusterartefacten verwijderen
Nadat u de gegevenscontroller hebt verwijderd zoals hierboven beschreven, volgt u de onderstaande stappen om alle artefacten met betrekking tot gegevensservices met Azure Arc volledig te verwijderen. Het verwijderen van alle artefacten kan nodig zijn in situaties waarin u een gedeeltelijke of mislukte implementatie hebt, of gewoon de gegevensservices met Azure Arc opnieuw wilt installeren.
## Substitute your namespace into the variable
export mynamespace="arc"
## Delete Custom Resource Definitions
kubectl delete crd datacontrollers.arcdata.microsoft.com
kubectl delete crd postgresqls.arcdata.microsoft.com
kubectl delete crd sqlmanagedinstances.sql.arcdata.microsoft.com
kubectl delete crd sqlmanagedinstancerestoretasks.tasks.sql.arcdata.microsoft.com
kubectl delete crd dags.sql.arcdata.microsoft.com
kubectl delete crd exporttasks.tasks.arcdata.microsoft.com
kubectl delete crd monitors.arcdata.microsoft.com
kubectl delete crd activedirectoryconnectors.arcdata.microsoft.com
kubectl delete crd failovergroups.sql.arcdata.microsoft.com
kubectl delete crd kafkas.arcdata.microsoft.com
kubectl delete crd otelcollectors.arcdata.microsoft.com
## Delete Cluster roles and Cluster role bindings
kubectl delete clusterrole arcdataservices-extension
kubectl delete clusterrole $mynamespace:cr-arc-metricsdc-reader
kubectl delete clusterrole $mynamespace:cr-arc-dc-watch
kubectl delete clusterrole cr-arc-webhook-job
kubectl delete clusterrole $mynamespace:cr-upgrade-worker
kubectl delete clusterrolebinding $mynamespace:crb-arc-metricsdc-reader
kubectl delete clusterrolebinding $mynamespace:crb-arc-dc-watch
kubectl delete clusterrolebinding crb-arc-webhook-job
kubectl delete clusterrolebinding $mynamespace:crb-upgrade-worker
## API services Up to May 2021 release
kubectl delete apiservice v1alpha1.arcdata.microsoft.com
kubectl delete apiservice v1alpha1.sql.arcdata.microsoft.com
## June 2021 release
kubectl delete apiservice v1beta1.arcdata.microsoft.com
kubectl delete apiservice v1beta1.sql.arcdata.microsoft.com
## GA/July 2021 release
kubectl delete apiservice v1.arcdata.microsoft.com
kubectl delete apiservice v1.sql.arcdata.microsoft.com
## Delete mutatingwebhookconfiguration
kubectl delete mutatingwebhookconfiguration arcdata.microsoft.com-webhook-$mynamespace
Verwijder desgewenst ook de naamruimte als volgt:
kubectl delete namespace <name of namespace>
## Example:
kubectl delete namespace arc
Controleren of alle objecten zijn verwijderd
- Voer uit
kubectl get crd
en zorg ervoor dat er geen resultaten zijn die bevatten*.arcdata.microsoft.com
. - Voer deze uit
kubectl get clusterrole
en zorg ervoor dat er geen clusterrollen in de indeling<namespace>:cr-*
zijn. - Voer uit
kubectl get clusterrolebindings
en zorg ervoor dat er geen clusterrolbindingen zijn in de indeling<namespace>:crb-*
.