Udostępnij za pośrednictwem


Przegląd platformy Azure Well-Architected Framework — Azure Database for PostgreSQL

Ten artykuł zawiera najlepsze rozwiązania dotyczące architektury dla Azure Database for PostgreSQL.

Wskazówki są oparte na pięciu filarach doskonałości architektonicznej:

  • Niezawodność
  • Bezpieczeństwo
  • Optymalizacja kosztów
  • Efektywność operacyjna
  • Zapewnianie wydajności

Wymagania wstępne

Zrozumienie filarów Well-Architected Framework może pomóc w utworzeniu wysokiej jakości, stabilnej i wydajnej architektury chmury. Zalecamy przejrzenie obciążenia przy użyciu oceny przeglądu platformy Azure Well-Architected Framework .

Azure Database for PostgreSQL jest usługą relacyjnej bazy danych na platformie Azure opartą na relacyjnej bazie danych PostgreSQL. Jest to w pełni zarządzana baza danych oferowana jako usługa, która może obsługiwać obciążenia o krytycznym znaczeniu — z przewidywalną wydajnością, zabezpieczeniami, wysoką dostępnością i dynamiczną skalowalnością. Azure Database for PostgreSQL jest oparta na wersji community aparatu bazy danych PostgreSQL. Jest ona zgodna z wersją Community Edition serwera PostgreSQL i obsługuje funkcje rozszerzenia PostgreSQL, takie jak PostGIS i TimescaleDB.

Uwaga

Aby zapoznać się z lekkim pomysłem rozwiązania, które używa Azure Database for PostgreSQL do przechowywania wyników analitycznych z interfejsu API usług Cognitive Services, zobacz Inteligentne aplikacje korzystające z Azure Database for PostgreSQL.

Niezawodność

Azure Database for PostgreSQL — serwer elastyczny oferuje obsługę wysokiej dostępności, aprowizując fizycznie oddzielne repliki podstawowe i rezerwowe w tej samej strefie dostępności (strefowo) lub w strefach dostępności (strefowo nadmiarowych). Ten model wysokiej dostępności gwarantuje, że zatwierdzone dane nigdy nie zostaną utracone, jeśli wystąpi awaria. Model został również zaprojektowany, aby baza danych nie stała się pojedynczym punktem awarii w architekturze oprogramowania. Azure Database for PostgreSQL — serwer elastyczny udostępnia funkcje, które chronią dane i ograniczają przestoje dla baz danych o krytycznym znaczeniu podczas planowanych i nieplanowanych zdarzeń przestojów. Oparty na infrastrukturze platformy Azure, która oferuje niezawodną odporność i dostępność, serwer elastyczny ma funkcje ciągłości działania, które zapewniają ochronę błędów, spełniają wymagania dotyczące czasu odzyskiwania i zmniejszają narażenie na utratę danych.

Lista kontrolna dotycząca projektowania niezawodności

Należy przejrzeć zasady projektowania , aby zoptymalizować koszt architektury.

  • Zdefiniowane obiekty docelowe dla celu punktu odzyskiwania (cel punktu odzyskiwania) i cel czasu odzyskiwania (cel czasu odzyskiwania) dla obciążeń.
  • Wybierz odpowiednią konfigurację wysokiej dostępności.
  • Konfigurowanie kopii zapasowej nadmiarowości geograficznej.
  • Przetestuj plan odzyskiwania po awarii, aby zapewnić szybkie przywracanie danych w przypadku awarii.
  • Przetestuj tryb failover na żądanie dla serwera z obsługą wysokiej dostępności, aby upewnić się, że nasza aplikacja działa zgodnie z oczekiwaniami.
  • Monitoruj serwer, aby upewnić się, że jest on w dobrej kondycji i działa zgodnie z oczekiwaniami.

Zalecenia dotyczące niezawodności

