Vereinfachen der Netzwerkkonfigurationsanforderungen mit Azure Arc Gateway (Vorschau)
Wenn Sie Enterprise-Proxys verwenden, um ausgehenden Datenverkehr zu verwalten, kann das Azure Arc-Gateway (Vorschau) den Prozess der Aktivierung der Konnektivität vereinfachen.
Mit dem Azure Arc-Gateway (Vorschau) können Sie:
- Eine Verbindung mit Azure Arc herstellen, indem Sie nur sieben (7) vollqualifizierte Domänennamen (FQDNs) öffnen.
- Anzeigen und Überwachen des gesamten Datenverkehrs, den die Arc-Agents über das Arc-Gateway an Azure senden.
Wichtig
Das Azure Arc-Gateway befindet sich derzeit in der Vorschau.
Die zusätzlichen Nutzungsbestimmungen für Microsoft Azure-Vorschauen enthalten rechtliche Bedingungen. Sie gelten für diejenigen Azure-Features, die sich in der Beta- oder Vorschauversion befinden oder aber anderweitig noch nicht zur allgemeinen Verfügbarkeit freigegeben sind.
Funktionsweise des Azure Arc-Gateways
Das Arc-Gateway funktioniert durch die Einführung von zwei neuen Komponenten
Die Arc-Gatewayressource ist eine Azure-Ressource, die als allgemeines Front-End für Azure-Datenverkehr dient. Die Gatewayressource wird in einer bestimmten Domäne/URL bereitgestellt. Sie müssen diese Ressource erstellen, indem Sie die in diesem Artikel beschriebenen Schritte ausführen. Nachdem Sie die Gatewayressource erfolgreich erstellt haben, ist diese Domäne/URL in der Erfolgsantwort enthalten.
Der Arc-Proxy ist eine neue Komponente, die als eigener Pod (namens „Azure Arc Proxy“) ausgeführt wird. Diese Komponente fungiert als Weiterleitungsproxy, der von Azure Arc-Agents und -Erweiterungen verwendet wird. Für den Azure Arc-Proxy ist keine Konfiguration erforderlich. Ab Version 1.21.10 der Arc-fähigen Kubernetes-Agents ist dieser Pod nun Teil der Kern-Arc-Agents und wird im Kontext eines Arc-fähigen Kubernetes-Clusters ausgeführt.
Wenn das Gateway vorhanden ist, fließt der Datenverkehr über die folgenden Hops: Arc-Agents → Azure Arc-Proxy → Enterprise Proxy → Arc-Gateway → Zieldienst.
Aktuelle Einschränkungen
Während der öffentlichen Vorschau gelten die folgenden Einschränkungen. Berücksichtigen Sie diese Faktoren bei der Planung Ihrer Konfiguration.
- TLS-Beendigungsproxys werden von dem Arc-Gateway nicht unterstützt.
- Sie können ExpressRoute/Site-to-Site-VPN oder private Endpunkte nicht zusätzlich zum Arc-Gateway verwenden.
- Pro Azure-Abonnement gibt es ein Limit von fünf Arc-Gatewayressourcen.
Sie können eine Arc-Gatewayressource mithilfe von Azure CLI oder Azure PowerShell erstellen.
Wenn Sie die Arc-Gatewayressource erstellen, geben Sie das Abonnement und die Ressourcengruppe an, in der die Ressource erstellt wird, zusammen mit einer Azure-Region. Alle Arc-fähigen Ressourcen im selben Mandanten können jedoch unabhängig von ihrem eigenen Abonnement oder ihrer Region die Ressource verwenden.
Um Arc-Gatewayressourcen zu erstellen und ihre Zuordnung mit Arc-fähigen Kubernetes-Clustern zu verwalten, sind die folgenden Berechtigungen erforderlich:
Microsoft.Kubernetes/connectedClusters/settings/default/write
Microsoft.hybridcompute/gateways/read
Microsoft.hybridcompute/gateways/write
Erstellen Sie die Arc-Gatewayressource
Führen Sie auf einem Computer mit Zugriff auf Azure den folgenden Azure CLI-Befehl aus:
az extension add -n arcgateway
Führen Sie als Nächstes den folgenden Azure CLI-Befehl aus, um Ihre Arc-Gatewayressource zu erstellen, und ersetzen Sie die Platzhalter durch ihre gewünschten Werte:
az arcgateway create --name <gateway's name> --resource-group <resource group> --location <region> --gateway-type public --allowed-features * --subscription <subscription name or id>
Das Erstellen der Arc-Gatewayressource dauert in der Regel etwa zehn Minuten.
Bestätigen des Zugriffs auf erforderliche URLs
Nachdem die Ressource erfolgreich erstellt wurde, enthält die Erfolgsantwort die Arc-Gateway-URL. Stellen Sie sicher, dass Ihre Arc-Gateway-URL und alle der folgenden URLs in der Umgebung zulässig sind, in der sich Ihre Arc-Ressourcen befinden.
URL | Zweck |
---|---|
[Your URL prefix].gw.arc.azure.com |
Ihre Gateway-URL. Diese URL kann durch Ausführen von az arcgateway list nach dem Erstellen der Ressource abgerufen werden. |
management.azure.com |
Azure Resource Manager Endpoint für ARM-Steuerkanal erforderlich. |
<region>.obo.arc.azure.com |
Erforderlich, wenn Cluster-Verknüpfung konfiguriert ist. |
login.microsoftonline.com , <region>.login.microsoft.com |
Endpunkt von Microsoft Entra ID, der zum Abrufen von Identitätszugriffstoken verwendet wird. |
gbl.his.arc.azure.com , <region>.his.arc.azure.com |
Der Clouddienstendpunkt für die Kommunikation mit Arc-Agents. Verwendet Kurznamen, z. B. eus für USA, Osten. |
mcr.microsoft.com , *.data.mcr.microsoft.com |
Erforderlich zum Pullen von Containerimages für Azure Arc-Agents. |
Onboarding von Kubernetes-Clustern in Azure Arc mit Ihrer Arc-Gatewayressource
Stellen Sie sicher, dass Ihre Umgebung alle erforderlichen Voraussetzungen für Azure Arc-fähige Kubernetes erfüllt. Da Sie das Azure Arc-Gateway verwenden, müssen Sie nicht die vollständigen Netzwerkanforderungen erfüllen.
Legen Sie auf dem Bereitstellungscomputer die für Azure CLI erforderlichen Umgebungsvariablen fest, um den ausgehenden Proxyserver zu verwenden:
export HTTP_PROXY=<proxy-server-ip-address>:<port>
export HTTPS_PROXY=<proxy-server-ip-address>:<port>
export NO_PROXY=<cluster-apiserver-ip-address>:<port>
Führen Sie im Kubernetes-Cluster den Befehl „connect“ mit den angegebenen Parametern
proxy-https
undproxy-http
aus. Wenn Ihr Proxyserver sowohl mit HTTP als auch mit HTTPS eingerichtet ist, müssen Sie--proxy-http
für den HTTP-Proxy und--proxy-https
für den HTTPS-Proxy verwenden. Wenn Ihr Proxyserver nur HTTP verwendet, können Sie diesen Wert für beide Parameter verwenden.az connectedk8s connect -g <resource_group> -n <cluster_name> --gateway-resource-id <gateway_resource_id> --proxy-https <proxy_value> --proxy-http http://<proxy-server-ip-address>:<port> --proxy-skip-range <excludedIP>,<excludedCIDR> --location <region>
Hinweis
Einige Netzwerkanforderungen, z. B. diejenigen, welche die Kommunikation zwischen Diensten im Cluster betreffen, müssen von dem Datenverkehr getrennt werden, der für die ausgehende Kommunikation über den Proxyserver weitergeleitet wird. Der
--proxy-skip-range
-Parameter kann verwendet werden, um den CIDR-Bereich und die Endpunkte durch Kommas getrennt anzugeben, sodass die Kommunikation zwischen den Agents und diesen Endpunkten nicht über den ausgehenden Proxy erfolgt. Mindestens der CIDR-Bereich der Dienste im Cluster sollte als Wert für diesen Parameter angegeben werden. Wenn z. B.kubectl get svc -A
eine Liste von Diensten zurückgibt, bei denen alle DiensteClusterIP
-Werte im Bereich10.0.0.0/16
aufweisen, wird der für--proxy-skip-range
anzugebende Wert10.0.0.0/16,kubernetes.default.svc,.svc.cluster.local,.svc
.--proxy-http
,--proxy-https
und--proxy-skip-range
werden für die meisten ausgehenden Proxyumgebungen erwartet.--proxy-cert
ist nur erforderlich, wenn Sie vertrauenswürdige Zertifikate, die vom Proxy erwartet werden, in den vertrauenswürdigen Zertifikatspeicher der Agent-Pods einfügen müssen.Der Proxy für ausgehenden Datenverkehr muss so konfiguriert werden, dass websocket-Verbindungen zulässig sind.
Konfigurieren vorhandener Cluster für die Verwendung des Arc-Gateways
Führen Sie den folgenden Befehl aus, um vorhandene Cluster so zu aktualisieren, dass sie das Arc-Gateway verwenden:
az connectedk8s update -g <resource_group> -n <cluster_name> --gateway-resource-id <gateway_resource_id>
Um zu überprüfen, ob das Update erfolgreich war, führen Sie den folgenden Befehl aus, und bestätigen Sie, dass die Antwort true
lautet:
az connectedk8s show -g <resource_group> -n <cluster_name> --query 'gateway.enabled'
Nachdem Ihre Cluster für die Verwendung des Arc-Gateways aktualisiert wurden, sind einige der Arc-Endpunkte, die zuvor in Ihrem Unternehmensproxy oder in Ihren Firewalls zulässig waren, nicht mehr erforderlich und können entfernt werden. Es wird empfohlen, mindestens eine Stunde zu warten, bevor Sie Endpunkte entfernen, die nicht mehr benötigt werden. Achten Sie darauf, keine der Endpunkte zu entfernen, die für das Arc-Gateway erforderlich sind.
Entfernen des Arc-Gateways
Führen Sie den folgenden Befehl aus, um das Arc-Gateway zu deaktivieren und die Zuordnung zwischen der Arc-Gatewayressource und dem Arc-fähigen Cluster zu entfernen:
az connectedk8s update -g <resource_group> -n <cluster_name> --disable-gateway
Datenverkehr überwachen
Um den Datenverkehr Ihres Gateways zu überwachen, zeigen Sie die Protokolle des Gatewayrouters an:
- Ausführen von
kubectl get pods -n azure-arc
- Identifizieren Sie den Arc Proxy-Pod (der Name beginnt mit
arc-proxy-
). - Ausführen von
kubectl logs -n azure-arc <Arc Proxy pod name>
Zusätzliche Szenarien
Während der öffentlichen Vorschau deckt Arc-Gateway Endpunkte ab, die für das Onboarding eines Clusters erforderlich sind, und einen Teil der Endpunkte, die für zusätzliche Arc-fähige Szenarien erforderlich sind. Basierend auf den Szenarien, die Sie übernehmen, müssen weitere Endpunkte weiterhin in Ihrem Proxy zulässig sein.
Alle für die folgenden Szenarien aufgeführten Endpunkte müssen in Ihrem Unternehmensproxy zulässig sein, wenn das Arc-Gateway verwendet wird:
- Container Insights in Azure Monitor:
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
*.monitoring.azure.com
- Azure Key Vault:
<vault-name>.vault.azure.net
- Azure Policy:
data.policy.core.windows.net
store.policy.core.windows.net
- Microsoft Defender for Containers:
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
- Datendienste mit Azure Arc-Unterstützung
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
*.monitoring.azure.com