Commissiona il cluster del servizio Azure Kubernetes

Le istanze di base del pacchetto nel servizio 5G Core privato di Azure vengono eseguite in un cluster di servizio Azure Kubernetes (AKS) abilitato per Arc in un dispositivo Azure Stack Edge (A edizione Standard). Questa guida pratica illustra come commissionare il cluster del servizio Azure Kubernetes in A edizione Standard in modo che sia pronto per distribuire un'istanza di core del pacchetto.

Importante

Questa procedura deve essere usata solo per Azure Private 5G Core. Il servizio Azure Kubernetes in A edizione Standard non è supportato per altri servizi.

Prerequisiti

  • Completare le attività preliminari per la distribuzione di una rete mobile privata.
  • Sarà necessaria l'autorizzazione Proprietario per il gruppo di risorse per la risorsa Azure Stack Edge.

    Nota

    Prendere nota del gruppo di risorse di Azure Stack Edge. Il cluster del servizio Azure Kubernetes e la posizione personalizzata, creati in questa procedura, devono appartenere a questo gruppo di risorse.

  • Esaminare il ridimensionamento delle macchine virtuali di Azure Stack Edge per assicurarsi che a edizione Standard sia disponibile spazio sufficiente per commissionare il cluster.

Configurare Kubernetes per MEC privato di Azure nel dispositivo Azure Stack Edge

Questi passaggi modificano il cluster Kubernetes nel dispositivo Azure Stack Edge per ottimizzarlo per i carichi di lavoro MEC privati di Azure.

  1. Nell'interfaccia utente locale selezionare Kubernetes nel menu a sinistra.
  2. In Scegliere l'opzione che descrive meglio lo scenario selezionare una soluzione MEC privata di Azure nell'ambiente in uso.
  3. Nella finestra popup di conferma del carico di lavoro selezionare Conferma di eseguire MEC privato di Azure nell'ambiente e fare clic su Applica per chiudere il popup.
  4. Fare clic su Applica per salvare le modifiche.

Screenshot of ASE Kubernetes configuration menu. The Azure Private MEC radio button is selected. The Workload confirmation popup is overlaid.

Dopo aver applicato queste modifiche, nell'interfaccia utente locale dovrebbe essere visualizzata un'opzione aggiornata. Kubernetes diventa Kubernetes (anteprima), come illustrato nell'immagine seguente.

Screenshot of configuration menu, with Kubernetes (Preview) highlighted.

Se si passa al portale di Azure e si passa alla risorsa Azure Stack Edge, verrà visualizzata un'opzione servizio Azure Kubernetes. Il servizio Azure Kubernetes verrà configurato in Avviare il cluster e configurare Arc.

Screenshot of Azure Stack Edge resource in the Azure portal. Azure Kubernetes Service (PREVIEW) is shown under Edge services in the left menu.

Configurare la rete avanzata

È ora necessario configurare commutatori virtuali e reti virtuali in tali commutatori. Per eseguire questa attività si userà la sezione Rete avanzata dell'interfaccia utente locale di Azure Stack Edge.

