Microsoft AZ-104: Subskrypcje Azure, nadzór i zarządzanie kosztami — Przewodnik do nauki
Część Microsoft Azure Administrator Associate AZ-104 — Przewodnik do nauki. Ćwicz ze zweryfikowanymi odpowiedziami w centrum egzaminów Microsoft, albo rozwiąż testy na czas na ExamRoll.io.
Przegląd
Subskrypcje, ład korporacyjny i zarządzanie kosztami w Azure definiują, w jaki sposób strukturyzujesz, zabezpieczasz, standaryzujesz i płacisz za zasoby chmurowe na dużą skalę. Solidny projekt zaczyna się od hierarchii organizacyjnej (grupy zarządzania i subskrypcje), stosuje dostęp oparty na zasadzie najmniejszych uprawnień (RBAC), egzekwuje standardy i zgodność (Policy, Blueprints, blokady i tagi) oraz ciągle optymalizuje wydatki (Cost Management i Advisor). Azure Resource Manager (ARM) stanowi podstawę operacji wdrażania, grupowania i cyklu życia, dzięki czemu standardy i mechanizmy kontroli są spójnie stosowane od głównej grupy zarządzania (root management group) aż po poszczególne zasoby.
Struktura organizacyjna i kontrola dostępu
Grupy zarządzania (Management Groups) to konstrukcja najwyższego poziomu służąca do organizowania jednej lub więcej subskrypcji w ramach jednej głównej grupy zarządzania. Można zagnieżdżać grupy zarządzania do sześciu poziomów głębokości (z wyłączeniem głównej grupy), aby odzwierciedlać granice organizacyjne lub środowiskowe (na przykład Korporacja > Prod/NonProd > Jednostki Biznesowe). Zarówno przypisania ról RBAC, jak i przypisania Azure Policy zastosowane na poziomie grupy zarządzania są dziedziczone przez wszystkie podrzędne grupy zarządzania, subskrypcje, grupy zasobów i zasoby, chyba że zostaną jawnie nadpisane na niższym poziomie (scope). To dziedziczenie ma kluczowe znaczenie dla spójnego egzekwowania standardów; na przykład polityka „Odmów dostępu do publicznego magazynu” (Deny public storage) w grupie zarządzania Production ma zastosowanie do każdej subskrypcji produkcyjnej bez konieczności konfiguracji dla każdej subskrypcji z osobna.
Subskrypcje to granice izolacji dla rozliczeń i wdrożeń. Typowe rodzaje obejmują Pay-As-You-Go, Enterprise Agreement (EA), Microsoft Customer Agreement (MCA), CSP oraz oferty oparte na środkach (kredytach), takie jak subskrypcje Visual Studio. Subskrypcje oddzielają wydatki, przydziały (quotas) i zakresy RBAC oraz stanowią podstawową jednostkę dla opłat i budżetów. Przenoszenie zasobów między subskrypcjami jest często konieczne podczas zmian w cyklu życia (np. przeniesienie z tenanta deweloperskiego do produkcyjnego, reorganizacje). Wsparcie dla przenoszenia zasobów zależy od dostawcy zasobów (resource provider) i samego zasobu; zasoby oparte na ARM, takie jak maszyny wirtualne, dyski zarządzane, konta magazynu, sieci wirtualne, a nawet magazyny Recovery Services, zazwyczaj można przenosić z pewnymi ograniczeniami. Wymagania wstępne obejmują posiadanie źródła i celu w tym samym tenancie Azure Active Directory (przenoszenie między tenantami jest ograniczone), zarejestrowanych dostawców zasobów w obu subskrypcjach, zgodnych regionów/jednostek SKU oraz braku blokujących blokad/polityk. Należy spodziewać się przejściowej niedostępności niektórych zasobów podczas przenoszenia; zaplanuj okna konserwacyjne dla usług stanowych. Zasoby klasyczne (ASM) nie mogą być przenoszone. Zawsze weryfikuj wsparcie, korzystając z operacji „Przenieś” (Move) w portalu lub w dokumentacji dostawcy zasobów.
Azure RBAC zapewnia szczegółowy dostęp oparty na zasadzie najmniejszych uprawnień za pomocą przypisań ról w określonym zakresie (scope). Zakresem może być grupa zarządzania, subskrypcja, grupa zasobów lub pojedynczy zasób; przypisania są dziedziczone w dół. Podstawowe wbudowane role to:
- Owner: pełny dostęp do wszystkich zasobów, w tym do przypisywania ról.
- Contributor: pełne uprawnienia do tworzenia/aktualizowania/usuwania zasobów, ale bez uprawnień do przypisywania ról.
- Reader: dostęp tylko do odczytu. Role niestandardowe (Custom roles) pozwalają określić dozwolone akcje (Actions i DataActions), z wyłączeniem NotActions i NotDataActions, i są definiowane na poziomie zamierzonego zakresu przypisania lub powyżej. Przypisania odmowy (Deny assignments), tworzone przez niektóre usługi, takie jak Blueprints lub przez blokady, mają pierwszeństwo przed przypisaniami zezwalającymi, co zapobiega przypadkowej eskalacji uprawnień.
Zarządzanie, zgodność i mechanizmy ochronne zasobów
Azure Policy ocenia stan zasobów w momencie ich tworzenia/aktualizacji oraz podczas regularnych skanów zgodności. Definicja polityki (policy definition) wyraża regułę (z opcjonalnymi parametrami) i jej efekt. Powiązane definicje grupuje się w inicjatywy (initiatives), aby uprościć przypisywanie na dużą skalę. Przypisania (assignments) dołączają definicję lub inicjatywę do określonego zakresu (grupy zarządzania, subskrypcji, grupy zasobów lub zasobu) wraz z wartościami parametrów oraz, w przypadku niektórych efektów, tożsamością zarządzaną (managed identity) na potrzeby naprawy (remediation). Kluczowe efekty do opanowania:
- Deny: blokuje niezgodne z polityką operacje tworzenia/aktualizacji w momencie żądania.
- Audit: zezwala na operację, ale rejestruje niezgodność w celach raportowania.
- DeployIfNotExists: jeśli brakuje powiązanego zasobu lub ustawienia, uruchamia wdrożenie szablonu w celu doprowadzenia zasobu docelowego do stanu zgodności (na przykład wdrożenie ustawienia diagnostycznego lub przypisania polityki). Inne ważne efekty to Append (dodaje pola, takie jak tagi, podczas zapisu) i Modify (modyfikuje właściwości). Polityki mogą wymuszać dozwolone lokalizacje, ograniczenia dotyczące jednostek SKU, wymagane tagi, ustawienia diagnostyczne i standardy szyfrowania. Na przykład, ograniczenie lokalizacji dla Azure SQL Server zapewnia, że wdrożenia odbywają się tylko w zatwierdzonych regionach lub grupach zasobów.
Azure Blueprints umożliwiają zarządzanie jako kod (governance-as-code) poprzez łączenie artefaktów — przypisań polityk, przypisań ról, szablonów ARM i deklaracji grup zasobów — w wersjonowany schemat (blueprint). Schematy przypisuje się do subskrypcji lub grup zarządzania, aby spójnie tworzyć środowiska. Przypisanie schematu może stosować blokady na poziomie artefaktów w trybach takich jak DoNotDelete lub ReadOnly, aby chronić wdrożone zasoby przed zmianami (drift). Używaj Blueprints do inicjowania nowych subskrypcji z obowiązkowymi mechanizmami kontroli i bazową infrastrukturą.
Blokady zasobów (resource locks) stanowią ostatnią linię obrony przed przypadkowymi modyfikacjami. Zastosuj CanNotDelete, aby zapobiec usunięciu, jednocześnie zezwalając na aktualizacje; zastosuj ReadOnly, aby zablokować operacje zapisu i usuwania. Blokady są dziedziczone z wyższych zakresów, więc blokada ReadOnly na grupie zasobów wpływa na wszystkie zawarte w niej zasoby (na przykład zatrzymanie/uruchomienie maszyny wirtualnej kończy się niepowodzeniem, ponieważ te operacje wykonują zapis). Blokady mają pierwszeństwo przed uprawnieniami RBAC: nawet właściciele (Owners) nie mogą usunąć zablokowanego zasobu bez uprzedniego usunięcia blokady.
Tagi to pary klucz-wartość przypisywane do grup zasobów i zasobów w celu kategoryzacji obciążeń (dział, środowisko, centrum kosztowe). Dziedziczenie tagów nie jest automatyczne; aby zagwarantować obecność tagów na każdym zasobie, użyj Azure Policy (z efektami Append/Modify) do wymuszania lub dziedziczenia tagów z grupy zasobów w momencie tworzenia/aktualizacji. Tagi umożliwiają raportowanie kosztów na podstawie tagów w usłudze Cost Management, dzięki czemu działy są dokładnie obciążane kosztami (chargeback). Aby powiązać poszczególne zasoby, takie jak maszyny wirtualne, z działami, należy zastosować tagi bezpośrednio do każdej maszyny wirtualnej.
Zarządzanie kosztami i optymalizacja
Azure Cost Management + Billing zapewnia budżety, analizę kosztów, eksporty i alerty. Budżety są definiowane w określonym zakresie (subskrypcja lub grupa zasobów) i mogą być filtrowane według grupy zasobów, usługi lub tagu. Skonfiguruj progi (np. 50%, 80%, 100%), aby wysyłać alerty za pośrednictwem grup akcji (action groups) i opcjonalnie wyzwalać automatyzację (Logic App, Function) w celu skalowania w dół lub wyłączania niekrytycznych obciążeń; same budżety nie ograniczają wydatków. Analiza kosztów pozwala na przeglądanie danych według czasu, zasobu, licznika (meter), grupy zasobów, subskrypcji i tagu, aby zrozumieć czynniki generujące koszty i trendy; zaplanuj eksporty do usługi storage w celu załadowania danych do narzędzi BI. Limity wydatków (spending limits) są dostępne dla ofert opartych na kredytach (np. bezpłatna wersja próbna, Visual Studio) i po ich osiągnięciu subskrypcja przechodzi w stan wyłączony, aby zapobiec dalszym opłatom. Limity wydatków nie są obsługiwane w przypadku ofert Pay-As-You-Go ani większości ofert EA/MCA; zamiast tego należy używać budżetów i automatyzacji.
Azure Advisor stale ocenia Twoje zasoby i generuje praktyczne rekomendacje w kategoriach kosztów, bezpieczeństwa, niezawodności, wydajności i doskonałości operacyjnej. Rekomendacje dotyczące kosztów obejmują dopasowanie rozmiaru (rightsizing) lub wyłączanie niewykorzystanych maszyn wirtualnych, zakup rezerwacji lub planów oszczędnościowych oraz eliminowanie nieużywanych publicznych adresów IP lub dysków. Niezawodność obejmuje zestawy dostępności (availability sets) / strefy dostępności (availability zones) i konfiguracje kopii zapasowych; wydajność dotyczy optymalizacji mocy obliczeniowej/magazynu; bezpieczeństwo integruje się z Defender for Cloud; doskonałość operacyjna wskazuje konfiguracje zgodne z najlepszymi praktykami. Używaj Advisor Score do śledzenia postępów i integruj rekomendacje z backlogiem lub zautomatyzowanymi procesami naprawczymi, jeśli to stosowne.
Wdrażanie i cykl życia z użyciem Azure Resource Manager
ARM to płaszczyzna sterowania (control plane) dla Azure, umożliwiająca deklaratywne, idempotentne wdrożenia i spójne zarządzanie. Grupy zasobów to logiczne kontenery dla cyklu życia i granic RBAC; grupuj zasoby, które dzielą cykl życia, uprawnienia i zależności lokalizacyjne. Przypisania RBAC i zasad na poziomie grupy zasobów zarządzają wszystkimi zawartymi w niej zasobami, a blokady i tagi na poziomie grupy są dziedziczone, chyba że zostaną nadpisane przez zasady lub operacje na poziomie zasobu.
Szablony ARM (oraz Bicep jako język wyższego poziomu) definiują zasoby, parametry, zmienne, dane wyjściowe i zależności. Umożliwiają one powtarzalne wdrożenia i zapewniają, że artefakty ładu korporacyjnego (np. zasady, przypisania ról) i obciążenia robocze są stosowane razem. Użyj specyfikacji szablonów (template specs) do wersjonowania i udostępniania szablonów w całej organizacji. Tryby wdrażania mają znaczenie:
- Incremental: tworzy/aktualizuje zasoby z szablonu; nie usuwa istniejących zasobów, których nie ma w szablonie.
- Complete: po wdrożeniu usuwa zasoby w docelowym zakresie, które nie są zdefiniowane w szablonie — używaj z ostrożnością, aby wymusić ścisły pożądany stan w grupie zasobów. Historia wdrożeń jest ograniczona do zakresu grupy zasobów, subskrypcji lub grupy zarządzania. Gdy wiele zasobów jest wdrażanych za pomocą jednego szablonu, przeglądasz wdrożenie i jego szablon z panelu (blade) „Wdrożenia” docelowego zakresu — najczęściej grupy zasobów — aby audytować zmiany i rozwiązywać problemy.
Praktyczny scenariusz problemowy
Starbucks przejmuje regionalną sieć i musi wdrożyć trzy nowe subskrypcje, jednocześnie egzekwując globalne polityki bezpieczeństwa, umożliwiając obciążanie kosztami na poziomie departamentów i migrując kilka współdzielonych usług do skonsolidowanej subskrypcji „Corp-IT” bez przerw w działaniu.
- Zbuduj hierarchię grup zarządzania
- Działanie: Utwórz hierarchię wyrównaną do roota: Starbucks > Prod/NonProd > BusinessUnits (Retail, SupplyChain, CorpIT).
- Dlaczego: Grupy zarządzania zapewniają hierarchiczne dziedziczenie RBAC i zasad, dzięki czemu globalne kontrole (np. bazowe standardy bezpieczeństwa) są automatycznie stosowane do każdej nowej subskrypcji.
- Ustaw bazowy dostęp za pomocą RBAC
- Działanie: Na poziomie BusinessUnits przypisz rolę Reader do zespołu audytu, Owner do centralnego zespołu platformy w CorpIT, a Contributor do delegowanych administratorów jednostek biznesowych w ich odpowiednich zakresach. Utwórz niestandardową rolę „Tag-Editor”, która zezwala na
undefined
.
- Dlaczego: Zasada najmniejszych uprawnień na odpowiednim poziomie zapobiega nadużyciom, jednocześnie umożliwiając autonomię jednostek biznesowych; rola niestandardowa pozwala uniknąć nadawania pełnych uprawnień do zapisu w celu utrzymania tagów.
- Wymuś ład korporacyjny za pomocą zasad (Policy) i Azure Blueprints
- Działanie: Stwórz inicjatywę zawierającą zasady dotyczące dozwolonych lokalizacji, wymaganych tagów (CostCenter, Department, Environment), ustawień diagnostycznych dla kluczowych usług oraz „Odmów dostępu publicznego” dla magazynu. Zapakuj to w Azure Blueprint wraz z artefaktami: przypisaniem inicjatywy, przypisaniami ról RBAC, szablonami ARM dla współdzielonego obszaru roboczego Log Analytics i planu DDoS oraz standardowym układem grup zasobów. Przypisz blueprint do każdej nowej subskrypcji z blokadami DoNotDelete na zasobach bazowych.
- Dlaczego: Azure Blueprints dostarczają wersjonowaną, powtarzalną strefę docelową (landing zone) z blokadami zapobiegającymi przypadkowemu usunięciu; zasady (Policy) zapewniają, że każdy zasób jest zgodny w momencie tworzenia i naprawiają odchylenia za pomocą DeployIfNotExists.
- Zastosuj tagi i zagwarantuj dziedziczenie
- Działanie: Użyj zasady typu Modify, aby dziedziczyć tagi z grup zasobów, oraz zasady typu Append, aby dodawać brakujące tagi podczas tworzenia/aktualizacji zasobu. Wymagaj wartości dla CostCenter, które odpowiadają systemowi finansowemu Starbucks.
- Dlaczego: Natywne dziedziczenie nie jest automatyczne; zasady (Policy) zapewniają, że wszystkie zasoby posiadają metadane potrzebne do raportowania kosztów na podstawie tagów.
- Skonfiguruj Cost Management i alerty
- Działanie: Utwórz budżety na poziomie każdej subskrypcji i krytycznych grup zasobów, filtrując je w razie potrzeby według tagów, z alertami przy 50/80/100% wysyłanymi do grupy akcji, która uruchamia Logic App w celu powiadomienia liderów jednostek biznesowych i opcjonalnego skalowania w dół zasobów dewelopersko-testowych. Skonfiguruj pulpity Cost Analysis według tagów i eksportuj dane codziennie do magazynu.
- Dlaczego: Budżety i alerty zapewniają wczesne ostrzeganie i uruchamiają działania korygujące niemal w czasie rzeczywistym; analiza kosztów według tagów (tag pivots) umożliwia dokładne obciążanie kosztami (chargeback).
- Bezpiecznie migruj współdzielone usługi między subskrypcjami
- Działanie: Zweryfikuj wsparcie dla przenoszenia docelowych zasobów (VMs, managed disks, VNets, storage, Recovery Services vaults). Usuń blokujące blokady, upewnij się, że dostawcy zasobów są zarejestrowani w subskrypcji źródłowej i docelowej, potwierdź zgodność regionu/SKU i zaplanuj okno konserwacyjne. Użyj operacji Move z poziomu grupy zasobów, aby przenieść zasoby do subskrypcji Corp-IT; po przeniesieniu ponownie zweryfikuj ustawienia diagnostyczne i zasady.
- Dlaczego: Przenoszenie na poziomie grupy zasobów zachowuje zależności i minimalizuje przestoje; wstępne sprawdzenia pozwalają uniknąć nieudanych migracji z powodu niezgodności zasad lub dostawców.
- Chroń krytyczne zasoby za pomocą blokad
- Działanie: Zastosuj blokadę CanNotDelete do fundamentalnych zasobów sieciowych i monitorujących; zastosuj ReadOnly do grupy zasobów zawierającej złoty obraz (golden image).
- Dlaczego: Blokady mają pierwszeństwo przed RBAC, aby zapobiec przypadkowemu usunięciu lub modyfikacji zasobów bazowych, jednocześnie pozwalając na normalne operacje w innych miejscach.
- Ciągle optymalizuj z pomocą Advisor
- Działanie: Przeglądaj rekomendacje Advisor co tydzień; akceptuj rekomendacje kosztowe dotyczące dopasowania rozmiaru (rightsizing) niewykorzystanych maszyn wirtualnych i zakupu rezerwacji dla stałych obciążeń; śledź postępy za pomocą Advisor Score.
- Dlaczego: Advisor operacjonalizuje bieżącą optymalizację w obszarach kosztów, bezpieczeństwa, niezawodności, wydajności i doskonałości operacyjnej, utrzymując ład korporacyjny po początkowym wdrożeniu.
← Azure Active Directory i zarządzanie tożsamością · Wszystkie domeny · Maszyny wirtualne Azure i usługi obliczeniowe →
Przećwicz te pytania → · Testy na czas na ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Zdaj egzamin →