Condividi tramite


Aumento del numero di istanze in più computer

Ora che il servizio Azure Kubernetes Edge Essentials è installato nel computer primario, questo articolo descrive come è possibile aumentare il numero di istanze del cluster in altri computer secondari per creare una distribuzione multi-computer.

Attenzione

Il ridimensionamento in nodi aggiuntivi è una funzionalità sperimentale.

Prerequisiti

  • Configurare il cluster Kubernetes scalabile.
  • Configurare i computer secondari come descritto nell'articolo Configurare il computer. Non è possibile combinare distribuzioni Kubernetes diverse nel cluster. Se il cluster nel computer primario esegue K8s, è necessario installare anche l'identità del servizio gestito K8s nei computer secondari.

Passaggio 1: ottenere la configurazione del cluster dal computer primario

Nel computer primario in cui è stata creata la distribuzione scalabile, eseguire i passaggi seguenti in una finestra di PowerShell con privilegi elevati per creare il file di configurazione appropriato in base ai requisiti.

  • Per eseguire il ridimensionamento aggiungendo un nodo di lavoro solo Linux, creare il file di configurazione necessario usando il comando seguente e specificare come NodeType "Linux" e specificare un indirizzo IP univoco e disponibile per questo nodo:

    New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Linux -LinuxNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
    
  • Per ridimensionare aggiungendo un altro nodo del piano di controllo Linux, specificare come NodeType "Linux", impostare il ControlPlane flag come true e specificare un indirizzo IP univoco per il nodo Linux:

    New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Linux -LinuxNodeIp x.x.x.x -ControlPlane -outFile .\ScaleConfig.json | Out-Null
    
  • Per ridimensionare la scalabilità aggiungendo un nodo di lavoro solo Windows, specificare come NodeType "Windows" e specificare un indirizzo IP univoco per il nodo Windows:

      New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Windows -WindowsNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
    
  • Per aggiungere un nodo di lavoro Linux e Windows, specificare come NodeType "LinuxAndWindows" e specificare un indirizzo IP univoco per i nodi Linux e Windows:

    New-AksEdgeScaleConfig -scaleType AddMachine -NodeType LinuxandWindows -LinuxNodeIp x.x.x.x -WindowsNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
    
  • Per aggiungere un nodo del piano di controllo Linux e un nodo del ruolo di lavoro Windows, specificare come NodeType "LinuxAndWindows", impostare il ControlPlane flag come truee specificare un indirizzo IP univoco per i nodi 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
    

Questi comandi esportano i dati necessari per aggiungere un cluster nel formato JSON, restituirli come stringa JSON e archiviarli nel file specificato tramite outFile il parametro .

Attenzione

Ogni volta che si esegue il New-AksEdgeScaleConfig comando, il creato ClusterJoinToken in precedenza diventa non valido, quindi non è possibile usare un file di ScaleConfig.json creato in precedenza. Inoltre, ClusterJoinToken è valido solo per 24 ore.

Passaggio 2: convalidare i parametri di configurazione

Il file di configurazione .\ScaleConfig.json include la configurazione dal computer primario. Esaminare e aggiornare le sezioni necessarie e fornire i dettagli relativi al computer a cui si sta eseguendo il ridimensionamento.

  • Verificare con NetworkConnection.AdapterName riferimento al computer secondario. Se è stato creato un commutatore esterno in Hyper-V nel computer secondario, è possibile scegliere di specificare i dettagli vswitch nel file ScaleConfig.json . Se non si crea un commutatore esterno nella console di gestione di Hyper-V e si esegue il New-AksEdgeDeployment comando, AKS Edge Essentials crea automaticamente un commutatore esterno denominato aksedgesw-ext e lo usa per la distribuzione.

    Nota

    In questa versione, c'è un problema noto nella creazione automatica di commutatori esterni con il New-AksEdgeDeployment comando se si usa una scheda Wi-fi per il commutatore. In questo caso, creare prima di tutto il commutatore esterno usando la console di gestione di Hyper-V - Virtual Switch Manager ed eseguire il mapping del commutatore alla scheda Wi-Fi. Specificare quindi i dettagli del commutatore nel codice JSON di configurazione, come descritto in questa sezione.

  • l'oggetto Network.NetworkPlugin è flannel per impostazione predefinita. Flannel è l'interfaccia CNI predefinita per un cluster K3S. Per un cluster K8S, modificare in NetworkPlugin calico.

  • Verificare la configurazione della risorsa per i nodi secondari. È possibile modificare questi parametri in base alle esigenze. Assicurarsi di riservare memoria sufficiente per ogni nodo. Se è stato specificato MacAddress nel computer primario, verificare e fornire l'indirizzo MAC appropriato per il computer secondario.

  • Un numero dispari di nodi del piano di controllo è l'unica impostazione supportata. Pertanto, se si vuole aumentare o ridurre il piano di controllo, assicurarsi di avere uno, tre o cinque nodi del piano di controllo.

Passaggio 3: Visualizzare un nodo nel computer secondario

A questo momento è possibile visualizzare i nodi nei computer secondari e aggiungerli al cluster.

Per distribuire il nodo corrispondente nel computer secondario, è ora possibile usare il file ScaleConfig.json creato nel passaggio precedente:

New-AksEdgeDeployment -JsonConfigFilePath .\ScaleConfig.json

Passaggio 4: Convalidare la configurazione del cluster

In qualsiasi nodo del cluster eseguire il cmdlet seguente:

kubectl get nodes -o wide

Dovrebbe essere possibile visualizzare tutti i nodi del cluster.

Screenshot che mostra più nodi.

Passaggio 5: aggiungere altri nodi

È possibile generare un nuovo file ScaleConfig basato sul nodeType richiesto ripetendo i passaggi da 1 a 4. Assicurarsi di fornire indirizzi IP disponibili nella rete ogni volta che si aggiunge un nodo.

Passaggio 6: aggiungere il secondo nodo (Linux/Windows) in un computer che dispone già di un nodo (facoltativo)

È possibile aggiungere un altro nodo a un computer esistente che dispone già di un nodo. Ad esempio, se il computer esegue un nodo Linux, è possibile aggiungervi un nodo Windows:

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

È anche possibile specificare parametri come CpuCount e/o MemoryInMB per la macchina virtuale Windows.

Nota

Eseguire New-AksEdgeScaleConfig solo nei computer con il nodo Linux con il ruolo ControlPlane .

È possibile usare il file di configurazione generato ed eseguire il comando seguente per aggiungere il nodo Windows:

Add-AksEdgeNode -JsonConfigFilePath .\ScaleConfig.json

È anche possibile specificare parametri come CpuCount e/o MemoryInMB per la macchina virtuale Windows qui.

Passaggi successivi