Share via


Preparare il cluster Kubernetes abilitato per Azure Arc

Importante

Anteprima delle operazioni di Azure IoT: abilitata da Azure Arc è attualmente disponibile in ANTEPRIMA. Non è consigliabile usare questo software di anteprima negli ambienti di produzione.

Vedere le condizioni per l'utilizzo supplementari per le anteprime di Microsoft Azure per termini legali aggiuntivi che si applicano a funzionalità di Azure in versione beta, in anteprima o in altro modo non ancora disponibili a livello generale.

Un cluster Kubernetes abilitato per Azure Arc è un prerequisito per la distribuzione di Azure IoT Operations Preview. Questo articolo descrive come preparare un cluster Kubernetes abilitato per Azure Arc prima di distribuire le estensioni di Anteprima di Azure IoT Operations in un cluster Kubernetes per eseguire carichi di lavoro personalizzati. Questo articolo include indicazioni per ambienti Ubuntu, Windows e cloud.

Suggerimento

Per distribuire le operazioni di Azure IoT ed eseguire un carico di lavoro di esempio, vedere Avvio rapido: Distribuire l'anteprima di Azure IoT Operations in un cluster Kubernetes abilitato per Arc.

Azure Iot Operations viene fornito come set di servizi Kubernetes abilitati per Azure Arc ed è destinato all'uso con i prodotti partner conformi a CNF conformi a ARC. Attualmente, Microsoft ha convalidato le operazioni IoT di Azure rispetto al set fisso di infrastrutture e ambienti seguente:

Ambiente Versione
Servizio Azure Kubernetes-edizione Enterprise in Windows 11 IoT Enterprise
su un singolo nodo AMD Ryzen-7 (8 core, 3,3 GHz), 16 GB di RAM
AksEdge-K3s-1.26.10-1.6.384.0
K3s in Ubuntu 22.04.2
su un singolo nodo AMD Ryzen-7 (8 core, 3,3 GHz), 16 GB di RAM
K3s versione 1.28.5

Importante

Gli ambienti elencati in precedenza sono ambienti simili alla produzione convalidati da Microsoft. Non sono gli unici ambienti in cui è possibile eseguire Le operazioni IoT di Azure. Le operazioni di Azure IoT possono essere eseguite in qualsiasi cluster Kubernetes abilitato per Arc che soddisfi i requisiti di sistema kubernetes abilitati per Azure Arc.

Prerequisiti

Per preparare il cluster Kubernetes abilitato per Azure Arc, è necessario:

  • Hardware che soddisfa i requisiti di sistema.
  • Una sottoscrizione di Azure. Se non si dispone di sottoscrizione di Azure, crearne una gratuitamente prima di iniziare.

  • Interfaccia della riga di comando di Azure versione 2.46.0 o successiva installata nel computer di sviluppo. Usare az --version per controllare la versione e az upgrade per aggiornare, se necessario. Per altre informazioni, vedere Come installare l'interfaccia della riga di comando di Azure.

  • Estensione Azure IoT Operations per l'interfaccia della riga di comando di Azure. Usare il comando seguente per aggiungere l'estensione o aggiornarla alla versione più recente:

    az extension add --upgrade --name azure-iot-ops
    
  • Hardware che soddisfa i requisiti di sistema:

    • Assicurarsi che il computer abbia almeno 10 GB di RAM, 4 vCPU e 40 GB di spazio libero su disco.
    • Esaminare i requisiti e la matrice di supporto di Azure Kubernetes Edge Essentials.
    • Esaminare le linee guida per la rete di Edge Essentials del servizio Azure Kubernetes.

Creare un cluster

Questa sezione illustra i passaggi per preparare e abilitare Arc cluster in ambienti convalidati in Linux e Windows, oltre a GitHub Codespaces nel cloud.

servizio Azure Kubernetes Edge Essentials è un'implementazione di Kubernetes locale di servizio Azure Kubernetes (AKS) che automatizza l'esecuzione di applicazioni in contenitori su larga scala. AKS Edge Essentials include una piattaforma Kubernetes supportata da Microsoft che include una distribuzione Kubernetes leggera con un footprint ridotto e un'esperienza di installazione semplice, semplificando la distribuzione di Kubernetes in hardware perimetrale di classe PC o "leggera".

Suggerimento

È possibile usare lo script AksEdgeQuickStartForAio.ps1 per automatizzare i passaggi descritti in questa sezione e connettere il cluster.

Aprire una finestra di PowerShell con privilegi elevati, passare alla directory in una cartella di lavoro, quindi eseguire i comandi seguenti:

