Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Organizacje zwykle mają ścisłe wymagania dotyczące zabezpieczeń i zgodności, aby regulować ruch sieciowy wychodzący (wychodzący) z klastra w celu wyeliminowania ryzyka eksfiltracji danych. Domyślnie standardowe klastry usługi Azure Kubernetes Service (AKS) mają nieograniczony wychodzący dostęp do Internetu. Ten poziom dostępu do sieci umożliwia uruchamianym węzłom i usługom dostęp do zewnętrznych zasobów zgodnie z potrzebami. Jeśli chcesz ograniczyć ruch wychodzący, ograniczona liczba portów i adresów musi być dostępna, aby zachować zadania konserwacji klastra w dobrej kondycji. Koncepcyjny dokument dotyczący reguł sieci wychodzącej i reguł FQDN dla klastrów AKS zawiera listę wymaganych punktów końcowych dla klastra AKS oraz jego opcjonalnych dodatków i funkcji.
Jednym z typowych rozwiązań ograniczania ruchu wychodzącego z klastra jest użycie urządzenia zapory w celu ograniczenia ruchu na podstawie reguł zapory. Zapora ma zastosowanie, gdy aplikacja wymaga dostępu wychodzącego, ale gdy żądania wychodzące muszą być sprawdzane i zabezpieczone. Ręczne konfigurowanie zapory przy użyciu wymaganych reguł ruchu wychodzącego i nazw FQDN jest uciążliwym procesem, zwłaszcza jeśli jedynym wymaganiem jest utworzenie izolowanego klastra usługi AKS bez zależności wychodzących dla rozruchu klastra.
Aby zmniejszyć ryzyko eksfiltracji danych, klaster izolowany przez sieć umożliwia uruchamianie klastra usługi AKS bez żadnych zależności sieci wychodzących, nawet w przypadku pobierania składników/obrazów klastra z usługi Microsoft Artifact Registry (MAR). Operator klastra może przyrostowo skonfigurować dozwolony ruch wychodzący dla każdego scenariusza, który chce włączyć. W tym artykule przedstawiono kroki tworzenia izolowanego klastra sieciowego.
Zanim rozpoczniesz
- Zapoznaj się z koncepcyjnym omówieniem tej funkcji, która zawiera wyjaśnienie sposobu działania izolowanych klastrów sieciowych. Artykuł przeglądowy także:
- W tym artykule opisano dwie opcje dla prywatnego zasobu usługi Azure Container Registry (ACR) używanego na potrzeby uruchamiania klastra — usługi ACR zarządzanej przez usługę AKS lub usługi ACR typu bring-your-own.
- Objaśnia dwa tryby prywatnego klastra, które służą do tworzenia prywatnego dostępu do serwera interfejsu API — oparty na łączach prywatnych lub Integracja API Server z siecią Vnet.
- Objaśnia dwa typy ruchu wychodzącego dla kontrolki ruchu wychodzącego klastra —
nonelubblock(wersja zapoznawcza). - Opisuje bieżące ograniczenia klastrów izolowanych w sieci.
Uwaga
Typ none ruchu wychodzącego jest powszechnie dostępny.
Typblock ruchu wychodzącego jest w wersji zapoznawczej.
Ważne
Funkcje usługi AKS w wersji zapoznawczej są dostępne na zasadzie samoobsługi i dobrowolnego wyboru. Wersje zapoznawcze są udostępniane w wersji "as is" i "jako dostępne" i są wykluczone z umów dotyczących poziomu usług i ograniczonej gwarancji. Wersje zapoznawcze usługi AKS są częściowo objęte pomocą techniczną na zasadzie najlepszych starań. W związku z tym te funkcje nie są przeznaczone do użytku produkcyjnego. Aby uzyskać więcej informacji, zobacz następujące artykuły pomocy technicznej:
Użyj środowiska Bash w Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Get started with Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Uwierzytelnianie na platformie Azure przy użyciu interfejsu wiersza polecenia platformy Azure.
Gdy pojawi się monit, zainstaluj rozszerzenie Azure CLI przy pierwszym użyciu. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Używanie rozszerzeń i zarządzanie nimi za pomocą interfejsu wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
- Ten artykuł wymaga wersji 2.71.0 lub nowszej interfejsu wiersza polecenia platformy Azure. Jeśli używasz usługi Azure Cloud Shell, najnowsza wersja jest już tam zainstalowana.
- Zainstaluj rozszerzenie Azure CLI w wersji 9.0.0b2 lub nowszej, jeśli używasz typu wychodzącego (wersja zapoznawcza).
- Jeśli nie masz
aks-previewjeszcze rozszerzenia, zainstaluj je przy użyciuaz extension addpolecenia .az extension add --name aks-preview - Jeśli masz już
aks-previewrozszerzenie, zaktualizuj je, aby upewnić się, że masz najnowszą wersję za pomocą poleceniaaz extension update.az extension update --name aks-preview
- Jeśli nie masz
- Klastry sieciowo izolowane są obsługiwane na klastrach AKS z Kubernetes w wersji 1.30 lub wyższej.
- Jeśli zdecydujesz się użyć opcji Bring your own (BYO) Azure Container Registry (ACR), upewnij się, że usługa ACR jest warstwą usługi Premium SKU.
- Jeśli używasz izolowanego klastra sieciowego skonfigurowanego z integracją z siecią wirtualną serwera API, powinieneś przestrzegać wymagań wstępnych i wskazówek zawartych w tym dokumencie.
Wdróż klaster izolowany sieciowo z ACR zarządzanym przez AKS
Usługa AKS tworzy, zarządza i uzgadnia zasób ACR w tej opcji. Nie musisz przypisywać żadnych uprawnień ani zarządzać usługą ACR. Usługa AKS zarządza regułami pamięci podręcznej, łączem prywatnym i punktem końcowym używanym w izolowanym klastrze sieci.
Tworzenie izolowanego klastra sieciowego
Tworząc izolowany klaster AKS, można wybrać jeden z następujących trybów klastra prywatnego: oparty na prywatnym łączu lub integracja z siecią Vnet serwera API.
Niezależnie od wybranego trybu należy ustawić parametry --bootstrap-artifact-source i --outbound-type.
--bootstrap-artifact-source Można go ustawić na wartość lub Direct odpowiadać Cache użyciu bezpośredniego mar (NIE izolowana sieć) i prywatnego ACR (izolowana sieć) na potrzeby ściągania obrazów odpowiednio.
--outbound-type parameter można ustawić na none lub na block (wersja zapoznawcza). Jeśli typ ruchu wychodzącego jest ustawiony na none, usługa AKS nie konfiguruje żadnych połączeń wychodzących dla klastra, co pozwala użytkownikowi na ich samodzielną konfigurację. Jeśli typ ruchu wychodzącego ma wartość block, wszystkie połączenia wychodzące są blokowane.
Oparte na prywatnych linkach
Utwórz izolowany klaster sieci oparty na łączach prywatnych, uruchamiając polecenie az aks create z parametrami --bootstrap-artifact-source, --enable-private-clusteri --outbound-type .
az aks create --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --kubernetes-version 1.30.3 --bootstrap-artifact-source Cache --outbound-type none --network-plugin azure --enable-private-cluster
Integracja serwera API z VNet
Utwórz sieciowo izolowany klaster przy użyciu integracji serwera API z siecią VNet, uruchamiając polecenie az aks create z parametrami --bootstrap-artifact-source, --enable-private-cluster, --enable-apiserver-vnet-integration i --outbound-type.
az aks create --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --kubernetes-version 1.30.3 --bootstrap-artifact-source Cache --outbound-type none --network-plugin azure --enable-private-cluster --enable-apiserver-vnet-integration
Zaktualizować istniejący klaster usługi AKS do typu sieciowo izolowanego
Jeśli wolisz włączyć izolację sieci w istniejącym klastrze usługi AKS zamiast tworzyć nowy klaster, użyj polecenia az aks update .
Aby włączyć funkcję izolacji sieci w istniejącym klastrze usługi AKS, najpierw uruchom następujące polecenie, aby zaktualizować bootstrap-artifact-source:
az aks update --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --bootstrap-artifact-source Cache
Następnie należy ręcznie ponownie skonfigurować wszystkie istniejące pule węzłów.
az aks upgrade --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --node-image-only
Uwaga
Musisz upewnić się, że ruch wychodzący istnieje do momentu ukończenia pierwszego obrazu. Aby sprawdzić, czy proces reinstalacji został zakończony, uruchom polecenie:
NODEPOOLS=$(az aks nodepool list \
--resource-group "${RESOURCE_GROUP}" \
--cluster-name "${AKS_NAME}" \
--query "[].name" -o tsv)
for NODEPOOL in $NODEPOOLS; do
echo "Waiting for node pool $NODEPOOL to finish upgrading..."
az aks nodepool wait \
--resource-group "${RESOURCE_GROUP}" \
--cluster-name "${AKS_NAME}" \
--name "$NODEPOOL" \
--updated
echo "Node pool $NODEPOOL upgrade succeeded."
done
Zaczekaj i upewnij się, że ponowne obrazowanie zakończy się, a następnie uruchom następujące polecenie, aby zaktualizować outbound-type.
az aks update --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --outbound-type none
Ważne
Pamiętaj, aby od razu odtworzyć pule węzłów klastra po zaktualizowaniu źródła artefaktu do pamięci podręcznej. W przeciwnym razie funkcja nie będzie obowiązywać dla klastra.
Wdrażanie izolowanego klastra sieciowego przy użyciu usługi Bring Your Own ACR
Usługa AKS obsługuje użycie własnego rejestru ACR (BYO). Aby obsługiwać scenariusz usługi BYO ACR, przed utworzeniem klastra AKS należy skonfigurować prywatny punkt końcowy usługi ACR i prywatną strefę DNS.
W poniższych krokach pokazano, jak przygotować te zasoby:
- Własna sieć wirtualna i podsieci dla AKS i ACR.
- Reguły usługi ACR, reguły pamięci podręcznej usługi ACR, prywatny punkt końcowy i prywatna strefa DNS.
- Niestandardowa tożsamość płaszczyzny sterowania i tożsamość kubeletu.
Krok 1. Tworzenie sieci wirtualnej i podsieci
az group create --name ${RESOURCE_GROUP} --location ${LOCATION}
az network vnet create --resource-group ${RESOURCE_GROUP} --name ${VNET_NAME} --address-prefixes 192.168.0.0/16
az network vnet subnet create --name ${AKS_SUBNET_NAME} --vnet-name ${VNET_NAME} --resource-group ${RESOURCE_GROUP} --address-prefixes 192.168.1.0/24
SUBNET_ID=$(az network vnet subnet show --name ${AKS_SUBNET_NAME} --vnet-name ${VNET_NAME} --resource-group ${RESOURCE_GROUP} --query 'id' --output tsv)
az network vnet subnet create --name ${ACR_SUBNET_NAME} --vnet-name ${VNET_NAME} --resource-group ${RESOURCE_GROUP} --address-prefixes 192.168.2.0/24 --private-endpoint-network-policies Disabled
Krok 2. Wyłączanie łączności wychodzącej sieci wirtualnej (opcjonalnie)
Istnieje wiele sposobów wyłączania łączności wychodzącej sieci wirtualnej.
Krok 3. Tworzenie usługi ACR i włączanie pamięci podręcznej artefaktów
Utwórz usługę ACR za pomocą łącza prywatnego.
az acr create --resource-group ${RESOURCE_GROUP} --name ${REGISTRY_NAME} --sku Premium --public-network-enabled false REGISTRY_ID=$(az acr show --name ${REGISTRY_NAME} -g ${RESOURCE_GROUP} --query 'id' --output tsv)Utwórz regułę pamięci podręcznej usługi ACR zgodnie z poniższym poleceniem, aby umożliwić użytkownikom buforowanie obrazów kontenerów MAR i plików binarnych w nowej usłudze ACR. Zwróć uwagę, że nazwa reguły pamięci podręcznej i nazwy repozytoriów muszą być ściśle dostosowane do poniższych wskazówek.
az acr cache create -n aks-managed-mcr -r ${REGISTRY_NAME} -g ${RESOURCE_GROUP} --source-repo "mcr.microsoft.com/*" --target-repo "aks-managed-repository/*"
Uwaga
Dzięki BYO ACR twoim zadaniem jest upewnienie się, że reguła pamięci podręcznej ACR została utworzona i utrzymywana poprawnie, jak powyżej. Ten krok ma kluczowe znaczenie dla tworzenia klastra, działania i uaktualniania. Nie należy modyfikować tej reguły pamięci podręcznej.
Krok 4. Tworzenie prywatnego punktu końcowego dla usługi ACR
az network private-endpoint create --name myPrivateEndpoint --resource-group ${RESOURCE_GROUP} --vnet-name ${VNET_NAME} --subnet ${ACR_SUBNET_NAME} --private-connection-resource-id ${REGISTRY_ID} --group-id registry --connection-name myConnection
NETWORK_INTERFACE_ID=$(az network private-endpoint show --name myPrivateEndpoint --resource-group ${RESOURCE_GROUP} --query 'networkInterfaces[0].id' --output tsv)
REGISTRY_PRIVATE_IP=$(az network nic show --ids ${NETWORK_INTERFACE_ID} --query "ipConfigurations[?privateLinkConnectionProperties.requiredMemberName=='registry'].privateIPAddress" --output tsv)
DATA_ENDPOINT_PRIVATE_IP=$(az network nic show --ids ${NETWORK_INTERFACE_ID} --query "ipConfigurations[?privateLinkConnectionProperties.requiredMemberName=='registry_data_$LOCATION'].privateIPAddress" --output tsv)
Krok 5. Tworzenie prywatnej strefy DNS i dodawanie rekordów
Utwórz prywatną strefę DNS o nazwie privatelink.azurecr.io. Dodaj rekordy dla punktów końcowych: REST rejestru {REGISTRY_NAME}.azurecr.io oraz danych rejestru {REGISTRY_NAME}.{REGISTRY_LOCATION}.data.azurecr.io.
az network private-dns zone create --resource-group ${RESOURCE_GROUP} --name "privatelink.azurecr.io"
az network private-dns link vnet create --resource-group ${RESOURCE_GROUP} --zone-name "privatelink.azurecr.io" --name MyDNSLink --virtual-network ${VNET_NAME} --registration-enabled false
az network private-dns record-set a create --name ${REGISTRY_NAME} --zone-name "privatelink.azurecr.io" --resource-group ${RESOURCE_GROUP}
az network private-dns record-set a add-record --record-set-name ${REGISTRY_NAME} --zone-name "privatelink.azurecr.io" --resource-group ${RESOURCE_GROUP} --ipv4-address ${REGISTRY_PRIVATE_IP}
az network private-dns record-set a create --name ${REGISTRY_NAME}.${LOCATION}.data --zone-name "privatelink.azurecr.io" --resource-group ${RESOURCE_GROUP}
az network private-dns record-set a add-record --record-set-name ${REGISTRY_NAME}.${LOCATION}.data --zone-name "privatelink.azurecr.io" --resource-group ${RESOURCE_GROUP} --ipv4-address ${DATA_ENDPOINT_PRIVATE_IP}
Krok 6. Tworzenie płaszczyzny kontrolnej oraz tożsamości kubeletów
Tożsamość płaszczyzny sterowania
az identity create --name ${CLUSTER_IDENTITY_NAME} --resource-group ${RESOURCE_GROUP}
CLUSTER_IDENTITY_RESOURCE_ID=$(az identity show --name ${CLUSTER_IDENTITY_NAME} --resource-group ${RESOURCE_GROUP} --query 'id' -o tsv)
CLUSTER_IDENTITY_PRINCIPAL_ID=$(az identity show --name ${CLUSTER_IDENTITY_NAME} --resource-group ${RESOURCE_GROUP} --query 'principalId' -o tsv)
Tożsamość Kubelet
az identity create --name ${KUBELET_IDENTITY_NAME} --resource-group ${RESOURCE_GROUP}
KUBELET_IDENTITY_RESOURCE_ID=$(az identity show --name ${KUBELET_IDENTITY_NAME} --resource-group ${RESOURCE_GROUP} --query 'id' -o tsv)
KUBELET_IDENTITY_PRINCIPAL_ID=$(az identity show --name ${KUBELET_IDENTITY_NAME} --resource-group ${RESOURCE_GROUP} --query 'principalId' -o tsv)
Nadaj uprawnienia AcrPull dla tożsamości Kubelet
az role assignment create --role AcrPull --scope ${REGISTRY_ID} --assignee-object-id ${KUBELET_IDENTITY_PRINCIPAL_ID} --assignee-principal-type ServicePrincipal
Po skonfigurowaniu tych zasobów, możesz następnie przejść do utworzenia izolowanego klastra AKS z usługą BYO ACR.
Krok 7. Tworzenie klastra izolowanego sieci przy użyciu usługi BYO ACR
Podczas tworzenia izolowanego klastra sieciowego można wybrać jeden z następujących trybów klastra prywatnego — oparty na łączach prywatnych lub integracji z siecią wirtualną serwera API Server.
Niezależnie od wybranego trybu należy ustawić parametry --bootstrap-artifact-source i --outbound-type.
--bootstrap-artifact-source można ustawić na Direct wartość lub Cache odpowiadającą użyciu bezpośredniego rejestru Artefaktów Microsoft (MAR) (NIE izolowana sieć) i prywatnego rejestru ACR (izolowana sieć) odpowiednio do ściągania obrazów.
--outbound-type parameter można ustawić na none lub na block (wersja zapoznawcza). Jeśli typ ruchu wychodzącego jest ustawiony na none, usługa AKS nie konfiguruje żadnych połączeń wychodzących dla klastra, co pozwala użytkownikowi na ich samodzielną konfigurację. Jeśli typ ruchu wychodzącego ma wartość block, wszystkie połączenia wychodzące są blokowane.
Oparte na prywatnych linkach
Utwórz izolowany klaster sieci oparty na łączach prywatnych, który uzyskuje dostęp do usługi ACR, uruchamiając polecenie az aks create z wymaganymi parametrami.
az aks create --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --kubernetes-version 1.30.3 --vnet-subnet-id ${SUBNET_ID} --assign-identity ${CLUSTER_IDENTITY_RESOURCE_ID} --assign-kubelet-identity ${KUBELET_IDENTITY_RESOURCE_ID} --bootstrap-artifact-source Cache --bootstrap-container-registry-resource-id ${REGISTRY_ID} --outbound-type none --network-plugin azure --enable-private-cluster
Integracja serwera API z VNet
W przypadku izolowanego klastra sieciowego skonfigurowanego z integracją z siecią VNet serwera API, najpierw utwórz podsieć i przypisz właściwą rolę, korzystając z następujących poleceń:
az network vnet subnet create --name ${APISERVER_SUBNET_NAME} --vnet-name ${VNET_NAME} --resource-group ${RESOURCE_GROUP} --address-prefixes 192.168.3.0/24
export APISERVER_SUBNET_ID=$(az network vnet subnet show --resource-group ${RESOURCE_GROUP} --vnet-name ${VNET_NAME} --name ${APISERVER_SUBNET_NAME} --query id -o tsv)
az role assignment create --scope ${APISERVER_SUBNET_ID} --role "Network Contributor" --assignee-object-id ${CLUSTER_IDENTITY_PRINCIPAL_ID} --assignee-principal-type ServicePrincipal
Utwórz izolowany klaster sieciowy skonfigurowany z integracją serwera API z siecią wirtualną i uzyskaj dostęp do swojej usługi ACR, uruchamiając polecenie az aks create z wymaganymi parametrami.
az aks create --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --kubernetes-version 1.30.3 --vnet-subnet-id ${SUBNET_ID} --assign-identity ${CLUSTER_IDENTITY_RESOURCE_ID} --assign-kubelet-identity ${KUBELET_IDENTITY_RESOURCE_ID} --bootstrap-artifact-source Cache --bootstrap-container-registry-resource-id ${REGISTRY_ID} --outbound-type none --network-plugin azure --enable-apiserver-vnet-integration --apiserver-subnet-id ${APISERVER_SUBNET_ID}
Aktualizowanie istniejącego klastra usługi AKS
Jeśli wolisz włączyć izolację sieci w istniejącym klastrze usługi AKS zamiast tworzyć nowy klaster, użyj polecenia az aks update .
Podczas tworzenia prywatnego punktu końcowego i prywatnej strefy DNS dla usługi BYO ACR użyj istniejącej sieci wirtualnej i podsieci istniejącego klastra usługi AKS. Przy przypisywaniu uprawnienia AcrPull do tożsamości kubeleta, użyj istniejącej tożsamości kubeleta istniejącego klastra AKS.
Aby włączyć funkcję izolacji sieci w istniejącym klastrze usługi AKS, najpierw uruchom następujące polecenie, aby zaktualizować bootstrap-artifact-source:
az aks update --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --bootstrap-artifact-source Cache --bootstrap-container-registry-resource-id ${REGISTRY_ID}
Następnie należy ręcznie ponownie skonfigurować wszystkie istniejące pule węzłów.
az aks upgrade --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --node-image-only
Uwaga
Musisz upewnić się, że ruch wychodzący istnieje do momentu ukończenia pierwszego obrazu. Aby sprawdzić, czy proces reinstalacji został zakończony, uruchom polecenie:
NODEPOOLS=$(az aks nodepool list \
--resource-group "${RESOURCE_GROUP}" \
--cluster-name "${AKS_NAME}" \
--query "[].name" -o tsv)
for NODEPOOL in $NODEPOOLS; do
echo "Waiting for node pool $NODEPOOL to finish upgrading..."
az aks nodepool wait \
--resource-group "${RESOURCE_GROUP}" \
--cluster-name "${AKS_NAME}" \
--name "$NODEPOOL" \
--updated
echo "Node pool $NODEPOOL upgrade succeeded."
done
Zaczekaj i upewnij się, że ponowne obrazowanie zakończy się, a następnie uruchom następujące polecenie, aby zaktualizować outbound-type.
az aks update --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --outbound-type none
Ważne
Pamiętaj, aby od razu odtworzyć pule węzłów klastra po zaktualizowaniu źródła artefaktu do pamięci podręcznej. W przeciwnym razie funkcja nie będzie obowiązywać dla klastra.
Aktualizowanie identyfikatora usługi ACR
Istnieje możliwość zaktualizowania prywatnego rekordu ACR używanego z izolowanym klastrem sieciowym. Aby zidentyfikować identyfikator zasobu usługi ACR, użyj polecenia az aks show.
az aks show --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME}
Aktualizowanie identyfikatora usługi ACR jest wykonywane przez uruchomienie az aks update polecenia z parametrami --bootstrap-artifact-source i --bootstrap-container-registry-resource-id .
az aks update --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --bootstrap-artifact-source Cache --bootstrap-container-registry-resource-id <New BYO ACR resource ID>
Po zaktualizowaniu identyfikatora ACR w istniejącym klastrze, należy ręcznie ponownie skonfigurować wszystkie istniejące węzły.
az aks upgrade --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --node-image-only
Ważne
Pamiętaj, aby ponownie utworzyć obraz puli węzłów klastra po włączeniu funkcji izolacji sieciowej klastra. W przeciwnym razie funkcja nie będzie obowiązywać dla klastra.
Sprawdzanie, czy klaster izolowany w sieci jest włączony
Aby sprawdzić, czy funkcja klastra sieci izolowanej jest włączona, użyj polecenia "az aks show"
az aks show --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME}
Następujący wynik pokazuje, że funkcja jest włączona na podstawie wartości właściwości outboundType (brak lub zablokowane) i właściwości artifactSource (Buforowane).
"kubernetesVersion": "1.30.3",
"name": "myAKSCluster"
"type": "Microsoft.ContainerService/ManagedClusters"
"properties": {
...
"networkProfile": {
...
"outboundType": "none",
...
},
...
"bootstrapProfile": {
"artifactSource": "Cache",
"containerRegistryId": "/subscriptions/my-subscription-id/my-node-resource-group-name/providers/Microsoft.ContainerRegistry/registries/my-registry-name"
},
...
}
Wyłącz klaster izolowany sieciowo
Wyłącz funkcję izolowanego klastra sieci, uruchamiając polecenie az aks update z parametrami --bootstrap-artifact-source i --outbound-type.
az aks update --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --bootstrap-artifact-source Direct --outbound-type LoadBalancer
Po wyłączeniu funkcji w istniejącym klastrze należy ręcznie odtworzyć wszystkie istniejące węzły.
az aks upgrade --resource-group ${RESOURCE_GROUP} --name ${AKS_NAME} --node-image-only
Ważne
Pamiętaj, aby ponownie załadować obraz pul węzłów klastra po wyłączeniu funkcji izolacji sieciowej klastra. W przeciwnym razie funkcja nie będzie obowiązywać dla klastra.
Rozwiązywanie problemów
Jeśli występują problemy, takie jak ściąganie obrazu kończy się niepowodzeniem, zobacz Rozwiązywanie problemów z izolowanymi klastrami usługi Azure Kubernetes Service (AKS).
Następne kroki
Jeśli chcesz skonfigurować konfigurację ograniczeń ruchu wychodzącego przy użyciu usługi Azure Firewall, odwiedź stronę Kontrolowanie ruchu wychodzącego przy użyciu usługi Azure Firewall w usłudze AKS.
Jeśli chcesz ograniczyć sposób komunikacji zasobników między sobą a ograniczeniami ruchu wschodnio-zachodniego w klastrze, zobacz Zabezpieczanie ruchu między zasobnikami przy użyciu zasad sieciowych w usłudze AKS.