È possibile immettere tutte le impostazioni in questa pagina prima di selezionare Applica nella parte inferiore per applicarle tutte contemporaneamente.

  1. Configurare tre commutatori virtuali. Prima del passaggio successivo deve essere associato un commutatore virtuale a ogni porta. I commutatori virtuali potrebbero essere già presenti se sono state configurate altre funzioni di rete virtuale (VNFS). Selezionare Aggiungi commutatore virtuale e compilare il pannello laterale in modo appropriato per ogni opzione prima di selezionare Modifica per salvare la configurazione.

    • Creare un commutatore virtuale sulla porta in cui deve essere abilitato il calcolo (la porta di gestione). È consigliabile usare il formato vswitch-portX, dove X è il numero della porta. Ad esempio, creare vswitch-port2 sulla porta 2.
    • Creare un commutatore virtuale sulla porta 3 con il nome vswitch-port3.
    • Creare un commutatore virtuale sulla porta 4 con il nome vswitch-port4.

    A questo ora dovrebbe essere visualizzato un aspetto simile all'immagine seguente: Screenshot showing three virtual switches, where the names correspond to the network interface the switch is on.

  1. Configurare tre commutatori virtuali. Prima del passaggio successivo deve essere associato un commutatore virtuale a ogni porta. I commutatori virtuali potrebbero essere già presenti se sono state configurate altre funzioni di rete virtuale (VNFS). Selezionare Aggiungi commutatore virtuale e compilare il pannello laterale in modo appropriato per ogni opzione prima di selezionare Modifica per salvare la configurazione.

    • Creare un commutatore virtuale sulla porta in cui deve essere abilitato il calcolo (la porta di gestione). È consigliabile usare il formato vswitch-portX, dove X è il numero della porta. Ad esempio, creare vswitch-port3 sulla porta 3.
    • Creare un commutatore virtuale sulla porta 5 con il nome vswitch-port5.
    • Creare un commutatore virtuale sulla porta 6 con il nome vswitch-port6.

    A questo ora dovrebbe essere visualizzato un aspetto simile all'immagine seguente: Screenshot showing three virtual switches, where the names correspond to the network interface the switch is on.

  1. Creare reti virtuali che rappresentano le interfacce seguenti (per cui sono state allocate subnet e indirizzi IP in Allocare subnet e indirizzi IP):

    • Interfaccia di accesso del piano di controllo
    • Interfaccia di accesso del piano utente
    • Interfacce dati del piano utente

    È possibile denominare manualmente queste reti, ma il nome deve corrispondere a quello configurato nella portale di Azure durante la distribuzione di Azure Private 5G Core. Ad esempio, è possibile usare i nomi N2, N3 e fino a dieci N6-DNX (dove X è il numero DN 1-10 in una distribuzione DN multipla o solo N6 per una singola distribuzione DN). Facoltativamente, è possibile configurare ogni rete virtuale con un identificatore di rete dell'area locale virtuale (ID VLAN) per abilitare la separazione del traffico di livello 2. L'esempio seguente è relativo a una distribuzione multi-DN 5G senza VLAN.

  1. Eseguire la procedura seguente tre volte, più una volta per ognuna delle reti dati supplementari (dodici volte in totale se sono presenti al massimo dieci reti dati):

    Importante

    Se si usa la porta 3 per le reti dati, è consigliabile usarla per il carico previsto più basso.

    1. Selezionare Aggiungi rete virtuale e compilare il pannello laterale:
      • Commutatore virtuale: selezionare vswitch-port3 per N2, N3 e fino a quattro DN e selezionare vswitch-port4 per un massimo di sei DN.
      • Nome: N2, N3 o N6-DNX (dove X è il numero DN 1-10).
      • VLAN: ID VLAN o 0 se non si usano VLAN
      • Rete e gateway: usare la subnet e il gateway corretti per l'indirizzo IP configurato sulla porta A edizione Standard (anche se il gateway non è impostato sulla porta A edizione Standard stessa).
        • Ad esempio, 10.232.44.0/24 e 10.232.44.1
        • Se la subnet non dispone di un gateway predefinito, usare un altro indirizzo IP nella subnet che risponderà alle richieste ARP, ad esempio uno degli indirizzi IP RAN. Se sono presenti più gNB connessi tramite un commutatore, scegliere uno degli indirizzi IP per il gateway.
      • Il suffisso DNS e il server DNS devono essere lasciati vuoti.
    2. Selezionare Modifica per salvare la configurazione per questa rete virtuale.
    3. Selezionare Applica nella parte inferiore della pagina e attendere che la notifica (icona a forma di campana) conferissi che le impostazioni siano state applicate. L'applicazione delle impostazioni richiederà circa 8 minuti. La pagina dovrebbe ora essere simile all'immagine seguente:

