Excluir uma instância gerenciada do SQL habilitada pelo Azure Arc

Neste guia de instruções, você encontrará e excluirá uma Instância Gerenciada SQL habilitada pelo Azure Arc. Opcionalmente, depois de excluir instâncias gerenciadas, você pode recuperar PVCs (declarações de volume persistente) do Kubernetes associadas.

  1. Encontre instâncias existentes:

    az sql mi-arc list --k8s-namespace <namespace> --use-k8s
    

    Saída de exemplo:

    Name    Replicas    ServerEndpoint    State
    ------  ----------  ----------------  -------
    demo-mi 1/1         10.240.0.4:32023  Ready
    
  2. Exclua a Instância Gerenciada SQL, execute um dos comandos apropriados para seu tipo de implantação:

    1. Modo conectado indiretamente:

      az sql mi-arc delete --name <instance_name> --k8s-namespace <namespace> --use-k8s
      

      Saída de exemplo:

      # az sql mi-arc delete --name demo-mi --k8s-namespace <namespace> --use-k8s
      Deleted demo-mi from namespace arc
      
    2. Modo conectado diretamente:

      az sql mi-arc delete --name <instance_name> --resource-group <resource_group>
      

      Saída de exemplo:

      # az sql mi-arc delete --name demo-mi --resource-group my-rg
      Deleted demo-mi from namespace arc
      

Opcional - Recuperar PVCs Kubernetes

Uma Declaração de Volume Persistente (PVC) é uma solicitação de armazenamento feita por um usuário de um cluster Kubernetes ao criar e adicionar armazenamento a uma Instância Gerenciada SQL. A exclusão de PVCs é recomendada, mas não é obrigatória. No entanto, se você não recuperar esses PVCs, acabará com erros no cluster do Kubernetes. Por exemplo, talvez você não consiga criar, ler, atualizar ou excluir recursos da API do Kubernetes. Talvez você não consiga executar comandos como az arcdata dc export porque os pods do controlador foram removidos dos nós do Kubernetes devido a problemas de armazenamento (comportamento normal do Kubernetes). Você pode ver mensagens nos logs semelhantes a:

  • Anotações: microsoft.com/ignore-pod-health: true
  • Estado: Falha
  • Motivo: Despejado
  • Mensagem: O nó estava com pouco recurso: armazenamento efêmero. O controlador de contêiner estava usando 16372Ki, o que excede sua solicitação de 0.

Por design, excluir uma instância gerenciada do SQL não remove seus PVCs associados. A intenção é garantir que você possa acessar os arquivos do banco de dados caso a exclusão tenha sido acidental.

  1. Para recuperar os PVCs, siga as seguintes etapas:
    1. Encontre os PVCs para o grupo de servidores excluído.

      kubectl get pvc
      

      No exemplo abaixo, observe os PVCs para as instâncias gerenciadas SQL que você excluiu.

      # kubectl get pvc -n arc
      
      NAME                    STATUS    VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS      AGE
      data-demo-mi-0        Bound     pvc-1030df34-4b0d-4148-8986-4e4c20660cc4   5Gi        RWO            managed-premium   13h
      logs-demo-mi-0        Bound     pvc-11836e5e-63e5-4620-a6ba-d74f7a916db4   5Gi        RWO            managed-premium   13h
      
    2. Exclua os dados e registre PVCs para cada uma das Instâncias Gerenciadas SQL excluídas. O formato geral deste comando é:

      kubectl delete pvc <name of pvc>
      

      Por exemplo:

      kubectl delete pvc data-demo-mi-0 -n arc
      kubectl delete pvc logs-demo-mi-0 -n arc
      

      Cada um desses comandos kubectl confirmará a exclusão bem-sucedida do PVC. Por exemplo:

      persistentvolumeclaim "data-demo-mi-0" deleted
      persistentvolumeclaim "logs-demo-mi-0" deleted
      

Saiba mais sobre Recursos e Capacidades da Instância Gerenciada SQL habilitada pelo Azure Arc

Comece criando um Controlador de Dados

Já criou um Controlador de Dados? Criar uma Instância Gerenciada SQL habilitada pelo Azure Arc