Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: ✔️ AKS Automatic ✔️ AKS Standard
Verwaltete Namespaces in Azure Kubernetes Service (AKS) bieten eine Möglichkeit, Workloads und Teams innerhalb eines Clusters logisch zu isolieren. Diese Funktion ermöglicht es Admins, Ressourcenquoten durchzusetzen, Netzwerkrichtlinien anzuwenden und die Zugriffskontrolle auf Namespaceebene zu verwalten. Eine detaillierte Übersicht über verwaltete Namespaces finden Sie in der Übersicht über verwaltete Namespaces.
Bevor Sie anfangen
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Falls Sie über keins verfügen, können Sie ein kostenloses Konto erstellen.
- Ein in Ihrer Azure-Umgebung mit azure-rollenbasierter Zugriffssteuerung für die Kubernetes-Autorisierung eingerichteter AKS-Cluster ist erforderlich, wenn Sie Azure RBAC-Rollen verwenden möchten.
- Um das Netzwerkrichtlinienfeature zu verwenden, muss der AKS-Cluster mit einem Netzwerkrichtlinienmodul konfiguriert werden. Cilium ist unser empfohlener Engine.
| Voraussetzung | Hinweise |
|---|---|
| Azure CLI |
2.80.0 oder höher installiert. Führen Sie az --version aus, um die CLI-Version zu finden. Wenn Sie eine Installation oder ein Upgrade durchführen müssen, finden Sie weitere Informationen unter Azure CLI installieren. |
| AKS API-Version |
2025-09-01 oder höher. |
| Erforderliche Berechtigungen |
Integrierte Rolle Microsoft.ContainerService/managedClusters/managedNamespaces/* oder Azure Kubernetes Service Namespace Contributor
Microsoft.Resources/deployments/* in der Ressourcengruppe, die das Cluster enthält Weitere Informationen finden Sie unter Integrierte Rollen im verwalteten Namespace. |
Einschränkungen
- Der Versuch, Systemnamespaces wie
kube-system,app-routing-system,istio-system,gatekeeper-systemusw. als verwaltete Namespaces zu verwenden, ist nicht zulässig. - Wenn es sich um einen verwalteten Namespace handelt, werden Änderungen am Namespace über die Kubernetes-API blockiert.
- Die Auflistung vorhandener Namespaces, die im Portal konvertiert werden sollen, ist bei privaten Clustern nicht möglich. Sie können neue Namespaces hinzufügen.
Erstellen eines verwalteten Namespaces in einem Cluster und Zuweisen von Benutzern
Hinweis
Wenn Sie einen verwalteten Namespace erstellen, wird eine Komponente im Cluster installiert, um den Namespace mit dem Status in Azure Resource Manager in Einklang zu bringen. Diese Komponente verhindert Änderungen an den verwalteten Feldern und Ressourcen über die Kubernetes-API und gewährleistet so die Konsistenz mit der gewünschten Konfiguration.
Das folgende Bicep-Beispiel veranschaulicht, wie ein verwalteter Namespace als Unterressource eines verwalteten Clusters erstellt wird. Stellen Sie sicher, dass Sie den entsprechenden Wert für defaultNetworkPolicy, adoptionPolicyund deletePolicy ausgewählt haben. Weitere Informationen dazu, was diese Parameter bedeuten, finden Sie in der Übersicht über verwaltete Namespaces.
resource existingCluster 'Microsoft.ContainerService/managedClusters@2024-03-01' existing = {
name: 'contoso-cluster'
}
resource managedNamespace 'Microsoft.ContainerService/managedClusters/managedNamespaces@2025-09-01' = {
parent: existingCluster
name: 'retail-team'
location: location
properties: {
defaultResourceQuota: {
cpuRequest: '1000m'
cpuLimit: '2000m'
memoryRequest: '512Mi'
memoryLimit: '1Gi'
}
defaultNetworkPolicy: {
ingress: 'AllowSameNamespace'
egress: 'AllowAll'
}
adoptionPolicy: 'IfIdentical'
deletePolicy: 'Keep'
labels: {
environment: 'dev'
}
annotations: {
owner: 'retail'
}
}
}
Speichern Sie die Bicep-Datei managedNamespace.bicep auf Ihrem lokalen Computer.
Stellen Sie die Bicep-Datei mithilfe der Azure CLI bereit.
az deployment group create --resource-group <resource-group> --template-file managedNamespace.bicep
Definieren von Variablen
Definieren Sie die folgenden Variablen, die in den nachfolgenden Schritten verwendet werden.
RG_NAME=cluster-rg
CLUSTER_NAME=contoso-cluster
NAMESPACE_NAME=retail-team
LABELS="environment=dev"
ANNOTATIONS="owner=retail"
Erstellen des verwalteten Namespaces
Um die Konfiguration anzupassen, stehen bei verwalteten Namespaces während der Erstellung verschiedene Parameteroptionen zur Auswahl. Stellen Sie sicher, dass Sie den entsprechenden Wert für ingress-network-policy, egress-network-policy, adoption-policy und delete-policy ausgewählt haben. Weitere Informationen dazu, was diese Parameter bedeuten, finden Sie in der Übersicht über verwaltete Namespaces.
az aks namespace add \
--name ${NAMESPACE_NAME} \
--cluster-name ${CLUSTER_NAME} \
--resource-group ${RG_NAME} \
--cpu-request 1000m \
--cpu-limit 2000m \
--memory-request 512Mi \
--memory-limit 1Gi \
--ingress-policy [AllowSameNamespace|AllowAll|DenyAll] \
--egress-policy [AllowSameNamespace|AllowAll|DenyAll] \
--adoption-policy [Never|IfIdentical|Always] \
--delete-policy [Keep|Delete] \
--labels ${LABELS} \
--annotations ${ANNOTATIONS}
Zuweisen einer Rolle
Nachdem der Namespace erstellt wurde, können Sie eine der integrierten Rollen für die Steuerebene und die Datenebene zuweisen.
ASSIGNEE="user@contoso.com"
NAMESPACE_ID=$(az aks namespace show --name ${NAMESPACE_NAME} --cluster-name ${CLUSTER_NAME} --resource-group ${RG_NAME} --query id -o tsv)
Weisen Sie eine Rolle für die Steuerungsebene zu, um den verwalteten Namespace im Portal, der Azure CLI-Ausgabe und Azure Resource Manager anzuzeigen. Mit dieser Rolle kann der Benutzer auch die Anmeldedaten abrufen, um eine Verbindung zu diesem Namespace herzustellen.
az role assignment create \
--assignee ${ASSIGNEE} \
--role "Azure Kubernetes Service Namespace User" \
--scope ${NAMESPACE_ID}
Weisen Sie die Datenebenenrolle zu, um Zugriff auf die Erstellung von Ressourcen innerhalb des Namespace mithilfe der Kubernetes-API zu erhalten.
az role assignment create \
--assignee ${ASSIGNEE} \
--role "Azure Kubernetes Service RBAC Writer" \
--scope ${NAMESPACE_ID}
- Melden Sie sich beim Azure-Portal an.
- Wählen Sie auf der Startseite des Azure-Portals Ressource erstellen aus.
- Wählen Sie im Abschnitt Kategorien die Option Verwaltete Kubernetes-Namespaces aus.
- Konfigurieren Sie auf der Registerkarte Grundlagen unter Projektdetails die folgenden Einstellungen:
- Wählen Sie den Zielcluster aus, um den Namespace zu erstellen.
- Wenn Sie einen neuen Namespace erstellen, behalten Sie die Standardeinstellung Neu erstellen bei, andernfalls wählen Sie Vorhandenen in verwaltet ändern aus, um einen vorhandenen Namespace zu konvertieren.
- Konfigurieren Sie die Netzwerkrichtlinie, die auf den Namespace angewendet werden soll.
- Konfigurieren Sie die Ressourcenanforderungen und -beschränkungen für den Namespace.
- Wählen Sie die Mitglieder (Benutzer oder Gruppen) und ihre Rolle aus.
- Weisen Sie die Azure Kubernetes-Dienstnamespace-Benutzerrolle zu, um ihnen Zugriff auf den verwalteten Namespace im Portal, die Azure CLI-Ausgabe und den Azure Resource Manager zu gewähren. Mit dieser Rolle kann der Benutzer auch die Anmeldedaten abrufen, um eine Verbindung zu diesem Namespace herzustellen.
- Weisen Sie die Azure Kubernetes Service RBAC-Rolle Writer zu, um Zugriff auf das Erstellen von Ressourcen innerhalb des Namespace mithilfe der Kubernetes-API zu gewähren.
- Wählen Sie Überprüfen und Erstellen aus, um die Clusterkonfiguration zu überprüfen. Nachdem die Überprüfung abgeschlossen ist, wählen Sie "Erstellen" aus.
Auflisten von verwalteten Namespaces
Sie können verwaltete Namespaces in verschiedenen Bereichen mithilfe der Azure CLI auflisten.
Abonnementebene
Führen Sie den folgenden Befehl aus, um alle verwalteten Namespaces in einem Abonnement aufzulisten.
az aks namespace list --subscription <subscription-id>
Ressourcengruppenebene
Führen Sie den folgenden Befehl aus, um alle verwalteten Namespaces in einer bestimmten Ressourcengruppe aufzulisten.
az aks namespace list --resource-group <rg-name>
Clusterebene
Führen Sie den folgenden Befehl aus, um alle verwalteten Namespaces in einem bestimmten Cluster aufzulisten.
az aks namespace list --resource-group <rg-name> --cluster-name <cluster-name>
Auflisten von verwalteten Namespaces
Sie können verwaltete Namespaces in verschiedenen Bereichen mithilfe der Azure CLI auflisten.
Abonnementebene
Führen Sie den folgenden Befehl aus, um alle verwalteten Namespaces in einem Abonnement aufzulisten.
az aks namespace list --subscription <subscription-id>
Ressourcengruppenebene
Führen Sie den folgenden Befehl aus, um alle verwalteten Namespaces in einer bestimmten Ressourcengruppe aufzulisten.
az aks namespace list --resource-group <rg-name>
Clusterebene
Führen Sie den folgenden Befehl aus, um alle verwalteten Namespaces in einem bestimmten Cluster aufzulisten.
az aks namespace list --resource-group <rg-name> --cluster-name <cluster-name>
Herstellen einer Verbindung mit dem Cluster
Sie können die Anmeldeinformationen abrufen, um über den folgenden Befehl eine Verbindung mit einem Namespace herzustellen.
az aks namespace get-credentials --name <namespace-name> --resource-group <rg-name> --cluster-name <cluster-name>
Herstellen einer Verbindung mit dem Cluster
Sie können die Anmeldeinformationen abrufen, um über den folgenden Befehl eine Verbindung mit einem Namespace herzustellen.
az aks namespace get-credentials --name <namespace-name> --resource-group <rg-name> --cluster-name <cluster-name>
Nächste Schritte
Dieser Artikel befasste sich mit der Verwendung der Funktion „Verwaltete Namespaces“, um Teams und Anwendungen logisch voneinander zu trennen. Zusätzliche Sicherheitsvorkehrungen und bewährte Verfahren finden Sie unter Bereitstellungsvorkehrungen.