Screenshot showing Advanced networking, with a table of virtual switch information and a table of virtual network information.

  1. Eseguire la procedura seguente tre volte, più una volta per ognuna delle reti dati supplementari (dodici volte in totale se sono presenti al massimo dieci reti dati):

    Importante

    Se si usa la porta 5 per le reti dati, è consigliabile usarla per il carico previsto più basso.

    1. Selezionare Aggiungi rete virtuale e compilare il pannello laterale:
      • Commutatore virtuale: selezionare vswitch-port5 per N2, N3 e fino a quattro DN e selezionare vswitch-port6 per un massimo di sei DN.
      • Nome: N2, N3 o N6-DNX (dove X è il numero DN 1-10).
      • VLAN: ID VLAN o 0 se non si usano VLAN
      • Rete e gateway: usare la subnet e il gateway corretti per l'indirizzo IP configurato sulla porta A edizione Standard (anche se il gateway non è impostato sulla porta A edizione Standard stessa).
        • Ad esempio, 10.232.44.0/24 e 10.232.44.1
        • Se la subnet non dispone di un gateway predefinito, usare un altro indirizzo IP nella subnet che risponderà alle richieste ARP, ad esempio uno degli indirizzi IP RAN. Se sono presenti più gNB connessi tramite un commutatore, scegliere uno degli indirizzi IP per il gateway.
      • Il suffisso DNS e il server DNS devono essere lasciati vuoti.
    2. Selezionare Modifica per salvare la configurazione per questa rete virtuale.
    3. Selezionare Applica nella parte inferiore della pagina e attendere che la notifica (icona a forma di campana) conferissi che le impostazioni siano state applicate. L'applicazione delle impostazioni richiederà circa 8 minuti. La pagina dovrebbe ora essere simile all'immagine seguente:

Screenshot showing Advanced networking, with a table of virtual switch information and a table of virtual network information.

Aggiungere indirizzi IP e di calcolo

Nell'interfaccia utente locale di Azure Stack Edge passare alla pagina Kubernetes (anteprima). Si configurerà tutta la configurazione e quindi la si applicherà una sola volta, come è stato fatto in Configurare la rete avanzata.

  1. In Commutatore virtuale di calcolo selezionare Modifica.
    1. Selezionare il vswitch con la finalità di calcolo (ad esempio, vswitch-port2)
    2. Immettere sei indirizzi IP in un intervallo per gli indirizzi IP del nodo nella rete di gestione.
    3. Immettere un indirizzo IP in un intervallo per l'indirizzo IP del servizio, anche nella rete di gestione. Verrà usato per accedere agli strumenti di monitoraggio locali per l'istanza di base del pacchetto.
    4. Selezionare Modifica nella parte inferiore del pannello per salvare la configurazione.
  2. In Rete virtuale selezionare una rete virtuale da N2, N3, N6-DNX (dove X è il numero DN 1-10). Nel pannello laterale:
    1. Abilitare la rete virtuale per Kubernetes e aggiungere un pool di indirizzi IP. Aggiungere un intervallo di un indirizzo IP per l'indirizzo appropriato (N2, N3 o N6-DNX come raccolto in precedenza). Ad esempio, 10.10.10.20-10.10.10.20.
    2. Ripetere la ripetizione per ognuna delle reti virtuali N2, N3 e N6-DNX.
    3. Selezionare Modifica nella parte inferiore del pannello per salvare la configurazione.
  3. Selezionare Applica nella parte inferiore della pagina e attendere l'applicazione delle impostazioni. L'applicazione delle impostazioni richiederà circa 5 minuti.

La pagina dovrebbe ora essere simile all'immagine seguente:

Screenshot showing Kubernetes (Preview) with two tables. The first table is called Compute virtual switch and the second is called Virtual network. A green tick shows that the virtual networks are enabled for Kubernetes.

Screenshot showing Kubernetes (Preview) with two tables. The first table is called Compute virtual switch and the second is called Virtual network. A green tick shows that the virtual networks are enabled for Kubernetes.

Abilitare la gestione delle macchine virtuali in A edizione Standard

  1. Accedere al portale di Azure e passare alla risorsa Azure Stack Edge creata nel portale di Azure.
  2. Selezionare Servizi perimetrali.
  3. Selezionare Macchine virtuali.
  4. Seleziona Abilita.

Avviare il cluster e configurare Arc

