Wdrażanie bazy danych PostgreSQL o wysokiej dostępności w usłudze AKS przy użyciu interfejsu wiersza polecenia platformy Azure
W tym przewodniku wdrożysz klaster PostgreSQL o wysokiej dostępności obejmujący wiele stref dostępności platformy Azure w usłudze AKS za pomocą interfejsu wiersza polecenia platformy Azure.
W tym artykule przedstawiono wymagania wstępne dotyczące konfigurowania klastra PostgreSQL w usłudze Azure Kubernetes Service (AKS) oraz omówienie pełnego procesu wdrażania i architektury.
Ważne
Oprogramowanie typu open source jest wymienione w dokumentacji i przykładach usługi AKS. Wdrażane oprogramowanie jest wykluczone z umów dotyczących poziomu usług AKS, ograniczonej gwarancji i pomoc techniczna platformy Azure. W miarę korzystania z technologii open source wraz z usługą AKS zapoznaj się z opcjami pomocy technicznej dostępnymi w odpowiednich społecznościach i opiekunami projektów, aby opracować plan.
Na przykład repozytorium Ray GitHub opisuje kilka platform, które różnią się w czasie odpowiedzi, celu i poziomie pomocy technicznej.
Firma Microsoft ponosi odpowiedzialność za tworzenie pakietów typu open source wdrażanych w usłudze AKS. Ta odpowiedzialność obejmuje posiadanie pełnej własności procesu kompilacji, skanowania, podpisywania, weryfikowania i poprawek oraz kontroli nad plikami binarnymi na obrazach kontenerów. Aby uzyskać więcej informacji, zobacz Zarządzanie lukami w zabezpieczeniach dla usług AKS i pokrycie pomocy technicznej usługi AKS.
Wymagania wstępne
- W tym przewodniku założono, że podstawowa wiedza na temat podstawowych pojęć związanych z platformą Kubernetes i bazy danych PostgreSQL.
- Potrzebujesz wbudowanych ról właściciela lub administratora dostępu użytkowników i współautora platformy Azure w subskrypcji na koncie platformy Azure.
Użyj środowiska powłoki Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Szybki start dotyczący powłoki Bash w usłudze Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.
Po wyświetleniu monitu zainstaluj rozszerzenie interfejsu wiersza polecenia platformy Azure podczas pierwszego użycia. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Korzystanie z rozszerzeń w interfejsie wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
Potrzebne są również następujące zasoby:
- Interfejs wiersza polecenia platformy Azure w wersji 2.56 lub nowszej.
- Rozszerzenie usługi Azure Kubernetes Service (AKS) w wersji zapoznawczej.
- jq, wersja 1.5 lub nowsza.
- kubectl w wersji 1.21.0 lub nowszej.
- Program Helm w wersji 3.0.0 lub nowszej.
- openssl w wersji 3.3.0 lub nowszej.
- Program Visual Studio Code lub odpowiednik.
- Krew w wersji 0.4.4 lub nowszej.
- wtyczka kubectl CloudNativePG (CNPG).
Proces wdrażania
Niniejszy przewodnik zawiera informacje na temat wykonywania następujących czynności:
- Użyj interfejsu wiersza polecenia platformy Azure, aby utworzyć klaster usługi AKS z wieloma strefami.
- Wdróż klaster i bazę danych PostgreSQL o wysokiej dostępności przy użyciu operatora CNPG.
- Konfigurowanie monitorowania bazy danych PostgreSQL przy użyciu rozwiązań Prometheus i Grafana.
- Wdrażanie przykładowego zestawu danych w bazie danych PostgreSQL.
- Wykonaj uaktualnienia klastrów PostgreSQL i AKS.
- Symulowanie przerw w działaniu klastra i trybu failover repliki PostgreSQL.
- Wykonaj kopię zapasową i przywracanie bazy danych PostgreSQL.
Architektura wdrażania
Ten diagram przedstawia konfigurację klastra PostgreSQL z jedną repliką podstawową i dwie repliki do odczytu zarządzane przez operator CloudNativePG (CNPG). Architektura zapewnia wysoce dostępną usługę PostgreSQL działającą w klastrze usługi AKS, która może wytrzymać awarię strefy przez przełączenie w tryb failover między replikami.
Kopie zapasowe są przechowywane w usłudze Azure Blob Storage, zapewniając inny sposób przywracania bazy danych w przypadku problemu z replikacją strumieniową z repliki podstawowej.
Uwaga
W przypadku aplikacji wymagających separacji danych na poziomie bazy danych można dodać więcej baz danych za pomocą poleceń postInitSQL i podobnych. Obecnie nie jest możliwe dodanie większej liczby baz danych za pomocą operatora CNPG w sposób deklaratywny. Dowiedz się więcej o operatorze CNPG.
Następne kroki
Współautorzy
Firma Microsoft utrzymuje ten artykuł. Następujący współautorzy pierwotnie to napisali:
- Ken Kilty | Moduł TPM podmiotu zabezpieczeń
- Russell de Pina | Moduł TPM podmiotu zabezpieczeń
- Adrian Joian | Starszy inżynier klienta
- Jenny Hayes | Starszy deweloper zawartości
- Carol Smith | Starszy deweloper zawartości
- Erin Schaffer | Content Developer 2
- Adam Sharif | Inżynier klienta 2
Azure Kubernetes Service