Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tej instrukcji przyjęto, że korzystasz z podejścia przynieś własnewdrożenie, w którym kontroler ALB odwołuje się do zasobów usługi Application Gateway for Containers utworzonych wcześniej na platformie Azure. Zakłada się, że cykle życia zasobów są zarządzane na platformie Azure niezależnie od tego, co jest zdefiniowane w ramach platformy Kubernetes.
Wymagania wstępne
Upewnij się, że ALB Controller został wdrożony w klastrze Kubernetes. Możesz skorzystać z przewodnika Szybki start: Wdróż Application Gateway dla Kontenerów z ALB Controllerem, jeśli ALB Controller nie został jeszcze wdrożony.
Tworzenie zasobu usługi Application Gateway for Containers
Wykonaj następujące polecenie, aby utworzyć zasób usługi Application Gateway for Containers.
RESOURCE_GROUP='<your resource group name>'
AGFC_NAME='alb-test' # Name of the Application Gateway for Containers resource to be created
az network alb create -g $RESOURCE_GROUP -n $AGFC_NAME
Tworzenie zasobu frontendowego
Wykonaj następujące polecenie, aby utworzyć zasób frontonu usługi Application Gateway for Containers.
FRONTEND_NAME='test-frontend'
az network alb frontend create -g $RESOURCE_GROUP -n $FRONTEND_NAME --alb-name $AGFC_NAME
Tworzenie zasobu skojarzenia
Delegowanie podsieci do zasobu powiązania
Aby utworzyć zasób skojarzenia, najpierw należy określić podsieć dla usługi Application Gateway dla kontenerów, aby ustanowić łączność. Upewnij się, że podsieć dla usługi Application Gateway dla kontenerów jest co najmniej klasy C lub większa bądź dysponuje prefiksem CIDR równym /24 lub mniejszym. W tym kroku możesz ponownie użyć istniejącej podsieci i włączyć w niej delegowanie podsieci lub utworzyć nową sieć wirtualną, podsieć i włączyć delegowanie podsieci.
Aby odwołać się do istniejącej podsieci, wykonaj następujące polecenie, aby ustawić zmienne dla odwołania do podsieci w kolejnych krokach.
VNET_NAME='<name of the virtual network to use>'
VNET_RESOURCE_GROUP='<the resource group of your VNET>'
ALB_SUBNET_NAME='subnet-alb' # subnet name can be any non-reserved subnet name (i.e. GatewaySubnet, AzureFirewallSubnet, AzureBastionSubnet would all be invalid)
Włącz delegowanie podsieci dla usługi Application Gateway for Containers. Delegowanie usługi Application Gateway dla kontenerów jest identyfikowane przez typ zasobu Microsoft.ServiceNetworking/trafficControllers .
az network vnet subnet update \
--resource-group $VNET_RESOURCE_GROUP \
--name $ALB_SUBNET_NAME \
--vnet-name $VNET_NAME \
--delegations 'Microsoft.ServiceNetworking/trafficControllers'
ALB_SUBNET_ID=$(az network vnet subnet list --resource-group $VNET_RESOURCE_GROUP --vnet-name $VNET_NAME --query "[?name=='$ALB_SUBNET_NAME'].id" --output tsv)
echo $ALB_SUBNET_ID
Delegowanie uprawnień do tożsamości zarządzanej
Kontroler usługi ALB musi mieć możliwość aprowizowania nowych zasobów usługi Application Gateway dla kontenerów oraz dołączania się do podsieci przeznaczonej dla zasobu skojarzenia z usługą Application Gateway dla kontenerów.
W tym przykładzie delegujemy rolę AppGW for Containers Configuration Manager do grupy zasobów i delegujemy rolę Współautor sieci do podsieci używanej przez podsieć skojarzenia usługi Application Gateway for Containers, która zawiera uprawnienie Microsoft.Network/virtualNetworks/subnets/join/action .
W razie potrzeby możesz utworzyć i przypisać niestandardową rolę z uprawnieniem Microsoft.Network/virtualNetworks/subnets/join/action, aby wyeliminować inne uprawnienia zawarte w roli Współtwórca sieci. Dowiedz się więcej o zarządzaniu uprawnieniami podsieci.
IDENTITY_RESOURCE_NAME='azure-alb-identity'
resourceGroupId=$(az group show --name $RESOURCE_GROUP --query id -otsv)
principalId=$(az identity show -g $RESOURCE_GROUP -n $IDENTITY_RESOURCE_NAME --query principalId -otsv)
# Delegate AppGw for Containers Configuration Manager role to RG containing Application Gateway for Containers resource
az role assignment create --assignee-object-id $principalId --assignee-principal-type ServicePrincipal --scope $resourceGroupId --role "fbc52c3f-28ad-4303-a892-8a056630b8f1"
# Delegate Network Contributor permission for join to association subnet
az role assignment create --assignee-object-id $principalId --assignee-principal-type ServicePrincipal --scope $ALB_SUBNET_ID --role "4d97b98b-1d4f-4787-a291-c67834d212e7"
Tworzenie zasobu skojarzenia
Wykonaj następujące polecenie, aby utworzyć zasób powiązania i połączyć go z przywołaną podsiecią. Utworzenie skojarzenia usługi Application Gateway for Containers może potrwać 5–6 minut.
ASSOCIATION_NAME='association-test'
az network alb association create -g $RESOURCE_GROUP -n $ASSOCIATION_NAME --alb-name $AGFC_NAME --subnet $ALB_SUBNET_ID
Następne kroki
Gratulacje, kontroler usługi ALB został zainstalowany w klastrze i wdrożono zasoby usługi Application Gateway for Containers na platformie Azure!
Wypróbuj kilka przewodników instruktażowych, aby wdrożyć przykładową aplikację, przedstawiając niektóre pojęcia dotyczące równoważenia obciążenia w Application Gateway dla kontenerów.