Struktura zasobów w Azure


Struktura zasobów

Szybkie pytanie po co mi ta struktura zasobów? Szybka i zwięzła odpowiedź, żeby zasoby się ze sobą nie mieszały, były ustrukturyzowane i łatwo było zarządzać nimi. I jeśli taka odpowiedź Ci wystarczy to spoko ok. Jednak chciałbym, ażebyś przeczytał ten artykuł i się zastanowił czy to może jednak nie jest ważny temat.

Struktura Azure zawierająca 1 Management Group , 3 Subskrypcje i 4 grupy zasobów

Powyższy model pokazuje jak wygląda struktura zasobów w Azure. Na najwyższym poziomie mamy Tenanta (organizację, która posiada zasoby) kolejno Management Grupy (Grupy zarządzania ? niekiedy ciężko po polsku pisać) następnie Subskrypcje i w końcu nasze Resource Grupy (Grupy zasobów). Na potrzeby tego wpisu będę się starał wykorzystywać polskie nazwy. Jednak gdybym się zapomniał to wybacz.

Organizacja (tenant) – to właśnie tutaj mamy nasze Azure AD i użytkowników. Najwyższy poziom w hierarchii.

Grupy Zarządzania – umożliwiają logiczny podział na mniejsze elementy, nigdy nie miałem doczynienia z tak dużymi organizacjami, żeby ten mechanizm był wykorzystywany. Nie mniej jednak Grupy zarządzania mogą umożliwić nam odseparowanie od siebie różnych części biznesu jak Systemy Wewnętrzne, systemy supportowe, Aplikacje Klientów, czy na przykład różne marki jednej organizacji.

Subskrypcja – logiczna jednostka billingowa to za nią płacimy i tu wypożyczamy z chmury zasoby.

Grupa Zasobów – najmniejszy logiczny kontener na zasoby. Każdy zasób musi się znajdować w jakiejś Grupie i nie może “żyć” poza nią.

Po co to wszystko

Cała ta struktura umożliwia łatwiejszą kontrolę nad naszymi zasobami. Uprawnienia nadawane są hierarchiczne, więc jeżeli nadamy jakieś uprawnienie na wyższym szczeblu automatycznie są one dziedziczone przez elementy niżej w hierarchii.

Dodatkowo w przypadku Grup zasobów możemy usunąć wszystkie zasoby przypisane do tej grupy usuwając ją. Ułatwia to zarządzanie zasobami (sprzątanie) w przypadku projektów POC (proof of concept). Jeżeli umieścimy wszystkie zasoby w jednej grupie wystarczy, że po zakończeniu takiego projektu usuniemy całą grupę zasobów.

Jak organizować zasoby w grupy

Temat nie jest prosty, sam spotkałem się z kilkoma różnymi podejściami do tworzenia grup zasobów:

  • Grupa dla rozwiązania – czyli tworząc pojedyncze rozwiązanie (na przykład Aplikację webową, usługę przetwarzania) wszystkie elementy wykorzystywane przez taką aplikację umieszczamy w jednej grupie zasobów. W tym przypadku możemy usunąć wszystkie elementy tego rozwiązania w prosty sposób nie pozostawiając śmieci. Dodatkowo dzięki możliwości udzielania uprawnień na poziomie całej grupy możemy udzielić uprawnień osobą do pełnego rozwiązania.
  • Grupy dla typu zasobów – czyli zasoby jednego typu są umieszczamy w jednej grupie zasobów. Na przykład bazy danych mamy w jednej grupie zasobów, Aplikacje Webowe w innej a maszyny wirtualne w kolejnej. Taki podział ułatwia wyszukiwanie, gdzie znajduje się dany zasób ale nie daje zupełnie informacji w jakim rozwiązaniu jest on wykorzystywany.
  • Podział mieszany – chyba najczęściej spotykany przeze mnie sposób podziału zasobów. Części wspólne rozwiazań jak bazy danych czy infrastruktura sieciowa (vnety, FrontDoor, Api Management) umieszczamy w odpowiednich grupach związanych z infrastrukturą czy elementami wspólnymi.

Czytaj dalej czytaj więcej

Jak widzisz struktura zasobów w Azure nie jest wcale taka prosta czy bezsensowna. Jeśli chcesz dowiedzieć się więcej kilka linków:


Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *