Partilhar via


Dimensionamento em várias máquinas

Agora que o AKS Edge Essentials está instalado em sua máquina principal, este artigo descreve como você pode expandir seu cluster para outras máquinas secundárias para criar uma implantação de várias máquinas.

Atenção

O dimensionamento para nós adicionais é um recurso experimental.

Pré-requisitos

  • Configure seu cluster Kubernetes escalável.
  • Configure suas máquinas secundárias conforme descrito no artigo Configurar máquina. Não é possível misturar diferentes distribuições do Kubernetes em seu cluster. Se o cluster na sua máquina principal estiver executando o K8s, você também deverá instalar o MSI do K8s nas máquinas secundárias.

Etapa 1: obter a configuração do cluster da sua máquina principal

Na máquina principal na qual você criou sua implantação escalável, execute as etapas a seguir em uma janela elevada do PowerShell para criar o arquivo de configuração apropriado com base em seus requisitos.

  • Para dimensionar adicionando um nó de trabalho somente Linux, crie o arquivo de configuração necessário usando o seguinte comando e especifique o NodeType como "Linux" e forneça um endereço IP exclusivo e disponível para esse nó:

    New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Linux -LinuxNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
    
  • Para dimensionar adicionando mais nó de plano de controle Linux, especifique o NodeType como "Linux", defina o ControlPlane sinalizador como true e forneça um endereço IP exclusivo para o nó Linux:

    New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Linux -LinuxNodeIp x.x.x.x -ControlPlane -outFile .\ScaleConfig.json | Out-Null
    
  • Para dimensionar adicionando um nó de trabalho somente do Windows, especifique o NodeType como "Windows" e forneça um endereço IP exclusivo para o nó do Windows:

      New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Windows -WindowsNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
    
  • Para adicionar um nó de trabalho Linux e Windows, especifique o NodeType como "LinuxAndWindows" e forneça um endereço IP exclusivo para os nós Linux e Windows:

    New-AksEdgeScaleConfig -scaleType AddMachine -NodeType LinuxandWindows -LinuxNodeIp x.x.x.x -WindowsNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
    
  • Para adicionar um nó de plano de controle Linux e um nó de trabalho do Windows, especifique o NodeType como "LinuxAndWindows", defina o ControlPlane sinalizador como true, e forneça um endereço IP exclusivo para os nós Linux e Windows:

    New-AksEdgeScaleConfig -scaleType AddMachine -NodeType LinuxandWindows -LinuxNodeIp x.x.x.x -WindowsNodeIp x.x.x.x  -ControlPlane -outFile .\ScaleConfig.json | Out-Null
    

Esses comandos exportam os dados necessários para ingressar em um cluster no formato JSON, retorná-los como uma cadeia de caracteres JSON e armazená-los no arquivo especificado via outFile parâmetro.

Atenção

Toda vez que você executa o New-AksEdgeScaleConfig comando, o criado ClusterJoinToken anteriormente torna-se inválido, portanto, você não pode usar um arquivo ScaleConfig.json criado anteriormente. Além disso, ClusterJoinToken só é válido por 24 horas.

Etapa 2: validar os parâmetros de configuração

O arquivo de configuração .\ScaleConfig.json inclui a configuração da máquina primária. Revise e atualize as seções necessárias e forneça detalhes relevantes para a máquina para a qual você está escalando.

  • Verifique o NetworkConnection.AdapterName com referência à máquina secundária. Se você criou um comutador externo no Hyper-V na máquina secundária, pode optar por especificar os detalhes do vswitch no arquivo ScaleConfig.json . Se você não criar um comutador externo no gerenciador do Hyper-V e executar o comando, o New-AksEdgeDeployment AKS Edge Essentials criará automaticamente um comutador externo chamado aksedgesw-ext e o usará para sua implantação.

    Nota

    Nesta versão, há um problema conhecido na criação automática de switches externos com o New-AksEdgeDeployment comando se você estiver usando um adaptador Wi-fi para o switch. Nesse caso, primeiro crie o comutador externo usando o gerenciador Hyper-V - Virtual Switch Manager e mapeie o switch para o adaptador Wi-fi. Em seguida, forneça os detalhes do switch em seu JSON de configuração, conforme descrito nesta seção.

  • O Network.NetworkPlugin é flannel por padrão. Flannel é a CNI padrão para um cluster K3S. Para um cluster K8S, altere o NetworkPlugin para calico.

  • Verifique a configuração do recurso para os nós secundários. Você pode modificar esses parâmetros conforme necessário. Certifique-se de reservar memória suficiente para cada nó. Se você especificou MacAddress em sua máquina primária, verifique e forneça o endereço MAC correto relevante para a máquina secundária.

  • Um número ímpar de nós do plano de controle é a única configuração suportada. Portanto, se você quiser aumentar / diminuir o plano de controle, certifique-se de ter um, três ou cinco nós do plano de controle.

Passo 3: abrir um nó na sua máquina secundária

Agora você está pronto para abrir nós em suas máquinas secundárias e adicioná-los ao cluster.

Para implantar o nó correspondente na máquina secundária, agora você pode usar o arquivo de ScaleConfig.json criado na etapa anterior:

New-AksEdgeDeployment -JsonConfigFilePath .\ScaleConfig.json

Etapa 4: validar a configuração do cluster

Em qualquer nó do cluster, execute o seguinte cmdlet:

kubectl get nodes -o wide

Você deve ser capaz de ver todos os nós do cluster.

Captura de tela mostrando vários nós.

Etapa 5: adicionar mais nós

Você pode gerar um novo arquivo ScaleConfig com base no nodeType necessário repetindo as etapas 1 a 4. Certifique-se de fornecer endereços IP que estão disponíveis em sua rede cada vez que você adicionar um nó.

Etapa 6: adicionar o segundo nó (Linux/Windows) em uma máquina que já tenha um nó (opcional)

Você pode adicionar outro nó a uma máquina existente que já tenha um nó. Por exemplo, se sua máquina estiver executando um nó Linux, você poderá adicionar um nó do Windows a ele:

New-AksEdgeScaleConfig -ScaleType AddNode -NodeType Windows -WindowsNodeIp "xxx" -outFile .\ScaleConfig.json | Out-Null

Você também pode especificar parâmetros como CpuCount e/ou MemoryInMB para sua VM do Windows.

Nota

Execute New-AksEdgeScaleConfig somente em máquinas que tenham o nó Linux com a função ControlPlane .

Você pode usar o arquivo de configuração gerado e executar o seguinte comando para adicionar o nó do Windows:

Add-AksEdgeNode -JsonConfigFilePath .\ScaleConfig.json

Você também pode especificar parâmetros como CpuCount e/ou MemoryInMB para sua VM do Windows aqui.

Próximos passos