$url = "https://raw.githubusercontent.com/Azure/AKS-Edge/main/tools/scripts/AksEdgeQuickStart/AksEdgeQuickStartForAio.ps1"
Invoke-WebRequest -Uri $url -OutFile .\AksEdgeQuickStartForAio.ps1
Unblock-File .\AksEdgeQuickStartForAio.ps1
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force
.\AksEdgeQuickStartForAio.ps1 -SubscriptionId "<SUBSCRIPTION_ID>" -TenantId "<TENANT_ID>" -ResourceGroupName "<RESOURCE_GROUP_NAME>"  -Location "<LOCATION>"  -ClusterName "<CLUSTER_NAME>"

Il computer potrebbe essere riavviato come parte di questo processo. In tal caso, eseguire di nuovo l'intero set di comandi.

Preparare il computer per Il servizio Azure Kubernetes Edge Essentials.

  1. Scaricare il programma di installazione per la versione convalidata di Azure Kubernetes Edge Essentials nel computer locale.

  2. Completare i passaggi descritti in Preparare il computer per Azure Kubernetes Edge Essentials. Assicurarsi di usare il programma di installazione convalidato scaricato nel passaggio precedente e non la versione più recente.

Configurare un cluster Azure Kubernetes Edge Essentials nel computer.

  1. Completare i passaggi descritti in Creare una singola distribuzione del computer, ma alla fine del passaggio 1: i parametri di configurazione del computer singolo modificano i valori seguenti nel file aksedge-config.json:

    `Init.ServiceIPRangeSize` = 10
    `LinuxNode.DataSizeInGB` = 30
    `LinuxNode.MemoryInMB` = 8192
    
  2. Installare l'archiviazione local-path nel cluster eseguendo il comando seguente:

    kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/storage/local-path-provisioner/local-path-storage.yaml
    

Eseguire i comandi seguenti per verificare che la distribuzione sia riuscita:

Import-Module AksEdge
Get-AksEdgeDeploymentInfo

Nell'output del Get-AksEdgeDeploymentInfo comando si noterà che lo stato arc del cluster è Connected.

Abilitare Arc per il cluster

Connessione il cluster ad Azure Arc in modo che possa essere gestito in remoto.

Per connettere il cluster ad Azure Arc, completare la procedura descritta in Connessione cluster Azure Kubernetes Edge Essentials ad Arc.

Verificare il cluster

Per verificare che il cluster sia pronto per la distribuzione di Operazioni IoT di Azure, è possibile usare il comando helper verify-host nell'estensione Operazioni IoT di Azure per l'interfaccia della riga di comando di Azure. Quando viene eseguito nell'host del cluster, questo comando helper controlla la connettività agli endpoint di Registro Azure Resource Manager e Registro Azure Container.

az iot ops verify-host

Per verificare che il cluster Kubernetes sia ora abilitato per Azure Arc, eseguire il comando seguente:

kubectl get deployments,pods -n azure-arc

L'output ha un aspetto simile all'esempio seguente:

NAME                                         READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/clusterconnect-agent         1/1     1            1           10m
deployment.apps/extension-manager            1/1     1            1           10m
deployment.apps/clusteridentityoperator      1/1     1            1           10m
deployment.apps/controller-manager           1/1     1            1           10m
deployment.apps/flux-logs-agent              1/1     1            1           10m
deployment.apps/cluster-metadata-operator    1/1     1            1           10m
deployment.apps/extension-events-collector   1/1     1            1           10m
deployment.apps/config-agent                 1/1     1            1           10m
deployment.apps/kube-aad-proxy               1/1     1            1           10m
deployment.apps/resource-sync-agent          1/1     1            1           10m
deployment.apps/metrics-agent                1/1     1            1           10m

NAME                                              READY   STATUS    RESTARTS        AGE
pod/clusterconnect-agent-5948cdfb4c-vzfst         3/3     Running   0               10m
pod/extension-manager-65b8f7f4cb-tp7pp            3/3     Running   0               10m
pod/clusteridentityoperator-6d64fdb886-p5m25      2/2     Running   0               10m
pod/controller-manager-567c9647db-qkprs           2/2     Running   0               10m
pod/flux-logs-agent-7bf6f4bf8c-mr5df              1/1     Running   0               10m
pod/cluster-metadata-operator-7cc4c554d4-nck9z    2/2     Running   0               10m
pod/extension-events-collector-58dfb78cb5-vxbzq   2/2     Running   0               10m
pod/config-agent-7579f558d9-5jnwq                 2/2     Running   0               10m
pod/kube-aad-proxy-56d9f754d8-9gthm               2/2     Running   0               10m
pod/resource-sync-agent-769bb66b79-z9n46          2/2     Running   0               10m
pod/metrics-agent-6588f97dc-455j8                 2/2     Running   0               10m

Creare i siti

Per gestire i cluster a cui gli utenti OT hanno accesso, è possibile raggruppare i cluster in siti. Per altre informazioni, vedere Che cos'è Azure Arc site manager (anteprima)?.

Passaggi successivi

Ora che si dispone di un cluster Kubernetes abilitato per Azure Arc, è possibile distribuire le operazioni di Azure IoT.