Sdílet prostřednictvím


Rychlý start: Konfigurace služby Azure IoT Layered Network Management Ve verzi Preview pro povolení clusteru v prostředí Azure

Důležité

Azure IoT Operations Preview – Služba Azure Arc je aktuálně ve verzi PREVIEW. Tento software ve verzi Preview byste neměli používat v produkčních prostředích.

Právní podmínky, které platí pro funkce Azure, které jsou ve verzi beta, verzi Preview nebo které zatím nejsou veřejně dostupné, najdete v Dodatečných podmínkách použití pro Microsoft Azure verze Preview.

V tomto rychlém startu nastavíte Azure IoT Layered Network Management Preview na úrovni 4 a 3 purdue sítě. Úroveň sítě 4 má přístup k internetu a úroveň 3 ne. Nakonfigurujete správu vrstvené sítě tak, aby směrovala síťový provoz z úrovně 3 do Azure. Nakonec můžete cluster K3S povolit Arc na úrovni 3, i když není přímo připojený k internetu.

  • Úroveň 4 clusteru AKS s nasazenou správou vrstvené sítě
  • Úroveň 3 je cluster K3S běžící na virtuálním počítači s Linuxem, který používá instanci vrstvené správy sítě na úrovni 4 k dosažení připojení k Azure. Síť úrovně 3 je nakonfigurovaná tak, aby měla odchozí přístup k síti úrovně 4 na portech 443 a 8084. Veškerý ostatní odchozí přístup je zakázaný.

Architektura správy vrstvených sítí vyžaduje konfiguraci DNS v síti na úrovni 3, kde jsou adresy URL na seznamu povolených adres repointovány na síť úrovně 4. V tomto příkladu se toto nastavení provádí pomocí automatizovaného nastavení založeného na CoreDNS, což je výchozí mechanismus překladu DNS, který se dodává s k3s.

Požadavky

Tyto požadavky jsou určené pouze pro nezávislé nasazení vrstvené správy sítě a clusteru podřízené úrovně s podporou arc.

  • Cluster AKS
  • Virtuální počítač s Ubuntu 22.04.3 LTS v Azure Linuxu
  • Jumpbox nebo instalační počítač, který má přístup k internetu a jak sítě úrovně 3, tak i 4.

Nasazení vrstvené správy sítě ve verzi Preview do clusteru AKS

