Condividi tramite


Implementare il servizio Azure Kubernetes in Azure Stack Edge

SI APPLICA A: Sì per SKU GPU ProAzure Stack Edge Pro - GPUSì per lo SKU Pro 2Azure Stack Edge Pro 2Sì per SKU R ProAzure Stack Edge Pro R

Nota

Utilizzare questa procedura solo se si è un cliente SAP o PMEC.

Questo articolo descrive come distribuire e gestire il servizio Azure Kubernetes nel dispositivo Azure Stack Edge. È anche possibile usare questo articolo per creare volumi persistenti, usare GitOps per gestire un cluster Kubernetes abilitato per Arc e rimuovere il servizio Azure Kubernetes e Azure Arc.

Il gruppo di destinatari previsto per questo articolo è costituito dagli amministratori IT che hanno familiarità con la configurazione e la distribuzione dei carichi di lavoro nel dispositivo Azure Stack Edge.

Servizio Azure Kubernetes in Azure Stack Edge

Azure Stack Edge è un dispositivo edge computing abilitato per l'intelligenza artificiale con funzionalità di I/O di rete con prestazioni elevate. Dopo aver configurato il calcolo nel dispositivo Azure Stack Edge, è possibile usare il portale di Azure per implementare il servizio Azure Kubernetes, incluse le macchine virtuali dell'infrastruttura. Il cluster del servizio Azure Kubernetes viene quindi usato per la distribuzione del carico di lavoro tramite Azure Arc.

Prerequisiti

Prima di iniziare, assicurarsi di:

  • Si ha un account Microsoft con credenziali per accedere al portale di Azure e accedere a un dispositivo Azure Stack Edge Pro GPU. Il dispositivo Azure Stack Edge viene configurato e attivato usando le istruzioni riportate in Configurare e attivare il dispositivo.

  • È stato creato e abilitato almeno un commutatore virtuale per il calcolo nel dispositivo Azure Stack Edge. Per i passaggi dettagliati, vedere Creare commutatori virtuali.

  • Si dispone di un client per accedere al dispositivo che esegue un sistema operativo supportato. Se si usa un client Windows, assicurarsi che sia in esecuzione PowerShell 5.0 o versione successiva.

  • Prima di abilitare Azure Arc nel cluster Kubernetes, assicurarsi di aver abilitato e registrato i provider di risorse Microsoft.Kubernetes e Microsoft.KubernetesConfiguration nella sottoscrizione. Per i passaggi dettagliati, vedere Registrare i provider di risorse tramite l'interfaccia della riga di comando di Azure.

  • Se si intende implementare il cluster Azure Arc per Kubernetes, è necessario creare un gruppo di risorse. È necessario disporre dell'accesso di livello proprietario al gruppo di risorse.

    Per verificare il livello di accesso per il gruppo di risorse, passare a Gruppo di risorse>Controllo di accesso (IAM)>Visualizzare accesso personale. In Assegnazioni di ruolo è necessario essere elencati come Proprietario.

    Screenshot che mostra le assegnazioni per l'utente selezionato nella pagina Controllo di accesso (IAM) nel portale di Azure.

