Jaka jest różnica między Ansible, Ansible Galaxy i Ansible Tower?

Ansible to narzędzie do zarządzania konfiguracją typu open source i platforma automatyzacji IT. Pomaga w automatyzacji udostępniania oprogramowania, zarządzania konfiguracją i wdrażania aplikacji.

Ansible nie przypomina innych aplikacji do zarządzania konfiguracją. To właśnie odróżnia go od innych narzędzi do zarządzania konfiguracją, takich jak Chef, CFEngine, Salt i Puppet.

Ansible Tower zapewnia internetowy interfejs do zarządzania Ansible. Użytkownicy Ansible potrzebowali intuicyjnego interfejsu, który byłby łatwy w użyciu do szybkiego wdrażania i monitorowania konfiguracji.

Ansible Tower była odpowiedzią zarządzania Ansible. Każdy język i każdy framework ma swoje unikalne możliwości i niuanse. W tym poście omówimy różnice między Ansible, Ansible Tower i Ansible Tower.

Ansible Wprowadzenie

Ansible to narzędzie typu open source do zarządzania konfiguracją, które automatyzuje udostępnianie oprogramowania i zarządzanie konfiguracją. Możesz kontrolować i konfigurować wiele maszyn z jednego serwera.

Działa z systemem opartym na wypychaniu, w którym konfiguracja jest „wypychana” z maszyny głównej do wszystkich jej węzłów.

Konfiguracje są pisane przy użyciu YAML. Są łatwe do zrozumienia i wystarczająco proste do utworzenia przez administratorów serwerów. Działa przez SSH i wykorzystuje OpenSSH jako warstwę transportową.

Wszystkie konfiguracje Ansible można znaleźć w zestawie plików YAML, które nazywamy playbook. Ta książeczka zawiera zadania lub zabawy. Aby skonfigurować węzły, zadanie używa modułu.

Playbooki to miejsce, w którym można pisać konfiguracje. Wszystkie zadania zapisane w podręczniku są wykonywane w tej samej kolejności. Obsługuje zarówno wykonywanie synchroniczne, jak i asynchroniczne.

Na powyższym obrazku widać kilka hostów. Te maszyny-hosty są używane do wykonywania wszystkich utworzonych przez nas konfiguracji.

Zalety Ansibla:

  • Jest darmowy i open-source
  • Proste: nie ma problemów z konfiguracją Ansible
  • Potężny: dzięki Ansible możesz skonfigurować tysiące maszyn jednocześnie
  • Elastyczny: może być używany w wielu środowiskach.
  • Bez agenta: nie polega na węzłach agenta, takich jak Jenkins.
  • Wydajny: nie wymaga do działania żadnego dodatkowego oprogramowania.

Wady Ansible:

  • Trudny do zainstalowania
  • Nie działa w systemie Windows
  • Kompatybilność wsteczna

Wprowadzenie do galaktyki Ansible

Ansible Galaxy umożliwia użytkownikom udostępnianie i pobieranie ról. Ansible Galaxy zachęca do korzystania z ról wielokrotnego użytku w konfiguracji serwera. Ansible Galaxy jest często używany w projektach.

Ansible Galaxy to w zasadzie publiczne repozytorium opisów ról Ansible. Pliki README są dołączone do wszystkich ról. Dostarczają informacji o użyciu roli i zmiennych.

Ansible Galaxy ma wiele ról, które stale ewoluują i rosną. Role pozwalają rozbić większe podręczniki i stworzyć uporządkowaną strukturę. Możesz modyfikować własne role, a następnie używać ich według własnego uznania.