Se si eseguono altre macchine virtuali in Azure Stack Edge, è consigliabile arrestarle ora e riavviarle dopo la distribuzione del cluster. Il cluster richiede l'accesso a risorse CPU specifiche che eseguono macchine virtuali potrebbero già essere in uso.

  1. Accedere al portale di Azure e passare alla risorsa Azure Stack Edge creata nel portale di Azure.

  2. Per distribuire il cluster, selezionare l'opzione Kubernetes e quindi selezionare il pulsante Aggiungi per configurare il cluster.

    Screenshot of Kubernetes Overview pane, showing the Add button to configure Kubernetes service.

  3. Per Dimensioni nodo selezionare Standard_F16s_HPN.

  4. Verificare che la casella di controllo Kubernetes abilitata per Arc sia selezionata.

  5. Selezionare il collegamento Cambia e immettere l'ID oggetto dell'applicazione Microsoft Entra (OID) per la posizione personalizzata ottenuta da Recupera l'ID oggetto (OID).

    Screenshot of Configure Arc enabled Kubernetes pane, showing where to enter the custom location OID.

  6. Il servizio Kubernetes con abilitazione di Arc viene creato automaticamente nello stesso gruppo di risorse della risorsa Azure Stack Edge . Se il gruppo di risorse di Azure Stack Edge non si trova in un'area che supporta Azure Private 5G Core, è necessario modificare l'area.

  7. Fare clic su Configura per applicare la configurazione.

  8. Controllare i campi Region e Microsoft Entra application Object ID (OID) mostrano i valori appropriati e quindi fare clic su Crea.

  9. Eseguire le istruzioni per configurare il servizio.

La creazione del cluster Kubernetes richiede circa 20 minuti. Durante la creazione, potrebbe essere visualizzato un allarme critico nella risorsa Azure Stack Edge . Questo allarme è previsto e dovrebbe scomparire dopo alcuni minuti.

Dopo la distribuzione, il portale dovrebbe mostrare che il servizio Kubernetes è in esecuzione nella pagina di panoramica.

Configurare l'accesso kubectl

È necessario l'accesso kubectl per verificare che il cluster sia stato distribuito correttamente. Per l'accesso kubectl di sola lettura al cluster, è possibile scaricare un file kubeconfig dall'interfaccia utente locale A edizione Standard. In Dispositivo selezionare Scarica configurazione.

Screenshot of Kubernetes dashboard showing link to download config.

Il file scaricato è denominato config.json. Questo file dispone dell'autorizzazione per descrivere i pod e visualizzare i log, ma non per accedere ai pod con kubectl exec.

Configurare l'accesso al portale

Aprire la risorsa Azure Stack Edge nel portale di Azure. Passare al riquadro servizio Azure Kubernetes (illustrato in Avviare il cluster e configurare Arc) e selezionare il collegamento Gestisci per aprire il riquadro Arc.

Screenshot of part of the Azure Kubernetes Service (PREVIEW) Overview pane, showing the Manage link for Arc enabled Kubernetes.

Esplorare il cluster usando le opzioni nel menu risorse Kubernetes (anteprima):

Screenshot of Kubernetes resources (preview) menu, showing namespaces, workloads, services and ingresses, storage and configuration options.

Inizialmente verrà visualizzata una casella di richiesta di accesso. Il token da usare per l'accesso viene ottenuto dal file kubeconfig recuperato dall'interfaccia utente locale in Configurare l'accesso kubectl. È presente una stringa preceduta dal token: vicino alla fine del file kubeconfig . Copiare questa stringa nella casella nel portale (assicurandosi che non siano stati copiati caratteri di interruzione di riga) e selezionare Accedi.

Screenshot of sign-in screen for Kubernetes resource. There's a box to enter your service account bearer token and a sign-in button.

È ora possibile visualizzare informazioni su ciò che è in esecuzione nel cluster. Di seguito è riportato un esempio del riquadro Carichi di lavoro :

Screenshot of Workloads pane in Kubernetes resources (preview). The pods tab is active and shows details about what's running.

Verificare la configurazione del cluster

È necessario verificare che il cluster del servizio Azure Kubernetes sia configurato correttamente eseguendo i comandi kubectl seguenti usando kubeconfig scaricato dall'interfaccia utente in Configurare l'accesso kubectl:

kubectl get nodes

Questo comando deve restituire due nodi, uno denominato nodepool-aaa-bbb e uno denominato target-cluster-control-plane-ccc.

Per visualizzare tutti i pod in esecuzione, eseguire:

kubectl get pods -A

Inoltre, il cluster del servizio Azure Kubernetes dovrebbe essere visibile dalla risorsa di Azure Stack Edge nel portale.

Raccogliere variabili per le estensioni Kubernetes

