Wdrażanie aplikacji bezstanowej PHP Guestbook
za pomocą usługi Redis w klastrze Kubernetes z obsługą usługi Azure Arc w procesorze GPU Usługi Azure Stack Edge Pro
DOTYCZY: Azure Stack Edge Pro — GPUAzure Stack Edge Pro 2Azure Stack Edge Pro R Azure Stack Edge Mini R
W tym artykule pokazano, jak utworzyć i wdrożyć prostą wielowarstwową aplikację internetową przy użyciu platformy Kubernetes i usługi Azure Arc. Ten przykład składa się z następujących składników:
- Wzorzec usługi Redis z jednym wystąpieniem do przechowywania
guestbook
wpisów - Wiele replikowanych wystąpień usługi Redis do obsługi odczytów
- Wiele wystąpień frontonu internetowego
Wdrożenie odbywa się przy użyciu metodyki GitOps w klastrze Kubernetes z włączoną usługą Azure Arc na urządzeniu Azure Stack Edge Pro.
Ta procedura jest przeznaczona dla osób, które przejrzyły obciążenia Kubernetes na urządzeniu Azure Stack Edge Pro i zapoznały się z pojęciami co to jest platforma Kubernetes z obsługą usługi Azure Arc (wersja zapoznawcza).
Uwaga
Ten artykuł zawiera odwołania do terminu slave (element podrzędny), który nie jest już używany przez firmę Microsoft. Po usunięciu tego terminu z oprogramowania usuniemy go również z artykułu.
Wymagania wstępne
Przed wdrożeniem aplikacji bezstanowej upewnij się, że na urządzeniu zostały spełnione następujące wymagania wstępne i klient, którego będziesz używać do uzyskiwania dostępu do urządzenia:
Na potrzeby urządzenia
Masz poświadczenia logowania do urządzenia Azure Stack Edge Pro z 1 węzłem.
- Urządzenie jest aktywowane. Zobacz Aktywowanie urządzenia.
- Urządzenie ma rolę obliczeniową skonfigurowaną za pośrednictwem witryny Azure Portal i ma klaster Kubernetes. Zobacz Konfigurowanie obliczeń.
Włączono usługę Azure Arc w istniejącym klastrze Kubernetes na urządzeniu i masz odpowiedni zasób usługi Azure Arc w witrynie Azure Portal. Aby uzyskać szczegółowe instrukcje, zobacz Włączanie usługi Azure Arc na urządzeniu Azure Stack Edge Pro.
W przypadku uzyskiwania dostępu do urządzenia przez klienta
Masz system kliencki z systemem Windows, który będzie używany do uzyskiwania dostępu do urządzenia Azure Stack Edge Pro.
Klient korzysta z programu Windows PowerShell 5.0 lub nowszego. Aby pobrać najnowszą wersję programu Windows PowerShell, przejdź do sekcji Instalowanie programu Windows PowerShell.
Możesz również mieć dowolnego innego klienta z obsługiwanym systemem operacyjnym. W tym artykule opisano procedurę korzystania z klienta systemu Windows.
Wykonano procedurę opisaną w artykule Uzyskiwanie dostępu do klastra Kubernetes na urządzeniu Azure Stack Edge Pro. Masz:
Zainstalowane
kubectl
na kliencie.Upewnij się, że
kubectl
wersja klienta nie jest niesymetryczna niż jedna wersja z wersji głównej platformy Kubernetes uruchomionej na urządzeniu Azure Stack Edge Pro.- Użyj
kubectl version
polecenia , aby sprawdzić wersję narzędzia kubectl uruchomioną na kliencie. Zanotuj pełną wersję. - W lokalnym interfejsie użytkownika urządzenia Azure Stack Edge Pro przejdź do pozycji Przegląd i zanotuj numer oprogramowania Kubernetes.
- Sprawdź te dwie wersje pod kątem zgodności z mapowaniem podanym w obsługiwanej wersji rozwiązania Kubernetes.
- Użyj
Masz konfigurację usługi GitOps, której można użyć do uruchomienia wdrożenia usługi Azure Arc. W tym przykładzie użyjesz następujących
yaml
plików do wdrożenia na urządzeniu Azure Stack Edge Pro.frontend-deployment.yaml
frontend-service.yaml
redis-master-deployment.yaml
redis-master-service.yaml
redis-slave-deployment.yaml
redis-slave-service.yaml
Wdrażanie konfiguracji
Wykonaj następujące kroki, aby skonfigurować zasób usługi Azure Arc w celu wdrożenia konfiguracji usługi GitOps za pośrednictwem witryny Azure Portal:
W witrynie Azure Portal przejdź do zasobu usługi Azure Arc utworzonego podczas włączania usługi Azure Arc w klastrze Kubernetes na urządzeniu.
Przejdź do pozycji Konfiguracje i wybierz pozycję + Dodaj konfigurację.
Określ rozszerzenie Flux w wersji 1.
W obszarze Dodawanie konfiguracji usługi GitOps wprowadź odpowiednie wartości dla pól, a następnie wybierz pozycję Dodaj.
Parametr Opis Nazwa konfiguracji Nazwa zasobu konfiguracji. Nazwa wystąpienia operatora Nazwa wystąpienia operatora w celu zidentyfikowania określonej konfiguracji. Nazwa to ciąg zawierający maksymalnie 253 znaki, które muszą mieć małe litery, alfanumeryczne, łącznik i tylko kropkę. Przestrzeń nazw operatora Ustaw wartość demotestguestbook , aby pasować do przestrzeni nazw określonej we wdrożeniu yaml
.
Pole definiuje przestrzeń nazw, w której jest zainstalowany operator. Nazwa to ciąg zawierający maksymalnie 253 znaki, które muszą mieć małe litery, alfanumeryczne, łącznik i tylko kropkę.Adres URL repozytorium
Ścieżka do repozytorium Git w lokalizacjihttp://github.com/username/repo
lubgit://github.com/username/repo
formatu, w którym znajduje się konfiguracja usługi GitOps.Zakres operatora Wybierz pozycję Przestrzeń nazw.
Ten parametr definiuje zakres, w którym jest zainstalowany operator. Wybierz pozycję Przestrzeń nazw, aby zainstalować operatora w przestrzeni nazw określonej w plikach yaml wdrożenia.Typ operatora Pozostaw wartość domyślną.
Ten parametr określa typ operatora — domyślnie ustawiony jako strumień.Parametry operatorów Pozostaw to pole puste.
Ten parametr zawiera parametry, które mają być przekazywane do operatora flux.Helm Pozostaw to pole wyboru Niezaznaczone.
Włącz tę opcję, jeśli wykonasz wdrożenia oparte na wykresach.Wdrożenie konfiguracji zostanie uruchomione, a stan Operator jest wyświetlany jako Oczekujące.
Wdrożenie trwa kilka minut. Po zakończeniu wdrażania stan Operator jest wyświetlany jako Zainstalowany.
Weryfikowanie wdrożenia
Wdrożenie za pośrednictwem konfiguracji GitOps tworzy demotestguestbook
przestrzeń nazw określoną w plikach wdrażania yaml
znajdujących się w repozytorium Git.
Po zastosowaniu konfiguracji gitOps połącz się z interfejsem programu PowerShell urządzenia.
Uruchom następujące polecenie, aby wyświetlić listę zasobników uruchomionych w
demotestguestbook
przestrzeni nazw odpowiadającej wdrożeniu.kubectl get pods -n <your-namespace>
Oto przykładowe dane wyjściowe.
[10.128.44.240]: PS>kubectl get pods -n demotestguestbook NAME READY STATUS RESTARTS AGE aseoperator1-5569658644-cqtb5 1/1 Running 0 91m frontend-6cb7f8bd65-4xb4f 1/1 Running 0 91m frontend-6cb7f8bd65-q9cxj 1/1 Running 0 91m frontend-6cb7f8bd65-xpzs6 1/1 Running 0 91m memcached-86bdf9f56b-5l2fq 1/1 Running 0 91m redis-master-7db7f6579f-2z29w 1/1 Running 0 91m redis-slave-7664787fbc-lgr2n 1/1 Running 0 91m redis-slave-7664787fbc-vlvzn 1/1 Running 0 91m [10.128.44.240]: PS>
W tym przykładzie usługa frontonu została wdrożona jako type:LoadBalancer. Aby wyświetlić
guestbook
element , należy znaleźć adres IP tej usługi. Uruchom następujące polecenie.kubectl get service -n <your-namespace>
[10.128.44.240]: PS>kubectl get service -n demotestguestbook NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE frontend LoadBalancer 10.96.79.38 10.128.44.245 80:31238/TCP 85m memcached ClusterIP 10.102.47.75 <none> 11211/TCP 85m redis-master ClusterIP 10.104.32.99 <none> 6379/TCP 85m redis-slave ClusterIP 10.104.215.146 <none> 6379/TCP 85m [10.128.44.240]: PS>
Usługa frontonu ma
type:LoadBalancer
zewnętrzny adres IP. Ten adres IP pochodzi z zakresu adresów IP określonego dla usług zewnętrznych podczas konfigurowania ustawień sieci obliczeniowej na urządzeniu. Użyj tego adresu IP, aby wyświetlić adresguestbook
URL:https://<external-IP-address>
.
Usuwanie wdrożenia
Aby usunąć wdrożenie, możesz usunąć konfigurację z witryny Azure Portal. Usunięcie konfiguracji spowoduje usunięcie utworzonych obiektów, w tym wdrożeń i usług.
- W witrynie Azure Portal przejdź do obszaru Konfiguracje zasobów > usługi Azure Arc.
- Znajdź konfigurację, którą chcesz usunąć. Wybierz ... aby wywołać menu kontekstowe, a następnie wybierz pozycję Usuń.
Usunięcie konfiguracji może potrwać kilka minut.
Następne kroki
Dowiedz się, jak monitorować wdrożenia na urządzeniu Azure Stack Edge Pro przy użyciu pulpitu nawigacyjnego Kubernetes