Zalecenie Korzyść
Zdefiniowane obiekty docelowe dla celu punktu odzyskiwania (cel punktu odzyskiwania) i cel czasu odzyskiwania (cel czasu odzyskiwania) dla obciążeń. Uzyskaj te wartości, przeprowadzając ocenę ryzyka i zapewniając zrozumienie kosztów i ryzyka przestojów i utraty danych. Są to wymagania niefunkcjonalne systemu i powinny być podyktowane wymaganiami biznesowymi.
Wybierz odpowiednią konfigurację wysokiej dostępności. Azure Database for PostgreSQL Server oferuje konfiguracje wysokiej dostępności, zapewniając, że usługa pozostaje dostępna, jeśli wystąpi awaria strefy i nie zostaną utracone żadne dane. Po skonfigurowaniu wysokiej dostępności serwer Azure Database for PostgreSQL automatycznie aprowizuje replikę rezerwową i zarządza nią.
Konfigurowanie kopii zapasowej nadmiarowości geograficznej. Repliki do odczytu między regionami można wdrożyć w celu ochrony baz danych przed awariami na poziomie regionu. Geograficznie nadmiarowe kopie zapasowe są włączone w wybranych regionach i pomagają w odzyskiwaniu po awarii, jeśli region serwera podstawowego nie działa.
Przetestuj plan odzyskiwania po awarii, aby zapewnić szybkie przywracanie danych, jeśli wystąpi awaria. Repliki do odczytu można wdrożyć w innym regionie i awansować do serwera odczytu i zapisu w razie potrzeby odzyskiwania po awarii.
Monitoruj serwer, aby upewnić się, że jest on w dobrej kondycji i działa zgodnie z oczekiwaniami. Mamy na miejscu monitorowanie bazy danych w celu monitorowania i zgłaszania alertów dotyczących błędów na poziomie bazy danych.

Porada

Aby uzyskać więcej informacji na temat wskazówek dotyczących niezawodności dla Azure Database for PostgreSQL, zobacz Niezawodność z Azure Database for PostgreSQL.

Definicje zasad platformy Azure

Azure Policy definicje ułatwiają wymuszanie określonych reguł i konfiguracji zasobów w środowisku platformy Azure. Aby zapewnić niezawodność Azure Database for PostgreSQL, można utworzyć niestandardowe definicje Azure Policy w celu zaimplementowania określonych konfiguracji i najlepszych rozwiązań. Oto przykład niektórych niestandardowych definicji Azure Policy, które można utworzyć pod kątem niezawodności:

Zabezpieczenia

Pomyśl o zabezpieczeniach w całym cyklu życia aplikacji, od projektowania i implementacji po wdrażanie i operacje. Platforma Azure chroni przed różnymi zagrożeniami, takimi jak włamanie do sieci i ataki DDoS. Nadal musisz utworzyć zabezpieczenia w aplikacji i procesach DevOps.

Lista kontrolna projektu zabezpieczeń

Należy przejrzeć zasady projektowania , aby zoptymalizować koszt architektury.

  • Protokół SSL i wymuszanie szyfrowania w celu zabezpieczenia danych przesyłanych.
  • Zaimplementuj sieciowe grupy zabezpieczeń i zapory w celu kontrolowania dostępu do bazy danych.
  • Użyj usługi Azure Active Directory do uwierzytelniania i autoryzacji, aby ulepszyć zarządzanie tożsamościami.
  • Konfigurowanie zabezpieczeń na poziomie wiersza.

Zalecenia dotyczące zabezpieczeń

Zalecenie Korzyść
Protokół SSL i wymuszanie szyfrowania w celu zabezpieczenia danych przesyłanych. Wdróż globalny certyfikat główny firmy DigiCert z zaufanego certyfikatu urzędu certyfikacji wymaganego do komunikowania się za pośrednictwem protokołu SSL z aplikacjami klienckimi.
Zaimplementuj sieciowe grupy zabezpieczeń i zapory w celu kontrolowania dostępu do bazy danych. W ramach modelu Zero Trust pod kątem zabezpieczeń segmentacja sieci jest zalecana, gdy ścieżki komunikacji między składnikami (w tym przypadku serwer aplikacji i bazy danych) są ograniczone tylko do tego, co jest potrzebne. Można to zaimplementować przy użyciu sieciowej grupy zabezpieczeń i grup zabezpieczeń aplikacji.
Użyj usługi Azure Active Directory do uwierzytelniania i autoryzacji, aby ulepszyć zarządzanie tożsamościami. Uwierzytelnianie Microsoft Azure Active Directory (Azure AD) to mechanizm łączenia się z Azure Database for PostgreSQL przy użyciu tożsamości zdefiniowanych w Azure AD.
Konfigurowanie zabezpieczeń na poziomie wiersza. Zabezpieczenia na poziomie wiersza to funkcja zabezpieczeń postgreSQL, która umożliwia administratorom bazy danych definiowanie zasad w celu kontrolowania sposobu wyświetlania i działania określonych wierszy danych dla co najmniej jednej roli. Zabezpieczenia na poziomie wiersza to dodatkowy filtr, który można zastosować do tabeli bazy danych PostgreSQL.

Optymalizacja kosztów

Optymalizacja kosztów polega na zrozumieniu opcji konfiguracji i zalecanych najlepszych rozwiązaniach w celu zmniejszenia niepotrzebnych wydatków i poprawy wydajności operacyjnej. Należy przejrzeć obciążenie, aby zidentyfikować możliwości zmniejszenia kosztów.