Raccogliere ognuno dei valori nella tabella seguente.

valore Nome variabile
ID della sottoscrizione di Azure in cui vengono distribuite le risorse di Azure. SUBSCRIPTION_ID
Nome del gruppo di risorse in cui viene distribuito il cluster del servizio Azure Kubernetes. È possibile trovare questa opzione usando il pulsante Gestisci nel riquadro servizio Azure Kubernetes del portale di Azure. RESOURCE_GROUP_NAME
Nome della risorsa cluster del servizio Azure Kubernetes. È possibile trovare questa opzione usando il pulsante Gestisci nel riquadro servizio Azure Kubernetes del portale di Azure. RESOURCE_NAME
Area in cui vengono distribuite le risorse di Azure. Deve corrispondere all'area in cui verrà distribuita la rete mobile, che deve essere una delle aree supportate da AP5GC.

Questo valore deve essere il nome del codice dell'area.
LOCATION
Nome della risorsa percorso personalizzata da creare per il cluster del servizio Azure Kubernetes.

Questo valore deve iniziare e terminare con caratteri alfanumerici e deve contenere solo caratteri - alfanumerici o ..
CUSTOM_LOCATION

Installare le estensioni Kubernetes

La rete mobile privata di Azure 5G Core richiede una posizione personalizzata e estensioni Kubernetes specifiche che è necessario configurare usando l'interfaccia della riga di comando di Azure in Azure Cloud Shell.

  1. Accedere all'interfaccia della riga di comando di Azure usando Azure Cloud Shell e selezionare Bash dal menu a discesa.

  2. Impostare le variabili di ambiente seguenti usando i valori necessari per la distribuzione:

    SUBSCRIPTION_ID=<subscription ID>
    RESOURCE_GROUP_NAME=<resource group name>
    LOCATION=<deployment region, for example eastus>
    CUSTOM_LOCATION=<custom location for the AKS cluster>
    ARC_CLUSTER_RESOURCE_NAME=<resource name>
    TEMP_FILE=./tmpfile
    
  3. Preparare l'ambiente shell:

    az account set --subscription "$SUBSCRIPTION_ID"
    az extension add --upgrade --name k8s-extension
    az extension add --upgrade --name customlocation
    
  4. Creare l'estensione Kubernetes dell'operatore della funzione di rete:

    cat > $TEMP_FILE <<EOF
    {
      "helm.versions": "v3",
      "Microsoft.CustomLocation.ServiceAccount": "azurehybridnetwork-networkfunction-operator",
      "meta.helm.sh/release-name": "networkfunction-operator",
      "meta.helm.sh/release-namespace": "azurehybridnetwork",
      "app.kubernetes.io/managed-by": "helm",
      "helm.release-name": "networkfunction-operator",
      "helm.release-namespace": "azurehybridnetwork",
      "managed-by": "helm"
    }
    EOF 
    
    az k8s-extension create \
    --name networkfunction-operator \
    --cluster-name "$ARC_CLUSTER_RESOURCE_NAME" \
    --resource-group "$RESOURCE_GROUP_NAME" \
    --cluster-type connectedClusters \
    --extension-type "Microsoft.Azure.HybridNetwork" \
    --auto-upgrade-minor-version "true" \
    --scope cluster \
    --release-namespace azurehybridnetwork \
    --release-train preview \
    --config-settings-file $TEMP_FILE 
    
  5. Creare l'estensione Kubernetes di Packet Core Monitor:

    az k8s-extension create \
    --name packet-core-monitor \
    --cluster-name "$ARC_CLUSTER_RESOURCE_NAME" \
    --resource-group "$RESOURCE_GROUP_NAME" \
    --cluster-type connectedClusters \
    --extension-type "Microsoft.Azure.MobileNetwork.PacketCoreMonitor" \
    --release-train stable \
    --auto-upgrade true 
    
  6. Creare la posizione personalizzata:

    az customlocation create \
    -n "$CUSTOM_LOCATION" \
    -g "$RESOURCE_GROUP_NAME" \
    --location "$LOCATION" \
    --namespace azurehybridnetwork \
    --host-resource-id "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Kubernetes/connectedClusters/$ARC_CLUSTER_RESOURCE_NAME" \
    --cluster-extension-ids "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Kubernetes/connectedClusters/$ARC_CLUSTER_RESOURCE_NAME/providers/Microsoft.KubernetesConfiguration/extensions/networkfunction-operator"
    

