Zmienne hostów i grup w inventory
Przypisuj hostom zmienne połączenia i konfiguracji.
Zmienne hostów i grup w inventory to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.
Zmienne przechowuje się razem z hostami
Inventory zawiera więcej niż same nazwy. Można przypisywać zmienne hostowi lub grupie, aby zadania dostosowywały się do poszczególnych maszyn.
Zmienne hostów w INI
W formacie INI wpisz pary key=value bezpośrednio po hoście, w tym samym wierszu. Dotyczą one wyłącznie tego jednego hosta.
web1.example.com http_port=8080Najważniejsze są zmienne połączenia
Specjalne zmienne, takie jak ansible_user i ansible_host, informują Ansible, jak nawiązać połączenie, a nie tylko co skonfigurować.
db1.example.com ansible_user=deploy ansible_port=2222Zastąp rzeczywisty adres
Użyj ansible_host, aby nadać hostowi przyjazną nazwę w inventory, wskazując w tle jego rzeczywisty adres IP.
app1 ansible_host=10.0.0.21Zmienne grup w INI
Sekcja [group:vars] przypisuje jedną wartość każdemu hostowi w danej grupie. Ustaw ją raz i udostępnij wszędzie.
[web:vars]
ansible_user=ubuntuZmienne w inventory YAML
W YAML dodaj blok vars do grupy albo przypisz hostowi mapowanie wartości zamiast pustej wartości po dwukropku.
web:
vars:
ansible_user: ubuntu
hosts:
web1.example.com:Zmienne YAML dla pojedynczego hosta
Aby przypisać pojedynczemu hostowi własne wartości, zagnieźdź je pod kluczem hosta. Miejsce po pustym dwukropku staje się mapowaniem.
hosts:
web1.example.com:
http_port: 8080Host ma pierwszeństwo przed grupą
Gdy host i jego grupa ustawiają tę samą zmienną, wygrywa wartość hosta. Konkretne ustawienie zawsze zastępuje ogólne.
Użyj zmiennej w zadaniu
Odwołaj się do zmiennej inventory za pomocą podwójnych nawiasów klamrowych. W tym przypadku zadanie odczytuje http_port bezpośrednio z definicji hosta.
- debug:
msg: "Serving on port {{ http_port }}"Sprawdź rozstrzygnięte wartości
Wyświetl wszystkie zmienne przypisane hostowi za pomocą flagi --host. To świetna pomoc w diagnozowaniu, która wartość została faktycznie zastosowana.
ansible-inventory -i inventory.ini --host web1.example.comNie rozbudowuj nadmiernie inventory
Kilka zmiennych wpisanych bezpośrednio w pliku jest w porządku, ale rozbudowana konfiguracja powinna później trafić do plików group_vars. Inventory powinno opisywać to, kto, a nie szczegółowo to, jak.
Szybki sprawdzian
Host i jego grupa definiują ansible_user. Którą wartość wykorzysta Ansible?
Podsumowanie
Do hostów lub grup w formacie INI albo YAML można przypisywać zmienne, aby ustawiać wartości połączenia i konfiguracji. W razie konfliktu host ma pierwszeństwo przed grupą. 🔧
Często zadawane pytania
Czy lekcja „Zmienne hostów i grup w inventory” jest bezpłatna?
Tak — pełny tekst „Zmienne hostów i grup w inventory” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.
Co nauczysz się w „Zmienne hostów i grup w inventory”?
Przypisuj hostom zmienne połączenia i konfiguracji. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?
Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Zmienne hostów i grup w inventory”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?
Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Pliki inventory w formatach INI i YAML
- Grupowanie hostów: web, db i app
- Zagnieżdżone grupy i słowo kluczowe children
- Zmienne hostów i grup w inventory