Samouczek: wdrażanie aplikacji w usłudze AKS z obsługą usługi Azure Arc
Dotyczy: usługa AKS w usłudze Azure Stack HCI 22H2, AKS w systemie Windows Server
Możesz tworzyć i wdrażać własne aplikacje i usługi w klastrze Kubernetes, gdy używasz Azure Kubernetes Service włączonej przez usługę Azure Arc. Platforma Kubernetes udostępnia rozproszoną platformę dla aplikacji konteneryzowanych. Możesz zezwolić klastrowi na zarządzanie dostępnością i łącznością.
W tym samouczku, część czwarta z siedmiu, opisano sposób wdrażania przykładowej aplikacji w klastrze Kubernetes w usłudze AKS. Omawiane tematy:
- Aktualizowanie pliku manifestu kubernetes
- Wdrażanie aplikacji na platformie Kubernetes
- Testowanie aplikacji
W kolejnych samouczkach opisano sposób skalowania i aktualizowania tej aplikacji.
W tym samouczku przyjęto założenie, że podstawowa wiedza na temat pojęć związanych z platformą Kubernetes.
Zanim rozpoczniesz
W poprzednich samouczkach opisano sposób tworzenia pakietu aplikacji do obrazu kontenera, a następnie przekazywania obrazu do Azure Container Registry i tworzenia klastra Kubernetes.
Do ukończenia tego samouczka potrzebny jest wstępnie utworzony plik manifestu kubernetes azure-vote-all-in-one-redis.yaml Kubernetes. Ten plik został pobrany z kodu źródłowego aplikacji w poprzednim samouczku. Sprawdź, czy sklonowane repozytorium i czy katalogi zmieniono na sklonowane repozytorium. Jeśli te kroki nie zostały wykonane, zacznij od artykułu Samouczek 1 — Twórca obrazów kontenerów.
Ten samouczek wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.0.53 lub nowszej. Uruchom polecenie az --version
, aby dowiedzieć się, jaka wersja jest używana. Jeśli musisz zainstalować lub uaktualnić interfejs wiersza polecenia platformy Azure, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
Aktualizowanie pliku manifestu
W tych samouczkach wystąpienie Azure Container Registry przechowuje obraz kontenera dla przykładowej aplikacji. Aby wdrożyć aplikację, należy zaktualizować nazwę obrazu w pliku manifestu kubernetes, aby uwzględnić nazwę serwera logowania rejestru kontenerów.
Pobierz nazwę serwera logowania Azure Container Registry przy użyciu polecenia az acr list w następujący sposób:
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Przykładowy plik manifestu z repozytorium GitHub sklonowanego w pierwszym samouczku używa nazwy serwera logowania firmy Microsoft. Upewnij się, że znajdujesz się w sklonowanym katalogu azure-voting-app-redis , a następnie otwórz plik manifestu za pomocą edytora tekstów, takiego jak Notatnik:
notepad azure-vote-all-in-one-redis.yaml
Zastąp ciąg microsoft nazwą serwera logowania Azure Container Registry. Nazwa obrazu znajduje się w wierszu 60 pliku manifestu. W poniższym przykładzie przedstawiono domyślną nazwę obrazu:
containers:
- name: azure-vote-front
image: mcr.microsoft.com/azuredocs/azure-vote-front:v1
Podaj własną nazwę serwera logowania Azure Container Registry, aby plik manifestu wyglądał podobnie do następującego przykładu:
containers:
- name: azure-vote-front
image: <acrName>.azurecr.io/azure-vote-front:v1
Zapisz i zamknij plik.
Wdrażanie aplikacji
Aby wdrożyć aplikację, użyj polecenia kubectl apply. To polecenie analizuje plik manifestu i tworzy zdefiniowane obiekty usługi Kubernetes. Określ przykładowy plik manifestu, jak pokazano w poniższym przykładzie:
kubectl apply -f azure-vote-all-in-one-redis.yaml
Następujące przykładowe dane wyjściowe pokazują, że zasoby zostały pomyślnie utworzone w klastrze Kubernetes:
$ kubectl apply -f azure-vote-all-in-one-redis.yaml
deployment "azure-vote-back" created
service "azure-vote-back" created
deployment "azure-vote-front" created
service "azure-vote-front" created
Testowanie aplikacji
Po uruchomieniu aplikacji usługa Kubernetes uwidacznia fronton aplikacji w Internecie. Ten proces może potrwać kilka minut.
Aby monitorować postęp, użyj polecenia kubectl get service z argumentem --watch
:
kubectl get service azure-vote-front --watch
Początkowo adres EXTERNAL-IP dla usługi azure-vote-front jest wyświetlany jako oczekujący:
azure-vote-front LoadBalancer 10.0.34.242 <pending> 80:30676/TCP 5s
Gdy adres EXTERNAL-IP zmieni się z oczekującego na rzeczywisty publiczny adres IP, użyj klawiszy CTRL-C, aby zatrzymać kubectl
proces watch. Następujące przykładowe dane wyjściowe przedstawiają prawidłowy publiczny adres IP przypisany do usługi:
azure-vote-front LoadBalancer 10.0.34.242 52.179.23.131 80:30676/TCP 67s
Aby wyświetlić działającą aplikację, otwórz zewnętrzny adres IP usługi w przeglądarce internetowej:
Jeśli aplikacja nie została załadowana, może być to spowodowane problemem z autoryzacją rejestru obrazów. Aby wyświetlić stan kontenerów, użyj polecenia kubectl get pods
. Jeśli nie można ściągnąć obrazów kontenerów, zobacz Uwierzytelnianie przy użyciu Azure Container Registry z Azure Kubernetes Service.
Następne kroki
W tym samouczku wdrożono przykładową aplikację do głosowania na platformie Azure w klastrze Kubernetes w usłudze AKS włączonej przez usługę Arc. Wiesz już, jak wykonać następujące działania:
- Aktualizowanie pliku manifestu kubernetes
- Uruchamianie aplikacji w usłudze Kubernetes
- Testowanie aplikacji
Przejdź do następnego samouczka, aby uzyskać informacje na temat sposobu skalowania aplikacji Kubernetes i bazowej infrastruktury usługi Kubernetes.