Lista kontrolna projektu kosztów

Należy przejrzeć zasady projektowania , aby zoptymalizować koszt architektury.

  • Wybierz odpowiednią warstwę i jednostkę SKU.
  • Omówienie trybu wysokiej dostępności.
  • Skalowanie warstw obliczeniowych i magazynowania.
  • Rozważ wystąpienia zarezerwowane.
  • Użyj aprowizowanego magazynu.
  • Omówienie kosztów nadmiarowości geograficznej.
  • Ocena decyzji dotyczących skalowania magazynu w górę.
  • Wdróż w tym samym regionie co aplikacja.
  • Opis kosztów zorientowanych na wysoką dostępność.
  • Konsoliduj bazy danych i serwery.

Zalecenia dotyczące kosztów

Zalecenia Korzyści
Wybierz odpowiednią warstwę i jednostkę SKU. Wybierz warstwę cenową i jednostki SKU obliczeniowe, które obsługują określone potrzeby obciążenia. Usługa Azure Advisor udostępnia zalecenia dotyczące optymalizacji i zmniejszenia ogólnych wydatków na platformę Azure. Zalecenia obejmują odpowiednie rozmiary serwera, które należy wykonać.
Omówienie trybu wysokiej dostępności. Wysoka dostępność sprawia, że serwer rezerwowy jest zawsze dostępny w tej samej strefie lub regionie. Włączenie wysokiej dostępności podwoi koszt.
Dostosuj warstwy obliczeniowe i magazynowe. Należy ręcznie dostosować warstwy obliczeniowe i magazynowe, aby spełnić wymagania aplikacji w czasie.
Użyj funkcji Uruchamiania/zatrzymywania. Serwer elastyczny ma funkcję uruchamiania/zatrzymywania, której można użyć do zatrzymania działania serwera, gdy nie jest on potrzebny.
Rozważ wystąpienia zarezerwowane. Rozważmy jedną lub trzyletnią rezerwację, aby otrzymać znaczne rabaty na przetwarzanie. Użyj tych rezerwacji dla obciążeń ze spójnym użyciem zasobów obliczeniowych przez rok lub dłużej.
Użyj aprowizowanego magazynu. Za magazyn kopii zapasowych do 100% całkowitej aprowizowanej pamięci masowej serwera nie są naliczane dodatkowe opłaty.
Omówienie kosztów nadmiarowości. Magazyn geograficznie nadmiarowy (GRS) kosztuje dwa razy więcej niż magazyn lokalnie nadmiarowy (LRS). Magazyn GRS wymaga dwukrotnie większej pojemności magazynu magazynu magazynu LRS.
Ocena decyzji dotyczących skalowania magazynu w górę. Przed skalowaniem magazynu w górę należy ocenić bieżące i przyszłe potrzeby magazynu. Po skalowaniu magazynu w górę nie można skalować w dół.
Wdróż w tym samym regionie co aplikacja. Wdróż w tym samym regionie co aplikacje, aby zminimalizować koszty transferu. W przypadku korzystania z integracji z siecią wirtualną aplikacje w innej sieci wirtualnej nie mają bezpośredniego dostępu do serwerów elastycznych. Aby udzielić im dostępu, należy skonfigurować komunikację równorzędną sieci wirtualnych. Komunikacja równorzędna sieci wirtualnych ma nominalne koszty transferu danych przychodzących i wychodzących.
Opis kosztów zorientowanych na wysoką dostępność. Jest to kompromis ha i koszty. Wysoka dostępność jest dwukrotnie ekonomiczna dla konfiguracji bez wysokiej dostępności, ale jest potrzebna.
Konsoliduj bazy danych i serwery. Można skonsolidować wiele baz danych i serwerów w jeden serwer, aby zmniejszyć koszty.

Definicje zasad platformy Azure

Azure Policy definicje ułatwiają wymuszanie określonych reguł i konfiguracji zasobów w środowisku platformy Azure. Aby zapewnić optymalizację kosztów dla Azure Database for PostgreSQL, możesz utworzyć niestandardowe definicje Azure Policy w celu wymuszenia określonych konfiguracji i najlepszych rozwiązań. Oto przykład niektórych niestandardowych definicji Azure Policy, które można utworzyć na potrzeby optymalizacji kosztów:

Efektywność operacyjna

Zasady doskonałości operacyjnej to szereg zagadnień, które mogą pomóc w osiągnięciu lepszych praktyk operacyjnych.