Tento postup nasadí vrstvenou správu sítě do clusteru AKS. Cluster je horní vrstva modelu ISA-95. Na konci této části máte instanci vrstvené správy sítě, která je připravená přijímat provoz z clusteru s podporou Azure Arc níže a podporovat nasazení služby Azure IoT Operations Preview.

  1. Nakonfigurujte správu clusteru AKS z jumpboxu podle kroků v Připojení ke clusteru.kubectl

  2. Pomocí následujícího příkazu Azure CLI nainstalujte operátor správy vrstvené sítě:

    az login
    
    az k8s-extension create --resource-group <RESOURCE GROUP> --name kind-lnm-extension --cluster-type connectedClusters --cluster-name <CLUSTER NAME> --auto-upgrade false --extension-type Microsoft.IoTOperations.LayeredNetworkManagement --version 0.1.0-preview --release-train preview
    
  3. Pokud chcete ověřit, že instalace proběhla úspěšně, spusťte:

    kubectl get pods -n azure-iot-operations
    

    Měl by se zobrazit výstup, který vypadá jako v následujícím příkladu:

    NAME                                READY   STATUS        RESTARTS   AGE
    aio-lnm-operator-7db49dc9fd-kjf5x   1/1     Running       0          78s
    
  4. Vytvořte vlastní prostředek Správa vrstvené sítě vytvořením souboru s názvem level4.yaml s následujícím obsahem:

    apiVersion: layerednetworkmgmt.iotoperations.azure.com/v1beta1
    kind: Lnm
    metadata:
      name: level4
      namespace: azure-iot-operations
    spec:
      image:
        pullPolicy: IfNotPresent
        repository: mcr.microsoft.com/oss/envoyproxy/envoy-distroless
        tag: v1.27.0
      replicas: 1
      logLevel: "debug"
      openTelemetryMetricsCollectorAddr: "http://aio-otel-collector.azure-iot-operations.svc.cluster.local:4317"
      level: 4
      allowList:
        enableArcDomains: true
        domains:
        - destinationUrl: "*.ods.opinsights.azure.com"
          destinationType: external
        - destinationUrl: "*.oms.opinsights.azure.com"
          destinationType: external
        - destinationUrl: "*.monitoring.azure.com"
          destinationType: external
        - destinationUrl: "*.handler.control.monitor.azure.com"
          destinationType: external
        - destinationUrl: "quay.io"
          destinationType: external
        - destinationUrl: "*.quay.io"
          destinationType: external
        - destinationUrl: "docker.io"
          destinationType: external
        - destinationUrl: "*.docker.io"
          destinationType: external
        - destinationUrl: "*.docker.com"
          destinationType: external
        - destinationUrl: "gcr.io"
          destinationType: external
        - destinationUrl: "*.googleapis.com"
          destinationType: external
        - destinationUrl: "login.windows.net"
          destinationType: external
        - destinationUrl: "graph.windows.net"
          destinationType: external
        - destinationUrl: "msit-onelake.pbidedicated.windows.net"
          destinationType: external
        - destinationUrl: "*.vault.azure.net"
          destinationType: external
        - destinationUrl: "*.k8s.io"
          destinationType: external
        - destinationUrl: "*.pkg.dev"
          destinationType: external
        - destinationUrl: "github.com"
          destinationType: external
        - destinationUrl: "raw.githubusercontent.com"
          destinationType: external
        sourceIpRange:
        - addressPrefix: "0.0.0.0"
          prefixLen: 0
    
  5. Pokud chcete vytvořit instanci správy vrstvené sítě na základě souboru level4.yaml , spusťte:

    kubectl apply -f level4.yaml
    

    Tento krok vytvoří n pody, jednu službu a dvě konfigurační mapy. n je založen na počtu replik ve vlastním prostředku.

  6. Pokud chcete instanci ověřit, spusťte:

    kubectl get pods -n azure-iot-operations
    

    Výstup by měl vypadat takto:

    NAME                                    READY       STATUS    RESTARTS       AGE
    aio-lnm-operator-7db49dc9fd-kjf5x       1/1         Running       0          78s
    aio-lnm-level4-7598574bf-2lgss          1/1         Running       0          4s
    
  7. Pokud chcete zobrazit službu, spusťte:

    kubectl get services -n azure-iot-operations
    

    Výstup by měl vypadat jako v následujícím příkladu:

    NAME              TYPE           CLUSTER-IP     EXTERNAL-IP     PORT(S)                      AGE
    aio-lnm-level4    LoadBalancer   10.0.141.101   20.81.111.118   80:30960/TCP,443:31214/TCP   29s
    
  8. Pokud chcete zobrazit konfigurační mapy, spusťte:

    kubectl get cm -n azure-iot-operations
    

    Výstup by měl vypadat jako v následujícím příkladu:

    NAME                           DATA   AGE
    aio-lnm-level4-config          1      50s
    aio-lnm-level4-client-config   1      50s
    
  9. V tomto příkladu je instance vrstvené správy sítě připravena přijímat provoz na externí IP 20.81.111.118adrese .

Příprava clusteru úrovně 3

Na úrovni 3 vytvoříte cluster Kubernetes K3S na virtuálním počítači s Linuxem. Pro zjednodušení nastavení clusteru můžete vytvořit virtuální počítač Azure Linux Ubuntu 22.04.3 LTS s přístupem k internetu a povolit ssh z jumpboxu.

Tip