La nuova posizione personalizzata verrà visualizzata come risorsa nel portale di Azure all'interno del gruppo di risorse specificato. L'uso del kubectl get pods -A comando (con accesso al file kubeconfig ) dovrebbe anche mostrare nuovi pod corrispondenti alle estensioni installate. Deve essere presente un pod nello spazio dei nomi azurehybridnetwork e uno nello spazio dei nomi packet-core-monitor .

Rollback

Se si è verificato un errore nella configurazione di Azure Stack Edge, è possibile usare il portale per rimuovere il cluster del servizio Azure Kubernetes . Vedere Distribuire il servizio Azure Kubernetes in Azure Stack Edge. È quindi possibile modificare le impostazioni tramite l'interfaccia utente locale.

In alternativa, è possibile eseguire una reimpostazione completa usando il pannello Reimpostazione del dispositivo nell'interfaccia utente locale (vedere Reimpostazione e riattivazione del dispositivo Azure Stack Edge) e quindi riavviare questa procedura. In questo caso, è anche necessario eliminare le risorse associate lasciate nel portale di Azure dopo aver completato la reimpostazione di Azure Stack Edge. Questo includerà alcuni o tutti gli elementi seguenti, a seconda della distanza del processo:

  • Risorsa Azure Stack Edge
  • KeyVault generato automaticamente associato alla risorsa Azure Stack Edge
  • Archiviazione Account generato automaticamente associato alla risorsa Azure Stack Edge
  • Cluster Azure Kubernetes (se creato correttamente)
  • Percorso personalizzato (se creato correttamente)

Modifica della configurazione A edizione Standard dopo la distribuzione

Potrebbe essere necessario aggiornare la configurazione A edizione Standard dopo aver distribuito il core del pacchetto, ad esempio per aggiungere o rimuovere una rete dati collegata o per modificare un indirizzo IP. Per modificare la configurazione di A edizione Standard, eliminare definitivamente la posizione personalizzata e le risorse servizio Azure Kubernetes, apportare le modifiche alla configurazione A edizione Standard e quindi ricrearle. In questo modo è possibile disconnettere temporaneamente il core del pacchetto anziché eliminarlo e ricrearlo, riducendo al minimo la riconfigurazione necessaria. Potrebbe anche essere necessario apportare modifiche equivalenti alla configurazione del core del pacchetto.

Attenzione

Il core del pacchetto non sarà disponibile durante questa procedura. Se si apportano modifiche a un'istanza di core di pacchetti integri, è consigliabile eseguire questa procedura durante una finestra di manutenzione per ridurre al minimo l'impatto sul servizio.

  1. Passare alla panoramica del gruppo di risorse nella portale di Azure (per il gruppo di risorse contenente il core del pacchetto). Selezionare la risorsa Packet Core Control Plane e selezionare Modify packet core (Modifica core pacchetto). Impostare Posizione personalizzata di Azure Arc su Nessuno e selezionareModifica.
  2. Passare al gruppo di risorse contenente la risorsa Percorso personalizzato. Selezionare la casella di graduazione per la risorsa percorso personalizzato e selezionare Elimina. Conferma l'eliminazione.
  3. Passare alla risorsa Azure Stack Edge e rimuovere tutte le configurazioni per il servizio Azure Kubernetes.
  4. Accedere all'interfaccia utente locale di A edizione Standard e aggiornare la configurazione in base alle esigenze.
  5. Ricreare il cluster Kubernetes. Vedere Avviare il cluster e configurare Arc.
  6. Ricreare la risorsa percorso personalizzata. Selezionare la risorsa Packet Core Control Plane e selezionare Configura una posizione personalizzata.

Il core del pacchetto dovrebbe ora essere in servizio con la configurazione A edizione Standard aggiornata. Per aggiornare la configurazione di base del pacchetto, vedere Modificare un'istanza di base del pacchetto.

Passaggi successivi

Il dispositivo Azure Stack Edge è ora pronto per Azure Private 5G Core. Il passaggio successivo consiste nel raccogliere le informazioni necessarie per distribuire la rete privata.