Udostępnij za pośrednictwem


Zalecenia dotyczące ustawiania barier zabezpieczających wydatków

Dotyczy tego zalecenia listy kontrolnej dotyczącej optymalizacji kosztów platformy Azure Well-Architected Framework:

CO:04 Ustaw bariery ochronne wydatków. Zabezpieczenia powinny obejmować bramy wydania, zasady ładu, limity zasobów i mechanizmy kontroli dostępu. Określanie priorytetów automatyzacji platformy w przypadku procesów ręcznych.

W tym przewodniku opisano zalecenia dotyczące ustawiania barier zabezpieczających wydatków. Środki zabezpieczające wydatków to miary służące do kontrolowania kosztów i zarządzania nimi w ramach określonego budżetu. Pomagają one zapobiegać nieoczekiwanym lub nadmiernym wydatkom i promować ekonomiczne wykorzystanie zasobów. Bez środków zabezpieczających koszty obciążeń mogą przekraczać budżet, co prowadzi do nieplanowanych wydatków, które mogą obciążać zasoby finansowe.

Definicje

Okres Definicja
Zasady ładu Zestaw reguł, które wymuszają zgodność i umożliwiają inspekcję zasobów obciążeń.
Ład korporacyjny Zestaw zasad, procesów i mechanizmów kontroli, które pomagają zapewnić efektywne, bezpieczne i bezpieczne zarządzanie obciążeniem zgodnie z wymaganiami organizacyjnymi i prawnymi.
Infrastruktura jako kod (IaC) Opisowy model definiowania i wdrażania infrastruktury, w tym sieci, maszyn wirtualnych, modułów równoważenia obciążenia i topologii połączeń.
Bramka wydania Warunek lub punkt kontrolny w potoku wydania, który musi być spełniony przed kontynuowaniem wdrażania. Brama wydania pomaga zapewnić spełnienie określonych kryteriów przed wydaniem oprogramowania.

Kluczowe strategie projektowania

Ustaw zabezpieczenia wydatków, wdrażając środki w celu kontrolowania kosztów i zarządzania nimi w ramach określonego budżetu. Te miary obejmują zasady ładu, mechanizmy kontroli dostępu, bramy wydania, progi budżetu i alerty. Automatyzacja zmniejsza ryzyko wystąpienia błędu ludzkiego, zwiększa wydajność i pomaga w spójnym stosowaniu barier zabezpieczających wydatków. Określanie priorytetów automatyzacji platformy w przypadku procesów ręcznych. Narzędzia i usługi automatyzacji zapewniane przez platformę mogą usprawnić aprowizację, konfigurację i zarządzanie zasobami.

Korzystanie z zasad ładu

Zasady ładu mogą działać jako środki zabezpieczające dotyczące różnych aspektów zasobów, takich jak typy zasobów, konfiguracje, tagi, lokalizacja i zarządzanie danymi. Wiele platform w chmurze ma usługę, która automatyzuje wymuszanie zasad ładu. Użyj zasad automatycznych, aby kontrolować użycie zasobów, wymuszać odpowiedzialność i wyeliminować wydatki na ograniczone typy zasobów. Poniżej przedstawiono niektóre zasady, które należy rozważyć wymusić:

  • Ograniczone typy zasobów: zasady mogą określać, które typy zasobów są dozwolone lub niedozwolone w organizacji. Na przykład organizacja może mieć zasady ograniczające używanie niektórych kosztownych typów zasobów do kontrolowania kosztów.

  • Limity zasobów: ustaw limity zasobów, aby kontrolować koszty i zapobiegać nadmiernej aprowizacji. Uwzględnij limity liczby zasobów, które można aprowizować, rozmiar zasobów i czas trwania użycia zasobów w zasadach. Te limity mogą pomóc w zapobieganiu nadmiernym wydatkom i optymalizowaniu wykorzystania zasobów. Na przykład limity zasobów mogą zminimalizować skutki nieautoryzowanego naruszenia konta związanego z wyszukiwaniem kryptograficznym.

  • Zdefiniowane konfiguracje zasobów: Zasady mogą definiować określone konfiguracje dla zasobów. Możesz wymusić ustawienia zasobów, które promują optymalizację kosztów, takie jak automatyczne skalowanie i archiwizowanie danych

  • Lokalizacje z ograniczeniami: zasady umożliwiają ograniczenie wdrażania zasobów do określonych regionów lub lokalizacji. Rozważ ograniczenie lokalizacji, aby uniknąć kosztownych opłat za transfer danych i zachować zgodność z przepisami dotyczącymi niezależności danych.

  • Dane zarządzane: użyj zasad, aby wymusić praktyki zarządzania danymi, które ułatwiają optymalizowanie kosztów. Można na przykład zaimplementować zasady, które wymagają użycia warstw magazynowania niższego kosztu dla rzadziej używanych danych lub zasad definiujących reguły wygasania na potrzeby przechowywania danych.

  • Wymuszane metadane: ustanów zasady, które wymuszają korzystanie z określonych metadanych w celu lepszego śledzenia i alokacji kosztów. Metadane można również używać w automatyzacji lub w przeglądzie ręcznym. Na przykład użyj metadanych, aby zautomatyzować kopie zapasowe zasobów przy użyciu tagu kopii zapasowej. Spójne zasady metadanych pomagają dopasować koszty do środków zabezpieczających wydatków.

  • Ograniczone zasoby bezczynne: użyj zasad, aby zidentyfikować zasoby bezczynne, aby można było je usunąć lub ponownie zastosować. Rozważ ustawienie zasad, które automatycznie zamykają wystąpienia w godzinach, w których nie są używane.