V realističtějším scénáři, který spustí instalaci v izolované síti, můžete počítač připravit pomocí předem připravené image pro vaše řešení nebo přístup instalace Air-Gap v K3S.

  1. Na virtuálním počítači s Linuxem nainstalujte a nakonfigurujte K3S pomocí následujících příkazů:

    curl -sfL https://get.k3s.io | sh -s - --disable=traefik --write-kubeconfig-mode 644
    
  2. Nakonfigurujte izolaci sítě pro úroveň 3. Pomocí následujících kroků nakonfigurujte cluster úrovně 3 tak, aby odesílal provoz pouze do vrstvené správy sítě na úrovni 4.

    • Přejděte do skupiny zabezpečení sítě síťového rozhraní virtuálního počítače.
    • Přidejte další odchozí pravidlo zabezpečení, které zakáže veškerý odchozí provoz z virtuálního počítače úrovně 3.
    • Přidejte další odchozí pravidlo s nejvyšší prioritou, které povolí odchozí provoz do clusteru AKS úrovně 4 na portech 443 a 8084.

    Screenshot of network security group outbound rules.

Zřízení clusteru v izolované vrstvě pro Arc

Pomocí následujících kroků povolíte cluster úrovně 3 pomocí instance vrstvené správy sítě na úrovni 4.

  1. Nastavte jumpbox tak, aby měl kubectl přístup ke clusteru.

    Vygenerujte konfigurační soubor na virtuálním počítači s Linuxem.

    k3s kubectl config view --raw > config.level3
    

    Na jumpboxu nastavte kubectl přístup ke clusteru úrovně 3 k3s zkopírováním config.level3 souboru do ~/.kube adresáře a jeho přejmenováním na config. Položka serveru v konfiguračním souboru by měla být nastavená na IP adresu nebo název domény virtuálního počítače úrovně 3.

  2. Informace o konfiguraci CoreDNS pro použití mechanismů rozšíření, které poskytuje CoreDNS (výchozí server DNS pro clustery K3S), přidejte adresy URL na seznam povolených, které se mají přeložit službou CoreDNS.

  3. Spuštěním následujících příkazů na jumpboxu připojte cluster ke službě Arc. Tento krok vyžaduje Azure CLI. V případě potřeby nainstalujte Az CLI.

    az login
    az account set --subscription <your Azure subscription ID>
    
    az connectedk8s connect -g <your resource group name> -n <your connected cluster name>
    

    Další informace o connectedk8s najdete v rychlém startu: Připojení existující cluster Kubernetes do služby Azure Arc.

  4. Měl by se zobrazit výstup podobný následujícímu příkladu:

    This operation might take a while...
    
    The required pre-checks for onboarding have succeeded.
    Azure resource provisioning has begun.
    Azure resource provisioning has finished.
    Starting to install Azure arc agents on the Kubernetes cluster.
    {
      "agentPublicKeyCertificate": "MIICCgKCAgEAmU+Pc55pc3sOE2Jo5JbAdk+2OprUziCbgfGRFfbMHO4dT7A7LDaDk7tWwvz5KwUt66eMrabI7M52H8xXvy1j7YwsMwR5TaSeHpgrUe1/4XNYKa6SN2NbpXIXA3w4aHgtKzENm907rYMgTO9gBJEZNJpqsfCdb3E7AHWQabUe9y9T8aub+arBHLQ3furGkv8JnN2LCPbvLnmeLfc1J5
      ....
      ....
    
  5. Cluster Kubernetes je teď povolený arc a je uvedený ve skupině prostředků, kterou jste zadali v příkazu az connectedk8s connect. Zřizování tohoto clusteru můžete také ověřit prostřednictvím webu Azure Portal. V tomto rychlém startu se můžete podívat na možnost vrstvené správy sítě, která umožňuje arc pro váš cluster Kubernetes. Teď můžete vyzkoušet integrované prostředí Arc v tomto clusteru v izolované síti.

Další kroky