Zusätzliche Konfiguration und Skripts für AKS Edge Essentials
Dieser Artikel enthält alternative Möglichkeiten zum Herstellen einer Verbindung mit Azure Arc, die für Cluster gelten können, die über einen Proxy verbunden sind.
Verbinden eines AKS Edge Essentials-Clusters mit Arc mithilfe eines Proxys
Voraussetzungen
- Ein Azure-Abonnement mit der Rolle "Besitzer" oder einer Kombination aus Denwirkenden - und Benutzerzugriffsadministratorrollen . Sie können Ihre Zugriffsebene überprüfen, indem Sie zu Ihrem Abonnement navigieren, auf der linken Seite der Azure-Portal die Zugriffssteuerung (ACCESS Control, IAM) auswählen und dann "Meinen Zugriff anzeigen" auswählen. Weitere Informationen zum Verwalten von Ressourcengruppen finden Sie in der Azure Resource Manager-Dokumentation .
- Aktivieren Sie alle erforderlichen Ressourcenanbieter im Azure-Abonnement, z . B. Microsoft.HybridCompute, Microsoft.GuestConfiguration, Microsoft.HybridConnectivity, Microsoft.Kubernetes und Microsoft.KubernetesConfiguration.
- Erstellen und Überprüfen einer Ressourcengruppe für AKS Edge Essentials Azure-Ressourcen.
Hinweis
Sie müssen über die Rolle "Mitwirkender" verfügen, um die Ressourcen innerhalb der Ressourcengruppe löschen zu können. Befehle zum Trennen von Arc schlagen ohne diese Rollenzuweisung fehl.
Schritt 1: Konfigurieren Ihres Clusters für azure-Konnektivität
Laden Sie das GitHub-Repository von Azure/AKS-Edge herunter, falls Sie dies noch nicht zuvor getan haben. Navigieren Sie zur Registerkarte "Code ", und klicken Sie auf die Schaltfläche "Zip-Datei herunterladen", um das Repository als .zip Datei herunterzuladen. Extrahieren Sie die .zip Datei in einen lokalen Ordner.
Geben Sie Details Zu Ihrem Azure-Abonnement in der datei aide-userconfig.json unter dem
Azure
Abschnitt an, wie in der folgenden Tabelle beschrieben. Um mithilfe von Azure Arc-fähigen Kubernetes erfolgreich eine Verbindung mit Azure herzustellen, benötigen Sie einen Dienstprinzipal, der rollenbasierten Zugriff auf Ressourcen in Azure bietet. Wenn Sie bereits über die Dienstprinzipal-ID und das Kennwort verfügen, können Sie alle Felder in der datei aide-userconfig.json aktualisieren. Wenn Sie keinen Dienstprinzipal haben, können Sie einen Namen angeben, und das Skript im nächsten Schritt erstellt einen und füllt denAuth
Abschnitt für Sie auf.Attribut Werttyp Beschreibung Azure.ClusterName
string Geben Sie einen Namen für Ihren Cluster an. Standardmäßig hostname_cluster
ist der Name verwendet.Azure.Location
Zeichenfolge Der Standort Ihrer Ressourcengruppe. Wählen Sie den Standort aus, der Ihrer Bereitstellung am nächsten ist. Azure.SubscriptionName
Zeichenfolge Der Name Ihres Abonnements Azure.SubscriptionId
GUID Ihre Abonnement-ID. Wählen Sie im Azure-Portal das verwendete Abonnement aus, und kopieren/fügen Sie dann die Zeichenfolge der Abonnement-ID in den JSON-Code ein. Azure.TenantId
GUID Ihre Mandanten-ID. Suchen Sie im Azure-Portal nach "Azure Active Directory", das Sie zur Standardverzeichnisseite bringen sollte. Von hier aus können Sie die Mandanten-ID-Zeichenfolge in die JSON-Datei kopieren/einfügen. Azure.ResourceGroupName
Zeichenfolge Der Name der Azure-Ressourcengruppe zum Hosten Ihrer Azure-Ressourcen für AKS Edge Essentials. Sie können eine vorhandene Ressourcengruppe verwenden oder wenn Sie einen neuen Namen hinzufügen, erstellt das System eine für Sie. Azure.ServicePrincipalName
Zeichenfolge Azure-Dienstprinzipalname. Azure.Auth.ServicePrincipalId
GUID Die AppID des Azure-Dienstprinzipals, der als Anmeldeinformationen verwendet werden soll. AKS Edge Essentials verwendet diesen Dienstprinzipal, um Ihren Cluster mit Arc zu verbinden. Sie können einen vorhandenen Dienstprinzipal verwenden oder wenn Sie einen neuen Namen hinzufügen, erstellt das System im nächsten Schritt einen für Sie. Azure.Auth.Password
Zeichenfolge Das Kennwort (im Klartext) für den Azure-Dienstprinzipal, das als Anmeldeinformationen verwendet werden soll. AksEdgeConfigFile
Zeichenfolge Der Dateiname für die Konfiguration von AKS Edge Essentials ( aksedge-config.json
). DasAksEdgeAzureSetup.ps1
Skript aktualisiert denArc
Abschnitt dieser JSON-Datei mit den erforderlichen Informationen.Hinweis
Dieses Verfahren muss nur einmal pro Azure-Abonnement ausgeführt werden und muss nicht für jeden Kubernetes-Cluster wiederholt werden.
Führen Sie die datei "AksEdgePrompt.cmd " aus, oder doppelklicken Sie darauf, um ein PowerShell-Fenster mit erhöhten Rechten zu öffnen, wobei die erforderlichen Module geladen wurden. Eine Übersicht über die PC-Informationen und die installierten Softwareversionen wird angezeigt.
Führen Sie das Skript "AksEdgeAzureSetup.ps1 " im Ordner "tools\scripts\AksEdgeAzureSetup " aus. Dieses Skript fordert Sie auf, sich mit Ihren Anmeldeinformationen zum Einrichten Ihres Azure-Abonnements anzumelden:
# prompts for interactive login for service principal creation with Contributor role at resource group level ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup.ps1 .\aide-userconfig.json -spContributorRole # (or) alternative option # Prompts for interactive login for service principal creation with minimal privileges ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup.ps1 .\aide-userconfig.json
Stellen Sie sicher, dass die Anmeldeinformationen gültig sind, indem Sie das Skript "AksEdgeAzureSetup-Test.ps1 " verwenden. Dieses Skript meldet sich mit den neuen Anmeldeinformationen des Dienstprinzipals bei Azure an und überprüft den Status von Azure-Ressourcen:
# Test the credentials ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup-Test.ps1 .\aide-userconfig.json
Schritt 2: Verbinden Ihres Clusters mit Azure
Laden Sie die JSON-Konfiguration mithilfe der AksEdgeShell in die AksEdgeShell, und stellen Sie sicher, dass die Werte mit
Get-AideUserConfig
aktualisiertRead-AideUserConfig
werden. Alternativ können Sie AksEdgePrompt.cmd erneut öffnen, um die aktualisierte JSON-Konfiguration zu verwenden:Read-AideUserConfig Get-AideUserConfig
Wichtig
Jedes Mal, wenn Sie aide-userconfig.json ändern, zum
Read-AideUserConfig
erneuten Laden ausführen oder AksEdgePrompt.cmd schließen und erneut öffnen.Führen Sie
Initialize-AideArc
aus. Dadurch wird Azure CLI (sofern noch nicht installiert), sich mit den angegebenen Anmeldeinformationen bei Azure angemeldet und die Azure-Konfiguration (Ressourcenanbieter und Ressourcengruppenstatus) überprüft:Initialize-AideArc
Führen Sie die Ausführung
Connect-AideArc
aus, um den Hostcomputer mit dem Arc-fähigen Server zu installieren und zu verbinden und den vorhandenen Cluster mit Arc-fähigen Kubernetes zu verbinden:# Connect Arc-enabled server and Arc-enabled Kubernetes Connect-AideArc
Alternativ können Sie sie einzeln über
Connect-AideArcServer
Arc-fähige Server undConnect-AideArcKubernetes
für Arc-fähige Kubernetes verbinden:# Connect Arc-enabled server Connect-AideArcServer # Connect Arc-enabled Kubernetes Connect-AideArcKubernetes
Hinweis
Dieser Schritt kann bis zu 10 Minuten dauern, und PowerShell bleibt möglicherweise bei "Einrichten von Azure Connected Kubernetes für
your cluster name
" hängen. Der PowerShell-Befehl gibtTrue
aus und kehrt zur Eingabeaufforderung zurück, wenn der Prozess abgeschlossen ist. Ein Bearertoken wird in servicetoken.txt im Toolsordner gespeichert.
Schritt 3: Anzeigen Ihres Clusters in Azure
Wählen Sie im linken Bereich das Blatt Namespaces unter Kubernetes-Ressourcen (Vorschau) aus:
Um Ihre Kubernetes-Ressourcen anzuzeigen, benötigen Sie ein Bearertoken:
Führen Sie in Ihrem PowerShell-Fenster die vollständige Zeichenfolge aus
Get-AksEdgeManagedServiceToken
, und fügen Sie sie in die Azure-Portal ein:Jetzt können Sie Ressourcen in Ihrem Cluster anzeigen. Die folgende Abbildung zeigt das Blatt "Workloads " mit demselben Wie
kubectl get pods --all-namespaces
:
Trennen des AKS Edge Essentials-Clusters von Arc bei Verwendung eines Proxys
Führen Sie die Disconnect-AideArc
Ausführung aus, um die Verbindung mit dem Arc-fähigen Server und Arc-fähigen Kubernetes zu trennen:
# Disconnect Arc-enabled server and Arc-enabled Kubernetes
Disconnect-AideArc
Alternativ können Sie sie einzeln mithilfe Connect-AideArcServer
von Arc-fähigen Servern und Connect-AideArcKubernetes
für Arc-fähige Kubernetes trennen:
# Disconnect Arc-enabled server
Disconnect-AideArcServer
# Disconnect Arc-enabled Kubernetes
Disconnect-AideArcKubernetes
Verbinden des Hostcomputers mit Arc
Sie können den Hostcomputer mithilfe von
Connect-AideArcServer
Arc-fähigen Servern verbinden:# Connect Arc-enabled server Connect-AideArcServer
Um den Hostcomputer von Arc zu trennen, verwenden Sie dies
Disconnect-AideArcServer
für Arc-fähige Server:# Disconnect Arc-enabled server Disconnect-AideArcServer
Sie können den Arc for Server-Agent auch mit den hier beschriebenen Schritten deinstallieren. Löschen Sie für eine vollständige Bereinigung über die Azure-Portal den Dienstprinzipal und die Ressourcengruppe, die Sie für dieses Beispiel erstellt haben.