Einrichten des kubectl-Zugriffs
In dieser Anleitung wird erläutert, wie Sie die erforderlichen Kubeconfig-Dateien nach Bedarf für andere Verfahren abrufen. Die schreibgeschützte Datei reicht aus, um die Clusterkonfiguration anzuzeigen. Die Kernnamespacedatei wird für Vorgänge wie das Ändern der lokalen oder Microsoft Entra-Authentifizierung oder für das Erfassen von Paketen benötigt.
Schreibgeschützter Zugriff
Zum Ausführen von schreibgeschützten kubectl-Befehlen, z. B. zum Beschreiben von Pods und Anzeigen von Protokollen, können Sie eine kubeconfig-Datei aus der lokalen ASE-Benutzeroberfläche herunterladen. Wählen Sie unter Gerät die Option Konfiguration herunterladen aus.
Tipp
Informationen zum Zugreifen auf die lokale Benutzeroberfläche finden Sie im Tutorial: Herstellen einer Verbindung mit Azure Stack Edge Pro mit GPU.
Die heruntergeladene Datei heißt config.json. Diese Datei verfügt über Berechtigungen zum Beschreiben von Pods und zum Anzeigen von Protokollen, aber nicht über Zugriff auf Pods mit kubectl exec.
Zugriff auf Kernnamespace
Die Azure Private 5G Core-Bereitstellung verwendet den Kernnamespace. Für Vorgänge wie das Ändern der lokalen oder Microsoft Entra-Authentifizierung oder für das Erfassen von Paketen benötigen Sie eine Kubeconfig-Datei mit vollständigem Zugriff auf den Kernnamespace. Um diese Datei herunterzuladen, richten Sie eine Minishellsitzung ein, und führen Sie die erforderlichen Befehle aus, wie in diesem Abschnitt beschrieben.
Sie müssen diese Prozedur nur einmal ausführen. Wenn Sie diese Prozedur ausgeführt haben, bevor Sie die zuvor gespeicherte Kubeconfig-Datei verwenden können.
Eingeben einer Minishellsitzung
Während dieser Prozedur müssen Sie Minishellbefehle in Azure Stack Edge ausführen. Sie müssen einen Windows-Computer verwenden, der sich in einem Netzwerk befindet, mit Zugriff auf den Verwaltungsport des ASE. Sie sollten in der Lage sein, die lokale ASE-Benutzeroberfläche anzuzeigen, um zu überprüfen, ob Sie Zugriff haben.
Aktivieren von WinRM auf Ihrem Computer
Der folgende Prozess verwendet PowerShell und benötigt WinRM, um auf Ihrem Computer aktiviert zu sein. Führen Sie den folgenden Befehl aus einem PowerShell-Fenster im Administratormodus aus:
winrm quickconfig
WinRM ist möglicherweise bereits auf Ihrem Computer aktiviert, da Sie es nur einmal tun müssen. Stellen Sie sicher, dass Ihre Netzwerkverbindungen auf „Privat“ oder „Domäne“ (nicht „Öffentlich“) festgelegt sind, und akzeptieren Sie alle Änderungen.
Tipp
WinRM öffnet Ihren PC mit Remoteverbindungen, die für den Rest des Verfahrens erforderlich sind. Wenn Sie keine Remoteverbindungen zulassen möchten, führen Sie Stop-Service WinRM -PassThru
und dann Set-Service WinRM -StartupType Disabled -PassThru
aus einem PowerShell-Fenster im Administratormodus aus, nachdem Sie den Rest der Prozedur abgeschlossen haben, um den Zugriff auf den Kernnamespace zu erhalten.
Starten der Minishell-Sitzung
Geben Sie in einem PowerShell-Fenster im Administratormodus die ASE-Verwaltungs-IP-Adresse ein (einschließlich Anführungszeichen, z. B
"10.10.5.90"
):$ip = "<ASE_IP_address>" $sessopt = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck $minishellSession = New-PSSession -ComputerName $ip -ConfigurationName "Minishell" -Credential ~\EdgeUser -UseSSL -SessionOption $sessopt
Geben Sie an der Eingabeaufforderung Ihr Azure Stack Edge-Kennwort ein. Die folgende Meldung können Sie ignorieren:
WARNING: The Windows PowerShell interface of your device is intended to be used only for the initial network configuration. Please engage Microsoft Support if you need to access this interface to troubleshoot any potential issues you may be experiencing. Changes made through this interface without involving Microsoft Support could result in an unsupported configuration.
Sie haben nun eine Minishellsitzung eingerichtet, um die Kubeconfig-Datei im nächsten Schritt abzurufen.
Tipp
Wenn eine Netzwerkänderung vorhanden ist, kann die Sitzung abgebrochen werden. Führen Sie die Ausführung Get-PSSession
aus, um den Status der Sitzung anzuzeigen. Wenn sie noch verbunden ist, sollten Sie weiterhin Minishellbefehle ausführen können. Wenn sie unterbrochen oder getrennt ist, führen Sie die Ausführung Remove-PSSession
aus, um die Sitzung lokal zu entfernen, und starten Sie dann eine neue Sitzung.
Einrichten des kubectl-Zugriffs
Wenn Sie dieses Verfahren zum ersten Mal ausführen, müssen Sie die folgenden Schritte ausführen. Mit diesen Schritten wird der Namespace erstellt, die Kubeconfig-Datei heruntergeladen und verwendet, um Zugriff auf den Namespace zu gewähren.
Invoke-Command -Session $minishellSession -ScriptBlock {New-HcsKubernetesNamespace -Namespace "core"} Invoke-Command -Session $minishellSession -ScriptBlock {New-HcsKubernetesUser -UserName "core"} | Out-File -FilePath .\kubeconfig-core.yaml Invoke-Command -Session $minishellSession -ScriptBlock {Grant-HcsKubernetesNamespaceAccess -Namespace "core" -UserName "core"}
Wenn ein Fehler wie folgt
The Kubernetes namespace 'core' already exists
angezeigt wird, bedeutet dies, dass Sie diese Schritte zuvor ausgeführt haben. Überspringen Sie in diesem Fall direkt zum nächsten Aufzählungszeichen, um die zuvor generierte Datei abzurufen.Wenn Sie diese Prozedur bereits ausgeführt haben, können Sie die zuvor generierte Kubeconfig-Datei sofort abrufen, indem Sie Folgendes ausführen:
Invoke-Command -Session $miniShellSession -ScriptBlock { Get-HcsKubernetesUserConfig -UserName "core" }
Weitere Informationen finden Sie unter Konfigurieren des Clusterzugriffs über Kubernetes RBAC.
Nächste Schritte
- Speichern Sie die Kubeconfig-Datei, damit sie in Zukunft verwendet werden kann, wenn Sie sie benötigen.
- Wenn Sie die Kubeconfig-Datei als Teil des Abschließens einer anderen Prozedur benötigen (z. B. zum Einrichten der Microsoft Entra-Authentifizierung), kehren Sie zu dieser Prozedur zurück, und fahren Sie fort.