Ikona ryzykaRyzyko: W przypadku implementowania automatycznego skalowania ustaw maksymalny próg skalowania na podstawie testowania. Maksymalne progi mogą pomóc uniknąć ogromnych skoków skalowania, które powodują przekroczenie kosztów, ale próg ustawiony zbyt niski może negatywnie wpłynąć na wydajność. Aby uzyskać więcej informacji, zobacz Zalecenia dotyczące optymalizowania kosztów skalowania.

Konfigurowanie kontroli dostępu

Skonfiguruj mechanizmy kontroli dostępu, aby ustawić ograniczenia, które uniemożliwiają nadmierne wydatki i aby zapewnić, że tylko autoryzowane osoby mogą korzystać z zasobów. Mechanizmy kontroli dostępu mogą pomóc zmniejszyć ryzyko przypadkowych lub niepotrzebnych zmian, które negatywnie wpływają na optymalizację kosztów. Aby zaimplementować mechanizmy kontroli dostępu na potrzeby optymalizacji kosztów, wykonaj następujące kroki:

  1. Zidentyfikuj niezbędną kontrolę. Zidentyfikuj zasoby i usługi, które wymagają kontroli dostępu.

  2. Definiowanie zasad dostępu. Zdefiniuj zasady dostępu na podstawie zasady dostępu z najniższymi uprawnieniami, udzielając użytkownikom tylko niezbędnych uprawnień do wykonywania swoich zadań. Na przykład niektórzy użytkownicy mogą potrzebować tylko dostępu do odczytu, a inni mogą również wymagać uprawnień do zapisu lub usuwania.

  3. Zaimplementuj uwierzytelnianie. Zaimplementuj metody uwierzytelniania, takie jak nazwa użytkownika/hasło, uwierzytelnianie wieloskładnikowe lub integracja z dostawcami tożsamości, aby zapewnić, że tylko autoryzowani użytkownicy mogą uzyskiwać dostęp do zasobów.

  4. Użyj kontroli dostępu opartej na rolach (RBAC). Skonfiguruj kontrolę dostępu opartą na rolach w celu przypisania ról i uprawnień do użytkowników na podstawie ich obowiązków. Użycie kontroli dostępu opartej na rolach może pomóc w efektywnym zarządzaniu dostępem do zasobów.

  5. Przeglądanie i aktualizowanie kontrolek. Regularnie sprawdzaj i aktualizuj mechanizmy kontroli dostępu, aby upewnić się, że są one zgodne ze zmieniającymi się potrzebami organizacji. Usuń niepotrzebne uprawnienia dostępu i dostosuj poziomy dostępu zgodnie z potrzebami.

Korzystanie z bram wydania

