Partilhar via


Gestor de Cluster: Como gerir o Gestor de Cluster no Operator Nexus

O Gerenciador de Cluster é implantado na assinatura do Azure do operador para gerenciar o ciclo de vida dos Clusters de Infraestrutura do Operator Nexus.

Antes de começar

Certifique-se de ter as seguintes informações:

  • ID de Assinatura do Azure - A ID de assinatura do Azure onde o Gerenciador de Cluster precisa ser criado (deve ser a mesma ID de assinatura do Controlador de Malha de Rede).
  • ID do controlador de malha de rede - O controlador de malha de rede e o Gerenciador de cluster têm uma associação 1:1. Você precisa que a ID do recurso do Controlador de Malha de Rede seja associada ao Gerenciador de Cluster.
  • ID do Espaço de Trabalho do Log Analytics - O ID do recurso do Espaço de Trabalho do Log Analytics usado para a coleta de logs.
  • Região do Azure - O Gerenciador de Cluster deve ser criado na mesma região do Azure que o Controlador de Malha de Rede. Essa região do Location Azure deve ser usada no campo do Gerenciador de Cluster e em todas as instâncias do Nexus do Operador associadas.

Limitações

  • Nomenclatura - As regras de nomenclatura podem ser encontradas aqui.

Propriedades do Gerenciador de Cluster

Nome de Propriedade Description
Nome, ID, localização, tags, tipo O Nome: Nome amigável
ID: A ID do recurso
Local: a região do Azure onde o Gerenciador de Cluster é criado. Valores de: az account list -locations.
Tags: As tags de recursos
Tipo: Microsoft.NetworkCloud/clusterManagers
managerExtendedLocation O ExtendedLocation associado ao Gerenciador de Cluster
managedResourceGroupConfiguration Os detalhes do Grupo de Recursos Gerenciados criado para o Gerenciador de Cluster hospedar seus recursos usados internamente.
fabricControllerId A referência ao controlador de malha de rede que é 1:1 com este Gerenciador de Cluster
analyticsWorkspaceId O espaço de trabalho do Log Analytics onde os logs relevantes para o cliente podem ser encontrados.
clusterVersões[] A lista de versões de Cluster suportadas pelo Gestor de Clusters. Ele é usado como uma entrada na propriedade clusterVersion do cluster.
provisionamentoEstado O status de provisionamento da operação mais recente no Gerenciador de Cluster. Um dos: Aprovado, Falhado, Cancelado, Provisionamento, Aceito, Atualização
detailedStatus Os status detalhados que fornecem informações adicionais sobre o status do Gerenciador de Cluster.
detailedStatusMessage A mensagem descritiva sobre o status detalhado atual.

Identidade do Gerenciador de Cluster

Um cliente pode atribuir identidade gerenciada a um Gerenciador de Cluster. As identidades gerenciadas atribuídas pelo sistema e atribuídas pelo usuário são suportadas a partir da versão da 2024-07-01 API.

Se um Gerenciador de Cluster for criado com a identidade gerenciada atribuída pelo usuário, um cliente deverá provisionar o acesso a essa identidade para a plataforma Nexus. Especificamente, Microsoft.ManagedIdentity/userAssignedIdentities/assign/action a permissão precisa ser adicionada à identidade atribuída pelo usuário para AFOI-NC-MGMT-PME-PROD o Microsoft Entra ID. É uma limitação conhecida da plataforma que será abordada no futuro.

A atribuição de função pode ser feita por meio do portal do Azure:

  • Abra o portal do Azure e localize a identidade atribuída pelo usuário em questão.
    • Se você espera que várias identidades gerenciadas sejam provisionadas, a função pode ser adicionada no nível do grupo de recursos ou da assinatura.
  • Em Access control (IAM), clique em Adicionar nova atribuição de função
  • Selecione a função: Managed Identity Operator. Veja as permissões que a função fornece.
  • Atribuir acesso a: utilizador, grupo ou principal de serviço
  • Selecionar Membro: AFOI-NC-MGMT-PME-PROD candidatura
  • Rever e atribuir

Criar um Gestor de Cluster

Use os comandos abaixo para criar um Gerenciador de Cluster.

az networkcloud clustermanager create \
    --name "$CLUSTER_MANAGER_NAME" \
    --location "$LOCATION" \
    --analytics-workspace-id "$LAW_NAME" \
    --fabric-controller-id "$NFC_ID" \
    --managed-resource-group-configuration name="$MRG_NAME" location="$MRG_LOCATION" \
    --tags $TAG_KEY1="$TAG_VALUE1" $TAG_KEY2="$TAG_VALUE2"
    --resource-group "$CLUSTER_MANAGER_RG"
    --subscription "$SUB_ID"