Aby osiągnąć wyższą kompetencję w operacjach, rozważ i ulepsz sposób tworzenia, wdrażania, obsługi i konserwacji oprogramowania.

Lista kontrolna projektu doskonałości operacyjnej

Należy przejrzeć zasady projektowania , aby zoptymalizować koszt architektury.

  • Skonfiguruj automatyczne kopie zapasowe i zasady przechowywania, aby zachować dostępność danych i spełnić wymagania dotyczące zgodności.
  • Zaimplementuj automatyczne stosowanie poprawek i aktualizacji, aby zapewnić bezpieczeństwo i aktualność wystąpienia postgreSQL.
  • Monitorowanie kondycji i wydajności bazy danych przy użyciu usługi Azure Monitor i konfigurowanie alertów dla metryk krytycznych.

Zalecenia dotyczące doskonałości operacyjnej

Zalecenie Korzyści
Skonfiguruj automatyczne kopie zapasowe i zasady przechowywania, aby zachować dostępność danych i spełnić wymagania dotyczące zgodności. Azure Database for PostgreSQL zapewnia automatyczne kopie zapasowe i przywracanie do punktu w czasie dla bazy danych. Okres przechowywania kopii zapasowych można skonfigurować do 35 dni.
Zaimplementuj automatyczne stosowanie poprawek i aktualizacji, aby zapewnić bezpieczeństwo i aktualność wystąpienia postgreSQL. Azure Database for PostgreSQL zapewnia automatyczne stosowanie poprawek i aktualizacji bazy danych. Możesz skonfigurować okno obsługi serwera, aby zminimalizować wpływ na obciążenie.
Monitorowanie kondycji i wydajności bazy danych przy użyciu usługi Azure Monitor i konfigurowanie alertów dla metryk krytycznych. Azure Database for PostgreSQL zapewnia wbudowane funkcje monitorowania i alertów. Kondycję i wydajność bazy danych można monitorować przy użyciu usługi Azure Monitor. Możesz również skonfigurować alerty dla metryk krytycznych, aby otrzymywać powiadomienia, gdy baza danych nie działa zgodnie z oczekiwaniami.

Definicje zasad doskonałości operacyjnej

Azure Policy definicje ułatwiają wymuszanie określonych reguł i konfiguracji zasobów w środowisku platformy Azure. Aby zapewnić doskonałość operacyjną dla Azure Database for PostgreSQL, możesz utworzyć niestandardowe definicje Azure Policy w celu wymuszania określonych konfiguracji i najlepszych rozwiązań. Oto przykład niektórych niestandardowych definicji Azure Policy, które można utworzyć dla doskonałości operacyjnej:

Efektywność wydajności

Wydajność to możliwość skalowania obciążenia w celu zaspokojenia wymagań, które są na nim umieszczane przez użytkowników. Zalecamy zapoznanie się z zasadami wydajności.

Na liście kontrolnej projektu i na liście zaleceń poniżej objaśnienia wskazują, czy każdy wybór ma zastosowanie do architektury klastra, architektury obciążenia lub obu tych elementów.

Lista kontrolna dotycząca projektowania wydajności

Należy przejrzeć zasady projektowania , aby zoptymalizować koszt architektury.

  • Zaprojektuj schemat i zapytania pod kątem wydajności, aby zminimalizować zużycie zasobów.
  • Zaimplementuj repliki do odczytu, aby odciążyć ruch odczytu i zwiększyć ogólną wydajność.

Zalecenia dotyczące wydajności

Zalecenie Korzyści
Zaprojektuj schemat i zapytania pod kątem wydajności, aby zminimalizować zużycie zasobów. Należy zaprojektować schemat i zapytania pod kątem wydajności, aby zminimalizować zużycie zasobów.
Zaimplementuj repliki do odczytu, aby odciążyć ruch odczytu i zwiększyć ogólną wydajność. Repliki do odczytu można użyć do odciążania ruchu odczytu i zwiększenia wydajności.

Definicje zasad wydajności

Azure Policy definicje ułatwiają wymuszanie określonych reguł i konfiguracji zasobów w środowisku platformy Azure. Aby zapewnić wydajność Azure Database for PostgreSQL, możesz utworzyć niestandardowe definicje Azure Policy w celu wymuszania określonych konfiguracji i najlepszych rozwiązań. Oto przykład niektórych niestandardowych definicji Azure Policy, które można utworzyć pod kątem wydajności:

Dodatkowe zasoby

Rozważ więcej zasobów związanych z Azure Database for PostgreSQL.

Wskazówki dotyczące centrum architektury platformy Azure

Wytyczne w przewodniku Cloud Adoption Framework

Następny krok