Samouczek: uruchamianie aplikacji w usłudze Azure Kubernetes Service (AKS)
Usługa Kubernetes zapewnia rozproszoną platformę dla konteneryzowanych aplikacji. Utworzysz i wdrożysz własne aplikacje i usługi w klastrze Kubernetes i pozwolisz klastrowi zarządzać dostępnością i łącznością. W tym samouczku, część czwarta z siedmiu, wdrożysz przykładową aplikację w klastrze Kubernetes. Omawiane kwestie:
- Zaktualizuj plik manifestu platformy Kubernetes.
- Uruchom aplikację na platformie Kubernetes.
- Testowanie aplikacji.
W kolejnych samouczkach przeprowadzisz skalowanie w poziomie i zaktualizujesz aplikację.
W tym przewodniku Szybki start założono, że masz podstawową wiedzę na temat pojęć związanych z platformą Kubernetes. Aby uzyskać więcej informacji, zobacz Podstawowe pojęcia dotyczące usługi Azure Kubernetes Service (AKS).
Porada
Klastry usługi AKS mogą używać usługi GitOps do zarządzania konfiguracją. Funkcja GitOp umożliwia automatyczne stosowanie deklaracji stanu klastra, które są wypychane do kontroli źródła. Aby dowiedzieć się, jak używać usługi GitOps do wdrażania aplikacji z klastrem usługi AKS, zapoznaj się z wymaganiami wstępnymi dotyczącymi klastrów Azure Kubernetes Service w samouczku usługi GitOps z usługą Flux v2.
Zanim rozpoczniesz
W poprzednich samouczkach spakujesz aplikację do obrazu kontenera, przekazano obraz do Azure Container Registry i utworzono klaster Kubernetes.
Do ukończenia tego samouczka potrzebujesz wstępnie utworzonego pliku manifestu usługi Kubernetes azure-vote-all-in-one-redis.yaml
. Ten plik został dołączony do kodu źródłowego aplikacji w poprzednim samouczku. Sprawdź, czy repozytorium zostało sklonowane i czy katalogi zostały zmienione do sklonowanego repozytorium. Jeśli nie wykonano tych kroków i chcesz wykonać te czynności, zacznij od samouczka 1: Przygotowywanie aplikacji do usługi AKS.
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 konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
Aktualizowanie pliku manifestu
W tych samouczkach w wystąpieniu usługi Azure Container Registry (ACR) przechowywany jest obraz kontenera na potrzeby przykładowej aplikacji. W celu wdrożenia aplikacji należy zaktualizować nazwę obrazu w pliku manifestu usługi Kubernetes w taki sposób, aby uwzględniała nazwę serwera logowania usługi ACR.
Pobierz nazwę serwera logowania usługi ACR przy użyciu polecenia az acr list .
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Przykładowy plik manifestu z repozytorium git sklonowanego w pierwszym samouczku używa obrazów z usługi Microsoft Container Registry (mcr.microsoft.com). 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 vi
:
vi azure-vote-all-in-one-redis.yaml
Zastąp mcr.microsoft.com nazwą serwera logowania usługi ACR. Nazwę obrazu można znaleźć 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 usługi ACR, 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. W programie vi
użyj polecenia :wq
.
Wdrażanie aplikacji
Aby wdrożyć aplikację, użyj kubectl apply
polecenia , określając przykładowy plik manifestu. To polecenie analizuje plik manifestu i tworzy zdefiniowane obiekty usługi Kubernetes.
kubectl apply -f azure-vote-all-in-one-redis.yaml
Następujące przykładowe dane wyjściowe przedstawiają pomyślnie utworzone zasoby w klastrze usługi AKS:
$ 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
Podczas uruchamiania aplikacji usługa Kubernetes uwidacznia fronton aplikacji w Internecie. Ten proces może potrwać kilka minut.
Aby monitorować postęp, użyj kubectl get service
polecenia 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 dla adresu EXTERNAL-IP wartość oczekujący zmieni się na rzeczywisty publiczny adres IP, naciśnij klawisze CTRL-C
, aby zatrzymać proces śledzenia narzędzia kubectl
. 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ć aplikację w akcji, otwórz przeglądarkę internetową na zewnętrzny adres IP usługi.
Jeśli aplikacja nie zostanie załadowana, może to być problem z autoryzacją w rejestrze obrazów. Aby wyświetlić stan kontenerów, użyj polecenia kubectl get pods
. Jeśli nie możesz ś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 tym samouczku omówiono:
- Zaktualizuj plik manifestu platformy Kubernetes.
- Uruchom aplikację na platformie Kubernetes.
- Testowanie aplikacji.
W następnym samouczku dowiesz się, jak skalować aplikację Kubernetes i podstawową infrastrukturę Kubernetes.