Struktura ról Ansible Galaxy

  • README.md to plik Readme opisujący rolę. Plik readme zawiera wszystkie szczegóły dotyczące parametrów wejściowych roli oraz przykładowy plik yml.
  • zadania — wszystkie zadania mogą być rejestrowane przez Rolę w zadaniach. Punktem wejścia dla roli jest Main.yml. Tu zaczyna się egzekucja. Ten plik może zawierać inne pliki.
  • programy obsługi — ta kategoria obejmuje programy obsługi, które mogą być używane w tej roli lub dowolnej innej roli.
  • defaults — domyślne zmienne dla roli.
  • vars — zmienne, które są ważniejsze niż wartości domyślne dla roli.
  • pliki — te pliki można wdrożyć przy użyciu roli.
  • szablony — ta sekcja zawiera szablony, których można używać za pośrednictwem roli.
  • meta – Metadane mogą być używane do definiowania ról w meta. Ten plik powinien również zawierać wszelkie zależności ról.
  • testy – testy CI do wykonania.
  • biblioteka – Osadzanie modułów lub wtyczek w rolach. Nie utworzony przez polecenie init. Możesz także utworzyć niestandardowy moduł w Pythonie w tym folderze, a następnie używać go w swoich zadaniach.

Ansible Galaxy to narzędzie, które pozwala tworzyć i zarządzać rolami. Zobaczysz nowe wersje Ansible i będą zmiany. Ansible w wersji 2.2.8 zawierał funkcję zbierania. Treść Ansible jest dystrybuowana w kolekcjach. Służą do pakowania i dystrybucji modułów, poradników i wtyczek.

Zalety Ansible Galaxy:

  • Centralnie lokalizuj, ponownie wykorzystuj i udostępniaj treści związane z Ansible
  • Łatwe pobieranie ról wielokrotnego użytku do instalowania aplikacji
  • Zwiększa szybkość wdrażania

Wady Ansible Galaxy

  • Jest napędzany przez społeczność, więc praca nad modułem nie jest gwarantowana
  • Wiele ról w galaktyce Ansible ma złą dokumentację
  • Większość ról Ansible Galaxy nie jest idempotentna

Wprowadzenie do wieży Ansible

Ansible Tower to interfejs użytkownika Ansible. Jest to rozwiązanie internetowe, z którego może korzystać wiele różnych typów zespołów IT.

Ansible Tower można porównać do deski rozdzielczej samochodu. Deska rozdzielcza pokazuje wszystkie potrzebne informacje o stanie Twojego samochodu: prędkość, poziom oleju, pozostałe paliwo itp. Ansible Tower wygląda jak deska rozdzielcza, ale Ansible to silnik.

Ansible Tower umożliwia użytkownikom zdalne wykonywanie zadań za pośrednictwem graficznego interfejsu użytkownika. Zadania Ansible można wykonywać za pomocą podręczników. Te podręczniki można uruchamiać za pomocą Ansible CLI. Ansible Tower umożliwia jednak zarządzanie podręcznikiem i wykonywanie go za pośrednictwem GUI.

Możesz wykonać istniejące wcześniej podręczniki lub stworzyć własne. Ansible Tower oferuje również zintegrowane powiadomienia. Dzięki temu określone zespoły mogą być powiadamiane o zakończeniu lub niepowodzeniu zadania. Ten rodzaj wzajemnej komunikacji jest niezbędny dla każdej organizacji.

Zapewnia również kontrolę dostępu opartą na rolach (RBAC), która umożliwia sprawdzenie, kto jest upoważniony do uruchamiania zadań. Dzięki temu tylko niektórzy użytkownicy mogą wykonywać zadania w Ansible Tower. Jest to często wymagane w celu zachowania zgodności z branżowymi przepisami bezpieczeństwa.

Zapewnia RBAC, a także pokazuje dziennik audytu, który zawiera szczegółowe informacje o tym, kto był odpowiedzialny za jakie zadanie w danym momencie. Zapewnia to dodatkowe bezpieczeństwo, które jest trudne do znalezienia, jeśli używasz samego Ansible.

Ansible Tower umożliwia zdalne wykonywanie kodu w różnych aplikacjach. Maszyna wirtualna może być w złym stanie i wymagać ponownego uruchomienia, a Ansible Tower sprawia, że ​​jest to łatwe i bezpieczne.

Zdalne instalowanie oprogramowania może być używane do szybkiego naprawiania luk w zabezpieczeniach lub resetowania haseł. Ansible Tower to punkt kompleksowej obsługi całej infrastruktury sieciowej i maszyn wirtualnych wdrożonych za pośrednictwem rozwiązania Ansible.

