Udostępnij za pośrednictwem


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:

Zrzut ekranu przedstawiający obraz kontenera aplikacja do głosowania platformy Azure uruchomiona w klastrze usługi AKS otwartym w lokalnej 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.