Argumentos:

  • --name ou -n [Obrigatório] - O nome do Gerenciador de Cluster.
  • --resource-group ou -g [Obrigatório] - O nome do grupo de recursos. Você pode configurar o grupo de recursos padrão usando az configure --defaults group=<name>o .
  • --fabric-controller-id [Obrigatório] - A ID do recurso do Controlador de Malha de Rede associado ao Gerenciador de Cluster.
  • --analytics-workspace-id - O ID do recurso do espaço de trabalho do Log Analytics que é usado para a coleta de logs
  • --location ou -l - A região do Azure onde o Gerenciador de Cluster é criado. Valores de: az account list -locations. Você pode configurar o local padrão usando az configure --defaults location="$LOCATION".
  • --managed-resource-group-configuration - A configuração do grupo de recursos gerenciados associado ao recurso.
    • Utilização: --managed-resource-group-configuration location=XX name=XX
    • location: A região do grupo de recursos gerenciados. Se não for especificado, a região do recurso pai será escolhida.
    • name: O nome do grupo de recursos gerenciados. Se não for especificado, um nome exclusivo será gerado automaticamente.
  • wait / --no-wait - Aguarde a conclusão do comando ou não espere que a operação de longa duração termine.
  • --tags - Tags separadas por espaço: key[=value] [key[=value]...]. Use '' para limpar tags existentes
  • --subscription - Nome ou ID da subscrição. Você pode configurar a assinatura padrão usando az account set -s NAME_OR_IDo .
  • --mi-system-assigned - Ativar a identidade gerenciada atribuída pelo sistema.
  • --mi-user-assigned - IDs de recursos separados por espaço das identidades gerenciadas atribuídas pelo usuário a serem adicionadas.
  • --if-match / if-none-match - Especifique o último valor de ETag visto para evitar a substituição acidental de alterações simultâneas. O ETag é retornado como a propriedade resource uma vez que o recurso é criado e pode ser usado nas operações de atualização.

Argumentos comuns que estão disponíveis para cada comando da CLI do Azure:

  • --debug - imprime informações detalhadas sobre a execução da CLI que é usada para fins de depuração. Se detetar um erro, forneça o resultado gerado com o sinalizador --debug ativado quando enviar um relatório de erros.
  • --output ou -o - especifica o formato de saída. Os formatos de saída disponíveis são Json, Jsonc (JSON colorido), tsv (Tab-Separated Values), table (tabelas ASCII legíveis por humanos) e yaml. Por padrão, a CLI gera saídas Json.
  • --query - usa a linguagem de consulta JMESPath para filtrar a saída retornada dos serviços do Azure.

Listar/mostrar Gestores de Cluster

Os comandos list e show são usados para obter uma lista de Gerentes de Cluster existentes ou as propriedades de um Gerenciador de Cluster específico.

Este comando lista os Gestores de Cluster no grupo de Recursos especificado.

az networkcloud clustermanager list --resource-group "$CLUSTER_MANAGER_RG"

Este comando lista os Gestores de Cluster na subscrição especificada.

az networkcloud clustermanager list  --subscription "$SUB_ID"

Este comando mostra as propriedades do Gerenciador de Cluster especificado.

az networkcloud clustermanager show \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

Atualizar o Gerenciador de Cluster

Este comando é usado para corrigir propriedades do Gerenciador de Cluster fornecido ou atualizar as tags atribuídas ao Gerenciador de Cluster. As atualizações de propriedades e tags podem ser feitas de forma independente.

Este comando atualiza os Gestores de Cluster no grupo de Recursos especificado.

az networkcloud clustermanager update \
    --name "$CLUSTER_MANAGER_NAME" \
    --tags $TAG_KEY1="$TAG_VALUE1" $TAG_KEY2="$TAG_VALUE2" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

A identidade do Gerenciador de Cluster pode ser gerenciada via CLI usando az networkcloud clustermanager identity subcomandos.

Este comando mostra as identidades atribuídas atualmente.

az networkcloud clustermanager identity show \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

Este comando adiciona uma nova identidade atribuída pelo usuário.

az networkcloud clustermanager identity assign \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
    --mi-user-assigned "$UAI_RESOURCE_ID"

Este comando adiciona uma identidade atribuída ao sistema.

az networkcloud clustermanager identity assign \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
    --mi-system-assigned

Este comando remove a identidade atribuída pelo usuário existente.

az networkcloud clustermanager identity remove \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
    --mi-user-assigned "$UAI_RESOURCE_ID"

Este comando remove a identidade atribuída ao sistema existente.

az networkcloud clustermanager identity remove \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
    --mi-system-assigned

Excluir o Gerenciador de Cluster

Este comando é usado para Excluir o Gerenciador de Cluster fornecido.

Aviso

Um Gerenciador de Cluster que tenha um Controlador de Malha de Rede associado existente ou quaisquer Clusters que façam referência a esse Gerenciador de Cluster não podem ser excluídos.

az networkcloud clustermanager delete \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

Nota

É recomendável aguardar 20 minutos após excluir clustermanager antes de tentar criar um novo clustermanager com o mesmo nome.

Próximos passos

Depois de criar com êxito o Controlador de Malha de Rede e o Gerenciador de Cluster, a próxima etapa é criar uma Malha de Rede.