Bramy wydania to punkty kontrolne lub warunki, które muszą zostać spełnione przed kontynuowaniem wydania lub wdrożenia. Użyj bram wydań, aby zapewnić, że wydanie jest opłacalne i jest zgodne z celami optymalizacji. Bramy wydania oferują ustrukturyzowane podejście do identyfikacji i wdrażania środków oszczędzających koszty. Aby zaimplementować bramy wydania na potrzeby optymalizacji kosztów obciążeń, należy wziąć pod uwagę następujące kroki:

  1. Ustanów kryteria bramy wydania. Ustal warunki lub kryteria, które muszą zostać spełnione przed wydaniem lub wdrożeniem zasobów. Uwzględnij czynniki, takie jak limity wydatków, progi wykorzystania zasobów lub punkty kontrolne projektu.

  2. Uwzględnij bramy wydania. Uwzględnij bramy wydania w potoku wdrażania. Możesz użyć narzędzi automatyzacji lub skryptów niestandardowych, aby upewnić się, że wdrożenia zasobów podlegają zdefiniowanym kryteriom.

  3. Monitorowanie wydatków. Stale monitoruj wydatki i użycie zasobów zgodnie ze zdefiniowanymi kryteriami. Jeśli organizacja przekroczy progi wydatków, bramy wydania powinny uniemożliwić dalsze wdrożenia do momentu rozwiązania problemu.

Konfigurowanie alertów dotyczących kosztów

Ważne jest, aby ustawić alerty dotyczące budżetów, anomalii kosztów i wykorzystania planu opartego na zobowiązaniach w celu optymalizacji kosztów. Te alerty zapewniają wgląd w wydatki na chmurę i umożliwiają proaktywne zarządzanie kosztami. Zachowaj ostrożność, aby zarządzać adresatami powiadomień dla alertów i zachować aktualną listę adresatów z bieżącymi obowiązkami i dostępem. Niektóre alerty, które można utworzyć w celu optymalizacji kosztów, obejmują:

  • Alerty budżetowe: ustaw alerty dotyczące budżetów, aby śledzić wydatki względem wstępnie zdefiniowanych progów. Możesz monitorować koszty i otrzymywać powiadomienia, gdy zbliżasz się lub przekraczasz budżet, tworząc miesięczny budżet, konto rozliczeniowe lub grupę zasobów. Alerty budżetowe ułatwiają informowanie o wydatkach i podejmowanie działań zapobiegawczych w celu kontrolowania kosztów.

  • Alerty anomalii kosztów: alerty anomalii powiadamiają o nieoczekiwanych zmianach kosztów, które mogą wskazywać na nieefektywność lub nietypowe wzorce wydatków. Te alerty można skonfigurować w celu zidentyfikowania anomalii w rzeczywistych lub prognozowanych kosztach. Użyj alertów dotyczących anomalii kosztów, aby zbadać podstawową przyczynę odchylenia kosztów i w razie potrzeby podjąć działania naprawcze.

  • Alerty użycia planu opartego na zobowiązaniach: zaimplementuj alerty użycia planu opartego na zobowiązaniach, aby monitorować użycie planu. Jeśli masz plany oparte na zobowiązaniach, ustawianie alertów dotyczących wykorzystania planu może pomóc w efektywnym zarządzaniu i maksymalizacji wartości tych zobowiązań. Możesz skonfigurować te alerty, aby powiadomić uczestników projektu, jeśli wykorzystanie zasobów opartych na zobowiązaniach spadnie poniżej żądanego progu. Zoptymalizuj zasoby oparte na zobowiązaniach i upewnij się, że korzystasz z korzyści wynikających z zobowiązań.

Korzystanie z IaC

Infrastruktura jako kod to praktyka zarządzania zasobami infrastruktury i aprowizowania ich przy użyciu kodu, zwykle w postaci plików konfiguracji. Zaimplementuj tę strategię, aby zdefiniować i zautomatyzować wdrażanie i konfigurowanie zasobów infrastruktury, takich jak maszyny wirtualne, sieci i magazyn, przy użyciu szablonów opartych na kodzie.

