Delen via


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:

  1. 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.

  2. Zorg ervoor dat alle gegevensservices die zijn gemaakt op de gegevenscontroller, worden verwijderd zoals beschreven in:

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:

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:

  1. Blader naar de resourcegroep en verwijder de gegevenscontroller.
  2. 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
  3. Verwijder eventueel de aangepaste locatie waarop de gegevenscontroller is geïmplementeerd.
  4. 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:

  1. De gegevenscontroller verwijderen
  2. De extensie voor de gegevenscontroller verwijderen
  3. 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.

  1. Gegevenscontroller verwijderen in indirect verbonden modus van cluster
  2. 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

  1. Voer uit kubectl get crd en zorg ervoor dat er geen resultaten zijn die bevatten *.arcdata.microsoft.com.
  2. Voer deze uit kubectl get clusterrole en zorg ervoor dat er geen clusterrollen in de indeling <namespace>:cr-*zijn.
  3. Voer uit kubectl get clusterrolebindings en zorg ervoor dat er geen clusterrolbindingen zijn in de indeling <namespace>:crb-*.