Delen via


Beheerde naamruimten gebruiken in Azure Kubernetes Service (AKS)

Van toepassing op: ✔️ AKS Automatic ✔️ AKS Standard

Beheerde naamruimten in Azure Kubernetes Service (AKS) bieden een manier om workloads en teams binnen een cluster logisch te isoleren. Met deze functie kunnen beheerders resourcequota afdwingen, netwerkbeleid toepassen en toegangsbeheer beheren op naamruimteniveau. Zie het overzicht van beheerde naamruimten voor een gedetailleerd overzicht van beheerde naamruimten.

Voordat u begint

Vereiste voorwaarden

Voorwaarde Opmerkingen
Azure-CLI 2.80.0 of een latere versie geïnstalleerd. Voer az --version uit om de CLI-versie te vinden. Als u Azure CLI 2.0 wilt installeren of upgraden, raadpleegt u Azure CLI 2.0 installeren.
AKS API-versie 2025-09-01 of daarna.
Vereiste machtiging(en) Microsoft.ContainerService/managedClusters/managedNamespaces/* of Azure Kubernetes Service Namespace Contributor ingebouwde rol. Microsoft.Resources/deployments/* in de resourcegroep met het cluster. Zie Ingebouwde rollen voor beheerde naamruimten voor meer informatie.

Beperkingen

  • Het is niet toegestaan om systeemnaamruimten aan boord te gebruiken, zoals kube-system, app-routing-systemistio-system, , gatekeeper-systemenzovoort.
  • Wanneer een naamruimte een beheerde naamruimte is, worden wijzigingen in de naamruimte via de Kubernetes-API geblokkeerd.
  • Het vermelden van bestaande naamruimten die moeten worden geconverteerd in de portal werkt niet met privéclusters. U kunt nieuwe naamruimten toevoegen.

Een beheerde naamruimte maken in een cluster en gebruikers toewijzen

Opmerking

Wanneer u een beheerde naamruimte maakt, wordt een onderdeel op het cluster geïnstalleerd om de naamruimte af te stemmen met de status in Azure Resource Manager. Dit onderdeel blokkeert wijzigingen in de beheerde velden en resources van de Kubernetes-API, waardoor consistentie met de gewenste configuratie wordt gegarandeerd.

In het volgende Bicep-voorbeeld ziet u hoe u een beheerde naamruimte maakt als subresource van een beheerd cluster. Zorg ervoor dat u de juiste waarde voor defaultNetworkPolicy, adoptionPolicyen deletePolicy. Zie het overzicht van beheerde naamruimten voor meer informatie over wat deze parameters betekenen.

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'
    }
  }
}

Sla het Bicep-bestand managedNamespace.bicep op uw lokale computer op.

Implementeer het Bicep-bestand met behulp van de Azure CLI.

az deployment group create --resource-group <resource-group> --template-file managedNamespace.bicep

Variabelen definiëren

Definieer de volgende variabelen die moeten worden gebruikt in de volgende stappen.

RG_NAME=cluster-rg
CLUSTER_NAME=contoso-cluster
NAMESPACE_NAME=retail-team
LABELS="environment=dev"
ANNOTATIONS="owner=retail"

De beheerde naamruimte maken

Om de configuratie aan te passen, hebben beheerde naamruimten verschillende parameteropties waaruit u kunt kiezen tijdens het maken. Zorg ervoor dat u de juiste waarde voor ingress-network-policy, egress-network-policyen adoption-policydelete-policy. Zie het overzicht van beheerde naamruimten voor meer informatie over wat deze parameters betekenen.

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}

Rol toewijzen

Nadat de naamruimte is gemaakt, kunt u een van de ingebouwde rollen toewijzen voor het besturingsvlak en het gegevensvlak.

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)

Wijs een besturingsvlakrol toe om de beheerde naamruimte in de portal, Azure CLI-uitvoer en Azure Resource Manager weer te geven. Met deze rol kan de gebruiker ook de referenties ophalen om verbinding te maken met deze naamruimte.

az role assignment create \
  --assignee ${ASSIGNEE} \
  --role "Azure Kubernetes Service Namespace User" \
  --scope ${NAMESPACE_ID}

Wijs de rol van het gegevensvlak toe om toegang te krijgen tot het maken van resources in de naamruimte met behulp van de Kubernetes-API.

az role assignment create \
  --assignee ${ASSIGNEE} \
  --role "Azure Kubernetes Service RBAC Writer" \
  --scope ${NAMESPACE_ID}
  1. Meld u aan bij het Azure-portaal.
  2. Klik op Een resource maken op de startpagina van de Azure-portal.
  3. Selecteer beheerde Kubernetes-naamruimten in de sectie Categorieën.
  4. Configureer op het tabblad Basisbeginselen onder Projectdetails de volgende instellingen:
    1. Selecteer het doelcluster waarop u de naamruimte wilt maken.
    2. Als u een nieuwe naamruimte maakt, laat u de standaardwaarde voor het maken van een nieuwe naamruimte staan, anders kiest u bestaande wijzigen om een bestaande naamruimte te converteren.
  5. Configureer het netwerkbeleid dat moet worden toegepast op de naamruimte.
  6. Configureer de resourceaanvragen en -limieten voor de naamruimte.
  7. Selecteer de leden (gebruikers of groepen) en hun rol.
    1. Wijs de rol Azure Kubernetes Service Namespace-gebruiker toe om hen toegang te geven tot de beheerde naamruimte in de portal, de Azure CLI-output en de Azure Resource Manager. Met deze rol kan de gebruiker ook de referenties ophalen om verbinding te maken met deze naamruimte.
    2. Wijs de azure Kubernetes Service RBAC Writer-rol toe om ze toegang te geven tot het maken van resources in de naamruimte met behulp van de Kubernetes-API.
  8. Selecteer Beoordelen en maken om validatie uit te voeren voor de configuratie. Nadat de validatie is voltooid, selecteer Maken.

Beheerde naamruimten weergeven

U kunt beheerde naamruimten op verschillende bereiken weergeven met behulp van de Azure CLI.

Abonnementsniveau

Voer de volgende opdracht uit om alle beheerde naamruimten in een abonnement weer te geven.

az aks namespace list --subscription <subscription-id>

Niveau van resourcegroep

Voer de volgende opdracht uit om alle beheerde naamruimten in een specifieke resourcegroep weer te geven.

az aks namespace list --resource-group <rg-name>

Clusterniveau

Voer de volgende opdracht uit om alle beheerde naamruimten in een specifiek cluster weer te geven.

az aks namespace list --resource-group <rg-name> --cluster-name <cluster-name>

Beheerde naamruimten weergeven

U kunt beheerde naamruimten op verschillende bereiken weergeven met behulp van de Azure CLI.

Abonnementsniveau

Voer de volgende opdracht uit om alle beheerde naamruimten in een abonnement weer te geven.

az aks namespace list --subscription <subscription-id>

Niveau van resourcegroep

Voer de volgende opdracht uit om alle beheerde naamruimten in een specifieke resourcegroep weer te geven.

az aks namespace list --resource-group <rg-name>

Clusterniveau

Voer de volgende opdracht uit om alle beheerde naamruimten in een specifiek cluster weer te geven.

az aks namespace list --resource-group <rg-name> --cluster-name <cluster-name>

Verbinding maken met het cluster

U kunt de referenties ophalen om verbinding te maken met een naamruimte via de volgende opdracht.

az aks namespace get-credentials --name <namespace-name> --resource-group <rg-name> --cluster-name <cluster-name>

Verbinding maken met het cluster

U kunt de referenties ophalen om verbinding te maken met een naamruimte via de volgende opdracht.

az aks namespace get-credentials --name <namespace-name> --resource-group <rg-name> --cluster-name <cluster-name>

Volgende stappen

Dit artikel is gericht op het gebruik van de functie beheerde naamruimten om teams en toepassingen logisch te isoleren. U kunt andere kaders en aanbevolen procedures verder verkennen om toe te passen via implementatiebeveiligingen.