Strategie IaC zapewniają ustrukturyzowane i powtarzalne podejście do zarządzania zasobami infrastruktury i kontrolowania ich. Usługa IaC może ułatwić wdrażanie zasobów zgodnie z potrzebami, usuwanie zasobów bez ciągłego uruchamiania i optymalizowanie kosztów, zapewniając wdrażanie i konfigurowanie zasobów zgodnie ze wstępnie zdefiniowanymi regułami. Wykonaj następujące kroki, aby użyć usługi IaC na potrzeby optymalizacji kosztów:

  1. Tworzenie szablonów IaC. Utwórz język szablonu oparty na kodzie, aby zdefiniować zasoby infrastruktury i ich konfiguracje. Te szablony umożliwiają określenie żądanego stanu zasobów infrastruktury w sposób deklaratywny. Zaimplementuj najlepsze rozwiązania dotyczące optymalizacji kosztów w kodzie infrastruktury. Rozważ odpowiednie ustalanie rozmiaru zasobów przy użyciu wystąpień zarezerwowanych lub planów oszczędnościowych. Użyj tanich opcji magazynu i zastosuj metadane zasobów do alokacji kosztów i śledzenia.

  2. Przechowywanie szablonów. Przechowywanie szablonów IaC w systemie kontroli wersji w celu śledzenia zmian i zarządzania różnymi wersjami. Możesz użyć kontroli wersji, aby zachować historię konfiguracji infrastruktury i wspierać współpracę między członkami zespołu.

  3. Użyj parametrów. Użyj parametrów w szablonach, aby były wielokrotnego użytku i konfigurowalne. Za pomocą parametrów można łatwo dostosować wdrożenia infrastruktury dla różnych środowisk lub scenariuszy.

  4. Użyj środowisk efemerycznych. Użyj efemerycznych środowisk do celów programistycznych, testowych i przejściowych, aby zoptymalizować koszty. Środowiska efemeryczne powinny być uruchamiane tylko w razie potrzeby. Utwórz te środowiska przy użyciu narzędzi IaC i usuń środowisko po zakończeniu pracy.

  5. Użyj narzędzi IaC. Użyj narzędzi IaC i struktur, aby zautomatyzować wdrażanie i konfigurację zasobów infrastruktury. Użyj automatyzacji, aby spójnie i niezawodnie wdrażać zasoby zgodnie ze zdefiniowanymi zasadami.

  6. Monitorowanie wdrożonych zasobów. Regularnie monitoruj zasoby i ich koszty, aby zapewnić zgodność z zasadami wydatków. Użyj narzędzi do monitorowania i zgłaszania alertów, aby zidentyfikować wszelkie odchylenia od zdefiniowanych poręczy i w razie potrzeby podjąć działania naprawcze. Sprawdź nieużywane zasoby i usuń je, najlepiej z automatyzacją.

Ułatwienia platformy Azure

Korzystanie z zasad ładu: użyj usługi Azure Policy , aby zdefiniować i wymusić zasady ładu zgodne z celami optymalizacji kosztów. Za pomocą usługi Azure Policy można ustawić reguły dla grup zarządzania, subskrypcji i grup zasobów. Te zasady mogą regulować aprowizację zasobów, limity użycia i alokację kosztów. Zasady umożliwiają promowanie praw do zasobów, identyfikowanie i eliminowanie bezczynnych lub niedostatecznie używanych zasobów oraz zachęcanie do korzystania z tanich usług i architektur.

Platforma Azure udostępnia wbudowane zasady dla typowych przypadków użycia, które zapewniają ustandaryzowany i wydajny sposób wymuszania reguł i wytycznych dotyczących zasobów platformy Azure. Zalecamy zdefiniowanie własnych zasad niestandardowych w celu spełnienia unikatowych wymagań biznesowych lub określonych przepisów branżowych, których wbudowane zasady platformy Azure nie obejmują. Aby uzyskać więcej informacji, zobacz Wbudowane definicje zasad usługi Azure Policy.

Platforma Azure umożliwia ustawianie limitów lub limitów przydziałów, aby zapobiec nieoczekiwanym kosztom. Oprócz rozmiaru i czasu trwania użycia zasobów można zdefiniować limity liczby zasobów, które można aprowizować. Ustaw te limity, aby zapobiec nadmiernej aprowizacji i kontrolować koszty.

  • Identyfikowanie niedostatecznie używanych lub bezczynnych zasobów. Użyj usługi Azure Advisor , aby zoptymalizować i zmniejszyć ogólne koszty platformy Azure, identyfikując bezczynne i niedostatecznie wykorzystywane zasoby. Otrzymywanie zaleceń dotyczących kosztów z sekcji kosztów na pulpicie nawigacyjnym doradcy.

  • Dodaj metadane zasobów. Użyj ładu platformy Azure, aby zaimplementować tagowanie zasobów i kategoryzacja. Tagowanie zasobów przy użyciu odpowiednich metadanych w celu śledzenia i przydzielania kosztów do różnych działów, projektów lub centrów kosztów. Wgląd w przypisywanie kosztów może pomóc zidentyfikować obszary wysokich wydatków, zoptymalizować alokację zasobów i ułatwić lepsze zarządzanie kosztami.