A seconda dei carichi di lavoro che si intende distribuire, potrebbe essere necessario assicurarsi che vengano completati anche i passaggi facoltativi seguenti:

  • Se si intende implementare percorsi personalizzati nel cluster abilitato per Arc, è necessario registrare il provider di risorse Microsoft.ExtendedLocation nella sottoscrizione.

    È necessario recuperare l'ID oggetto del percorso personalizzato e usarlo per abilitare percorsi personalizzati tramite l'interfaccia di PowerShell del dispositivo.

    az login
    az ad sp show --id bc313c14-387c-4e7d-a58e-70417303ee3b --query id -o tsv
    

    Di seguito un output di esempio che usa l'interfaccia della riga di comando di Azure. È possibile eseguire gli stessi comandi tramite Cloud Shell nel portale di Azure.

    PS /home/user> az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
    51dfe1e8-70c6-4de5-a08e-e18aff23d815
    PS /home/user>
    

    Per altre informazioni, vedere Creare e gestire percorsi personalizzati in Kubernetes abilitato per Arc.

  • Se si distribuiscono carichi di lavoro Kubernetes o PMEC:

  • Se si usano macchine virtuali HPN come macchine virtuali dell'infrastruttura, le vCPU devono essere prenotate automaticamente. Eseguire il comando seguente per verificare la prenotazione:

    Get-HcsNumaLpMapping
    
  • Questa configurazione viene applicata quando si installa o si esegue l'aggiornamento ad Azure Stack Edge 2307. Esistono due scenari in cui la configurazione non verrà applicata durante l'aggiornamento:

    • Quando sono configurate più vCPU minroot rispetto alle quattro vCPU di Numa0 + tutte le vCPU da Numa1. Questo scenario si applica principalmente ai clienti del gateway Azure Stack Edge che configurano tutte le vCPU per minroot. Per Azure Stack Edge Pro 2, è presente un solo Numa. Per Azure Stack Edge Pro 2 con 40 core, sono configurate più vCPU minroot di 24 vCPU e per Azure Stack Edge Pro 2 con 48 vCPU sono configurate più di 28 vCPU.

    • Quando sono state distribuite macchine virtuali HPN e si usano più di 16 vCPU in un computer con 40 core o più di 20 vCPU in un computer con 48 core per macchine virtuali HPN.

    Di seguito è riportato l'output di esempio per la GPU Azure Stack Edge Pro:

    Hardware:
      { Numa Node #0 : CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] }
    
      { Numa Node #1 : CPUs [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39] }
    
    HpnCapableLpMapping:
      { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] }
    
      { Numa Node #1 : CPUs [24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39] }
    
    7MT0SZ2:
     HpnLpMapping:
      { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] }
    
      { Numa Node #1 : CPUs [] }
    
    HpnLpAvailable:
      { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] }
    
      { Numa Node #1 : CPUs [] }
    

Implementare il servizio Azure Kubernetes in Azure Stack Edge

Esistono più passaggi per implementare il servizio Azure Kubernetes in Azure Stack Edge. Alcuni passaggi sono facoltativi, come indicato di seguito.

Verificare che il servizio Azure Kubernetes sia abilitato

Per verificare che il servizio Azure Kubernetes sia abilitato, passare alla risorsa Azure Stack Edge nel portale di Azure. Nel riquadro Panoramica selezionare il riquadro Servizio Azure Kubernetes.

Screenshot che mostra il riquadro servizio Azure Kubernetes nel riquadro Panoramica del portale di Azure.

Impostare percorsi personalizzati (facoltativo)

  1. Connettersi all'interfaccia di PowerShell del dispositivo.

  2. Eseguire il comando seguente come opzione per impostare percorsi personalizzati. Immettere l'ID oggetto del percorso personalizzato recuperato durante il completamento dei prerequisiti.

    Set-HcsKubeClusterArcInfo –CustomLocationsObjectId <custom_location_object_id>
    

    Di seguito un output di esempio che usa l'interfaccia della riga di comando di Azure. È possibile eseguire gli stessi comandi tramite Cloud Shell nel portale di Azure.

    [1d9nhq2.microsoftdatabox.com]: PS> Set-HcsKubeClusterArcInfo –CustomLocationsObjectId 51dfe1e8-70c6-4de5-a08e-e18aff23d815
    [1d9nhq2.microsoftdatabox.com]: PS>
    

Specificare pool IP statici (facoltativo)

Passaggio facoltativo in cui è possibile assegnare pool IP per la rete virtuale usata dai pod Kubernetes.

Nota

I clienti SAP possono ignorare questo passaggio.

È possibile specificare un pool di indirizzi IP statici per ogni rete virtuale abilitata per Kubernetes. La rete virtuale abilitata per Kubernetes genera un oggetto NetworkAttachmentDefinition creato per il cluster Kubernetes.

Durante il provisioning delle applicazioni, i pod Kubernetes possono usare indirizzi IP statici nel pool IP per le interfacce di rete dei contenitori, ad esempio interfacce di virtualizzazione I/O radice singola del contenitore (SR-IOV). Questa operazione può essere eseguita puntando a NetworkAttachmentDefinition nel PodSpec.

Usare la procedura seguente per assegnare pool IP statici nell'interfaccia utente locale del dispositivo.

  1. Passare alla pagina Rete avanzata nel portale di Azure.

  2. Se in precedenza non sono state create reti virtuali, selezionare Aggiungi rete virtuale per creare una rete virtuale. È necessario specificare il commutatore virtuale associato alla rete virtuale, all'ID VLAN, alla subnet mask e al gateway.

  3. In un esempio illustrato di seguito sono state configurate tre reti virtuali. In ognuna di queste reti virtuali, VLAN è 0 e subnet mask e gateway corrispondono ai valori esterni, ad esempio 255.255.0.0 e 192.168.0.1.

    1. Prima rete virtuale: il nome è N2 ed è associata a vswitch-port5.

    2. Seconda rete virtuale: il nome è N3 ed è associata a vswitch-port5.

    3. Terza rete virtuale: il nome è N6 ed è associata a vswitch-port6.

    4. Dopo aver configurato tutte e tre le reti virtuali, vengono elencate nelle reti virtuali, come indicato di seguito:

      Screenshot che mostra la pagina Rete avanzata nel portale di Azure.

  4. Assegnare pool di indirizzi IP alle reti virtuali:

    1. Nella pagina Kubernetes selezionare una rete virtuale creata e abilitarla per Kubernetes.

    2. Specificare un intervallo contiguo di indirizzi IP statici per i pod Kubernetes nella rete virtuale. In questo esempio è stato fornito un intervallo di un indirizzo IP per ognuna delle tre reti virtuali create.

  5. Selezionare Applica per applicare le modifiche per tutte le reti virtuali.

    Nota

    Non è possibile modificare le impostazioni del pool IP dopo la distribuzione del cluster del servizio Azure Kubernetes.

    Screenshot che mostra la pagina Kubernetes con le reti virtuali nel portale di Azure.

Configurare il commutatore virtuale di calcolo

Usare questo passaggio per configurare il commutatore virtuale per il traffico di calcolo Kubernetes.

  1. Nell'interfaccia utente locale del dispositivo passare alla pagina Kubernetes.

  2. Selezionare Modifica per configurare un commutatore virtuale per il traffico di calcolo Kubernetes.

    Screenshot che mostra la pagina Kubernetes nel portale di Azure.

  3. Abilitare il calcolo su una porta con accesso a Internet. In questo caso, ad esempio, la porta 2 connessa a Internet è abilitata per il calcolo. L'accesso a Internet consente di recuperare le immagini del contenitore dal servizio Azure Kubernetes.

    L'IP virtuale dei servizi coerenti di Azure deve essere in grado di raggiungere questa rete del commutatore virtuale di calcolo tramite routing esterno o creando un indirizzo IP virtuale coerente con i servizi di Azure nella stessa rete.

  4. Per i nodi Kubernetes, specificare un intervallo contiguo di sei indirizzi IP statici nella stessa subnet della rete per questa porta.

    Nell'ambito della distribuzione del servizio Azure Kubernetes vengono creati due cluster, un cluster di gestione e un cluster di destinazione. Gli indirizzi IP specificati vengono usati come segue:

    • Il cluster di gestione richiede due indirizzi IP = 1 IP per l'interfaccia di rete del piano di controllo di gestione + 1 IP per il server API (indirizzo VIP).

    • Il cluster di destinazione necessita di indirizzi IP (2+n) = 1 IP per l'interfaccia di rete del piano di controllo del cluster di destinazione + 1 IP per il server API (indirizzo VIP) + numero di nodi, n.

    • Per gli aggiornamenti in sequenza viene usato un indirizzo IP aggiuntivo.

      Per un dispositivo a nodo singolo, quanto riportato sopra risulta in sei indirizzi IP per implementare un cluster Kubernetes. Per un cluster a due nodi sono necessari sette indirizzi IP.

  5. Per gli indirizzi IP del servizio esterno Kubernetes, fornire indirizzi IP statici per i servizi esposti all'esterno del cluster Kubernetes. Ogni servizio richiede un indirizzo IP.

    Screenshot che mostra le opzioni del commutatore virtuale di calcolo nella pagina Kubernetes nel portale di Azure.

Abilitare la gestione cloud delle macchine virtuali

Questo passaggio è necessario per consentire al portale di Azure Stack Edge di implementare le macchine virtuali dell'infrastruttura nel dispositivo Azure Stack Edge per il servizio Azure Kubernetes; ad esempio, per il nodo di lavoro del cluster di destinazione.

  1. Andare alla risorsa Azure Stack Edge nel portale di Azure.

  2. Passare a Panoramica e selezionare il riquadro Macchine virtuali.

    Screenshot che mostra il riquadro Macchine virtuali nella pagina di Panoramica di Azure Stack Edge del portale di Azure.

  3. Nella pagina Macchie virtuali>Panoramica selezionareAbilita per la Gestione cloud delle macchine virtuali.

    Screenshot che mostra la pagina di Panoramica di Azure Stack Edge con l'opzione abilita la gestione cloud delle macchine virtuali nel portale di Azure.

Configurare il cluster Kubernetes e abilitare Arc

Usare questo passaggio per configurare e distribuire il cluster Kubernetes e abilitarlo per la gestione tramite Arc.

Importante

Prima di creare il cluster Kubernetes, tenere presente che:

  • Non è possibile modificare le impostazioni del pool IP dopo la distribuzione del cluster del servizio Azure Kubernetes.
  • Nell'ambito dell'abilitazione di Arc del cluster di destinazione del servizio Azure Kubernetes, i percorsi personalizzati verranno abilitate se l'ID oggetto è stato passato usando il comando facoltativo nella sezione Impostare percorsi personalizzati (facoltativo) in questo articolo. Se non sono stati abilitati percorsi personalizzati, è comunque possibile scegliere di farlo prima della creazione del cluster Kubernetes. Dopo l'avvio della distribuzione del cluster, non sarà possibile impostare percorsi personalizzati.

Seguire questa procedura per distribuire il cluster del servizio Azure Kubernetes.

  1. Andare alla risorsa Azure Stack Edge nel portale di Azure.

  2. Selezionare il riquadro Servizio Azure Kubernetes.

  3. Selezionare Aggiungi per configurare il servizio Azure Kubernetes.

  4. Nella finestra di dialogo Crea servizio Kubernetes selezionare le dimensioni del nodo Kubernetes per la macchina virtuale dell'infrastruttura. Selezionare una dimensione del nodo della macchina virtuale appropriata per le dimensioni del carico di lavoro che si sta distribuendo. In questo esempio sono selezionate le dimensioni della macchina virtuale Standard_F16s_HPN - 16 vCPU, 32,77 GB di memoria.

    Per le distribuzioni SAP, selezionare dimensioni del nodo della macchina virtuale Standard_DS5_v2.

    Nota

    Se il menu a discesa dimensioni del nodo non viene popolato, attendere alcuni minuti in modo che venga sincronizzato dopo l'abilitazione delle macchine virtuali nel passaggio precedente.

  5. Controllare Gestire il contenitore dal cloud tramite Kubernetes con abilitazione di Arc. Questa opzione, se selezionata, abilita Arc quando viene creato il cluster Kubernetes.

  6. Se si seleziona Modificare, è necessario specificare un nome di sottoscrizione, un gruppo di risorse, un nome del cluster e un'area.

    Screenshot che mostra le opzioni Configura Arc abilitate per Kubernetes che fanno parte della creazione del servizio Kubernetes nel portale di Azure.

    1. Il nome della sottoscrizione deve essere popolato automaticamente.

    2. Specificare un nome univoco di gruppo di risorse. È anche possibile scegliere di usare lo stesso gruppo di risorse in cui è stata distribuita la risorsa Azure Stack Edge. È necessario disporre dell'accesso a livello di proprietario a questo gruppo di risorse. Per verificare il livello di accesso per il gruppo di risorse, passare a Gruppo di risorse>Controllo di accesso (IAM)>Visualizzare accesso personale. In Assegnazioni di ruolo è necessario essere elencati come Proprietario.

      Screenshot che mostra le assegnazioni personali nella pagina Controllo di accesso dell'interfaccia utente di Azure Stack Edge.

    3. Specificare un nome per il cluster Kubernetes abilitato per Arc o accettare l'impostazione predefinita.

    4. Selezionare un'area in cui verrà creata la risorsa per il cluster Kubernetes con abilitazione di Arc. Nell'elenco a discesa viene visualizzato un elenco filtrato di aree supportate.

    5. Seleziona Configura. È anche possibile ripristinare le impostazioni di Arc selezionando l'opzione Ripristina impostazioni predefinite .

  7. Selezionare Crea per creare il servizio Kubernetes.

    Screenshot che mostra la pagina Crea servizio Kubernetes dell'interfaccia utente di Azure Stack Edge.

  8. Si riceve una notifica all'avvio della creazione del cluster.

    1. Dopo aver creato il cluster Kubernetes, si noterà che il servizio Azure Kubernetes è In esecuzione.

      Screenshot che mostra il servizio Azure Kubernetes in esecuzione come previsto.

      Kubernetes abilitato per Arc verrà visualizzato anche come In esecuzione.

      Screenshot che mostra la pagina Panoramica del servizio Azure Kubernetes con lo stato del servizio Kubernetes.

      Se si prevede di distribuire carichi di lavoro Kubernetes, potrebbe essere necessario creare volumi persistenti per allocare l'archiviazione.

Aggiungere un volume persistente

PersistentVolume (PV) fa riferimento a una parte di spazio di archiviazione nel cluster Kubernetes. L'archiviazione Kubernetes può essere sottoposta a provisioning statico come PersistentVolume. Può anche essere sottoposta a provisioning dinamico come StorageClass. Per altre informazioni, vedere Requisiti di archiviazione per i pod Kubernetes.

Esistono due flussi di lavoro diversi per la creazione di volumi persistenti a seconda che il calcolo sia abilitato inline quando la condivisione viene creata, o meno. Ognuno di questi flussi di lavoro viene illustrato nelle sezioni seguenti.

Creare un volume persistente con calcolo abilitato inline durante la creazione della condivisione

Nel dispositivo Azure Stack Edge Pro, i provisioning statici PersistentVolumes vengono creati usando le funzionalità di archiviazione del dispositivo. Quando si effettua il provisioning di una condivisione e l'opzione Usa la condivisione con il calcolo Edge è abilitata, questa azione crea automaticamente una risorsa PV nel cluster Kubernetes.

Screenshot che mostra Il gateway di archiviazione nel cloud per aggiungere una condivisione con l'opzione Usa la condivisione con il calcolo Edge.

Per usare il cloud a livelli, è possibile creare una condivisione cloud Edge con l'opzione Usa la condivisione con il calcolo Edge abilitata. Un PV viene nuovamente creato automaticamente per questa condivisione. Se si abilita questa opzione, tutti i dati dell'applicazione scritti nella condivisione Edge vengono inseriti in livelli nel cloud.

Screenshot che mostra il gateway di archiviazione cloud per aggiungere una condivisione con l'opzione Usa la condivisione con la condivisione locale Edge abilitata.

Creare un volume persistente con calcolo non abilitato inline durante la creazione della condivisione

Per le condivisioni create con l'opzione Usa la condivisione con il calcolo Edge deselezionata, è possibile aggiungere un volume persistente seguendo questa procedura.

  1. Nel portale di Azure passare alla risorsa Azure Stack Edge per il dispositivo. Andare a Gateway di archiviazione nel cloud>Condivisioni. È possibile notare che il dispositivo ha attualmente condivisioni con lo stato Usato per il calcolo abilitato.

    Screenshot che mostra le condivisioni del gateway di archiviazione nel cloud con calcolo Edge abilitato.

  2. Selezionare + Aggiungi condivisione. Per questa condivisione, assicurarsi che l'opzione Usa la condivisione con il calcolo Edge sia deselezionata.

    Screenshot che mostra la finestra di dialogo Aggiungi condivisione per il volume persistente con calcolo non abilitato inline durante la creazione della condivisione.

  3. È possibile visualizzare la condivisione appena creata nell'elenco delle condivisioni e lo stato Usato per il calcolo è Disabilitato.

    Screenshot che mostra la condivisione appena creata nell'elenco di condivisioni e lo stato Usato per il calcolo è Disabilitato.

  4. Tornare a Risorsa Azure Stack Edge>Panoramica. Nel riquadro destro selezionare il riquadro Servizio Azure Kubernetes.

    Screenshot che mostra la pagina Panoramica delle risorse di Azure Stack Edge con il riquadro servizio Azure Kubernetes selezionato.

  5. Nella pagina Servizio Azure Kubernetes>Panoramica riquadro Volumi persistenti mostra i volumi persistenti esistenti. Questi volumi sono stati creati automaticamente quando le condivisioni sono state create con l'opzione Usa la condivisione con calcolo Edge abilitata. Per creare un nuovo volume persistente, selezionare + Aggiungi volume persistente.

  6. Nella finestra di dialogo Aggiungi volumi persistenti selezionare la condivisione per cui si vuole creare il volume persistente.

    Screenshot che mostra la finestra di dialogo Azure Stack Edge per l'aggiunta di volumi persistenti.

  7. Viene visualizzata una notifica che indica che il volume persistente è in corso di creazione. Il completamento dell'operazione richiede alcuni minuti.

    Screenshot che mostra una finestra di dialogo Notifiche che indica che l'operazione Aggiunta di volumi persistenti è stata completata correttamente.

  8. Dopo aver creato il volume persistente, la pagina Panoramica viene aggiornata per includere il nuovo volume persistente aggiunto.

    Screenshot che mostra la pagina Panoramica del servizio Azure Kubernetes con volumi persistenti.

  9. Selezionare Visualizza tutti i volumi persistenti per visualizzare il volume persistente appena creato.

Rimuovere il servizio Azure Kubernetes

Usare la procedura seguente nel portale di Azure per rimuovere il servizio Azure Kubernetes.

  1. Nella risorsa Azure Stack Edge passare Servizio Azure Kubernetes>Panoramica.

  2. Nella barra dei comandi superiore selezionare Rimuovi.

    Screenshot che mostra la pagina Panoramica del servizio Azure Kubernetes con l'opzione Rimuovi.

  3. Selezionare il componente aggiuntivo configurato da rimuovere insieme al servizio Azure Kubernetes. Kubernetes con abilitazione di Azure Arc è un componente aggiuntivo. Dopo aver selezionato Rimuovi, verranno rimosse tutte le configurazioni di Kubernetes e il componente aggiuntivo selezionato. L'operazione è irreversibile e non può essere annullata.

  4. Seleziona OK per confermare l'operazione.

    Screenshot che mostra la pagina Panoramica del servizio Azure Kubernetes con la conferma di rimozione.

Passaggi successivi