Ansible Tower, w przeciwieństwie do Ansible, nie jest darmowy. Istnieją dwie wersje Ansible Tower: Premium i Standard. To od Ciebie i wymagań IT Twojej firmy zależy, która wersja jest najlepsza. Wersje standardowe są odpowiednie dla większości operacji IT. Premium jest przeznaczony do DevOps o znaczeniu krytycznym.

Red Hat poda dokładne informacje o cenach po skontaktowaniu się z nimi. Edycja Standard będzie kosztować około 10 000 USD rocznie za 100 węzłów. Premium zapewni ci około 14 000 $ rocznie za tę samą liczbę węzłów.

Zalety Ansible Tower:

  • Prosty układ
  • Pomaga w budowaniu potoku CI/CD do zarządzania przepływem pracy
  • Pozwala zaplanować pracę i powiadamia o każdym błędzie
  • Graficzne zarządzanie zapasami
  • Bardzo łatwy w konfiguracji

Wady Ansible Tower:

  • Kosztowny
  • Oparte na subskrypcji
  • Scalanie rozwiązania konfliktu niemożliwe/niejasne
  • Debugowanie jest złożone

Ansible vs Ansible Galaxy vs Ansible Tower

Ansible może być używany jako narzędzie do automatyzacji IT. Może wdrażać oprogramowanie i konfigurować systemy. Może również koordynować bardziej złożone zadania IT, takie jak ciągłe wdrażanie lub zbiorcze aktualizacje bez przestojów. Głównymi celami Ansible są prostota i łatwość użycia.

Z drugiej strony Ansible Tower jest opisywany jako „Najpotężniejszy klient Git dla komputerów Mac i Windows”. Możesz używać wszystkich potężnych funkcji Git w graficznym interfejsie użytkownika, który jest bardziej produktywny. Ansible Galaxy może służyć do przechowywania ról Ansible. Ansible Galaxy to odpowiednik PyPI dla Pythona czy Maven dla Javy.

Ansible Tower nie może być używany bez Ansible. Ansible Tower może być używany z Ansible Tower. Ansible to silnik, który napędza zarządzanie infrastrukturą i wdrażanie.

Ansible Tower pozwala nam zobaczyć wewnętrzne działanie wszystkiego. Pozwala zobaczyć i kontrolować zgodność bezpieczeństwa infrastruktury Twojej organizacji.

Ansible Tower może zapewnić RBAC dla Twoich wdrożeń Ansible. Ansible Tower to także świetna opcja, jeśli szukasz profesjonalistów, którzy nie znają się na kodowaniu, do przeglądu Twojej infrastruktury.

Porównanie Ansible vs Ansible Tower vs Ansible Galaxy:

AnsibleAnsible TowerAnsible GalaxyNarzędzie do zarządzania konfiguracją Open Source Interfejs użytkownika AnsibleRepozytorium ról i kolekcjiWykonywanie playbooków przez CLIWykonywanie playbooków przez GUIRUruchamia ansible-galaxy przy użyciu CLIIpierwsza wersja w 2012pierwsza wersja w 2015pierwsza wersja w 2016Bezpłatne w użyciuZaczyna się od 5000 $ rocznie dla 100 węzłówBezpłatny w użyciuBardzo prosty w konfiguracji up and use Zapewnia wgląd w całe środowisko Ansible Może ponownie wykorzystywać bloki kodu w różnych podręcznikach

Wniosek

To wszystko dotyczyło Ansible, Ansible Tower i Ansible Galaxy oraz różnic między Ansible, Ansible Galaxy i Ansible Tower. Organizacja powinna rozważyć swoje wymagania dotyczące Ansible Tower, ponieważ jest to bardzo kosztowne. Ale ogólnie rzecz biorąc, Ansible jest doskonałym narzędziem CM dla każdego środowiska podobnego do Linuksa.

Mogą Cię również zainteresować zadania Sysadmin, które możesz zautomatyzować za pomocą Ansible.