Konfigurowanie kontroli dostępu: zarządzanie dostępem do zasobów przy użyciu kontroli dostępu opartej na rolach platformy Azure. Kontrola dostępu oparta na rolach umożliwia przyznawanie uprawnień użytkownikom, grupom lub aplikacjom na podstawie ich ról. Zaimplementuj kontrolę dostępu opartą na rolach, aby zapewnić, że tylko autoryzowani użytkownicy mają dostęp do zasobów, co zmniejsza ryzyko nieautoryzowanego użycia zasobów i potencjalnych konsekwencji związanych z kosztami.

Używanie bram wydania: użyj usługi Azure Pipelines release management, aby zdefiniować i wymusić bramy wydania. Możesz skonfigurować ręczne lub automatyczne punkty kontrolne, aby zapewnić spełnienie określonych kryteriów, takich jak kontrole zabezpieczeń, wymagania dotyczące zgodności i progi kosztów.

Używanie infrastruktury jako kodu. Za pomocą narzędzi i usług platformy Azure można wdrażać zasoby infrastruktury i zarządzać nimi przy użyciu kodu. Korzystając z narzędzi, takich jak szablony usługi Azure Resource Manager (ARM), Azure Bicep i Azure DevOps, można definiować i wdrażać zasoby infrastruktury w sposób deklaratywny. Platforma Azure ma szablony Bicep, Azure Resource Manager i Terraform dla każdego zasobu platformy Azure.

Użyj usługi Azure Pipelines lub innych narzędzi ciągłej integracji i ciągłego dostarczania (CI/CD), aby zautomatyzować procesy kompilowania, testowania i wdrażania. Zespoły mogą używać potoków do definiowania serii kroków i akcji uruchamianych automatycznie za każdym razem, gdy zmiany zostaną wprowadzone w bazie kodu. Zautomatyzuj te procesy, aby zmniejszyć nakład pracy ręcznej, zapewnić spójność i przyspieszyć dostarczanie oprogramowania.

Rozważ użycie zasobów o niższych kosztach dla środowisk efemerycznych lub nieprodukcyjnych w celu optymalizacji kosztów. Platforma Azure udostępnia różne warstwy cenowe dla zasobów. Cennik usługi Azure DevTest Labs i rezerwacje platformy Azure to metody oszczędzania kosztów, które można eksplorować pod kątem środowisk efemerycznych.

Repozytoria Git, takie jak azure Repos i GitHub, zapewniają możliwości kontroli wersji na potrzeby zarządzania konfiguracjami kodu i infrastruktury. Zespoły i deweloperzy mogą używać zautomatyzowanych repozytoriów do współpracy, śledzenia zmian i utrzymywania historii bazy kodu.

Środowiska wdrażania platformy Azure umożliwiają zespołom deweloperów szybkie i łatwe tworzenie infrastruktury aplikacji przy użyciu szablonów opartych na projekcie, które zapewniają spójność i najlepsze rozwiązania przy jednoczesnym maksymalizacji zabezpieczeń. Dostęp na żądanie do bezpiecznych środowisk przyspiesza etapy cyklu życia tworzenia oprogramowania w sposób zgodny i ekonomiczny.

Interfejs wiersza polecenia dla deweloperów platformy Azure to narzędzie typu open source, które skraca czas potrzebny na pobranie aplikacji z lokalnego środowiska deweloperskiego na platformę Azure. Interfejs wiersza polecenia dla deweloperów platformy Azure oferuje przyjazne dla deweloperów polecenia mapowane na kluczowe etapy przepływu pracy, niezależnie od tego, czy pracujesz w terminalu, zintegrowanym środowisku projektowym (IDE) czy ciągłej integracji/ciągłego wdrażania.

Konfigurowanie alertów kosztów: użyj usługi Microsoft Cost Management , aby zoptymalizować koszty i wymusić zabezpieczenia wydatków. Funkcje zarządzania kosztami umożliwiają ustawianie budżetów i alertów, wizualizowanie informacji o kosztach przy użyciu narzędzi, takich jak usługa Power BI, oraz analizowanie wzorców kosztów i wąskich gardeł wydajności.

Dopasowanie organizacji

Zespoły centralne powinny korzystać ze wskazówek dotyczących przewodnika Cloud Adoption Framework, aby skonfigurować zabezpieczenia wydatków w całej organizacji, aby zespoły ds. obciążeń mogły zrozumieć, co może zaoferować centralny zespół.

Zachęcamy organizację do przyjęcia barier zabezpieczających opartych na zasadach. Aby zapoznać się z przykładową implementacją, zobacz Wdrażanie barier zabezpieczających opartych na zasadach.

Lista kontrolna optymalizacji kosztów

Zapoznaj się z pełnym zestawem zaleceń.