Ansible_w_praktyce_Automatyzacja_konfiguracji_i_proste_instalowanie_systemow_Wydanie_II_ansipr.pdf

(777 KB) Pobierz
Tytuł oryginału: Ansible: Up and Running: Automating Configuration Management
and Deployment the Easy Way, 2nd Edition
Tłumaczenie: Andrzej Watrak
ISBN: 978-83-283-4171-5
© 2018 Helion S.A.
Authorized Polish translation of the English edition of Ansible: Up and Running, 2E
ISBN 9781491979808 © 2017 Lorin Hochstein and René Moser.
This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all
rights to publish and sell the same.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION
nie ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/ansipr
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
Przedmowa .............................................................................................................. 11
Wstęp do drugiego wydania ...................................................................................... 13
Wstęp do pierwszego wydania .................................................................................. 15
1. Wprowadzenie .......................................................................................................... 19
Uwaga do wersji
Do czego nadaje się Ansible?
Jak działa Ansible?
Na czym polega wielkość Ansible?
Czy Ansible nie jest zbyt proste?
Co muszę wiedzieć?
Czego tu nie znajdziesz?
Instalacja Ansible
Konfiguracja serwera testowego
Co dalej?
20
20
21
22
26
26
27
27
28
35
2. Scenariusze: pierwsze kroki ....................................................................................... 37
Wstępne wymagania
Bardzo prosty scenariusz
Uruchomienie scenariusza
Scenariusz to plik YAML
Anatomia scenariusza
Czy coś się zmieniło? Śledzenie stanu serwera
Coś ciekawszego: szyfrowanie TLS
37
38
41
42
45
49
49
3. Ewidencja: opisywanie serwerów .............................................................................. 57
Plik ewidencyjny
Wstępne wymagania: kilka maszyn Vagrant
Funkcjonalne parametry ewidencji
Grupy, grupy i jeszcze raz grupy
57
58
60
62
5
Kup książkę
Poleć książkę
Zmienne serwerowe i grupowe w pliku ewidencyjnym
Zmienne serwerowe i grupowe w osobnych plikach
Dynamiczna ewidencja
Podział ewidencji na kilka plików
Dodawanie wpisów w trakcie działania scenariusza
za pomocą modułów add_host i group_by
66
67
69
73
74
4. Zmienne i fakty ......................................................................................................... 77
Definiowanie zmiennych w scenariuszu
Wyświetlanie wartości zmiennych
Rejestrowanie zmiennych
Fakty
Definiowanie nowej zmiennej za pomocą modułu set_fact
Wbudowane zmienne
Definiowanie zmiennych w wierszu poleceń
Priorytety
77
78
78
81
84
85
87
88
5. Mezzanine: nasza testowa aplikacja .......................................................................... 89
Dlaczego wdrażanie aplikacji produkcyjnych jest skomplikowane?
89
6. Instalacja Mezzanine za pomocą Ansible .................................................................... 95
Wyświetlanie zadań scenariusza
Układ zainstalowanych plików
Zmienne jawne i poufne
Instalowanie wielu pakietów za pomocą pętli (with_items)
Instrukcja become w zadaniu
Aktualizacja rejestru apt
Sprawdzenie projektu za pomocą modułu git
Instalacja Mezzanine i innych pakietów w środowisku wirtualnym
Krótka dygresja: skomplikowane argumenty w zadaniach
Konfiguracja bazy danych
Tworzenie pliku local_settings.py na podstawie szablonu
Polecenia django-manage
Uruchamianie własnych skryptów Pythona w kontekście aplikacji
Utworzenie plików konfiguracyjnych usług
Aktywacja konfiguracji serwera Nginx
Instalacja certyfikatów TLS
Instalacja zadania Twitter w harmonogramie cron
Cały scenariusz
Uruchomienie scenariusza na maszynie wirtualnej Vagrant
Diagnostyka
Instalacja Mezzanine na wielu serwerach
6
Spis treści
Poleć książkę
95
96
96
98
99
99
100
102
104
106
107
110
111
113
115
115
116
117
120
120
121
Kup książkę
7. Skalowanie scenariuszy: role ....................................................................................123
Podstawowa struktura roli
Przykład: role database i mezzanine
Stosowanie ról w scenariuszach
Zadania wstępne i końcowe
Rola database instalująca bazę danych
Rola mezzanine instalująca aplikację Mezzanine
Tworzenie plików i katalogów ról za pomocą narzędzia ansible-galaxy
Role zależne
Repozytorium Ansible Galaxy
123
124
124
125
126
128
132
132
133
8. Zaawansowane scenariusze .....................................................................................135
Obsługa błędnie działających poleceń: instrukcje changed_when i failed_when
Filtry
Wyszukiwarki
Zaawansowane pętle
Sterowanie pętlami
Dołączanie plików
Bloki
Obsługa błędów za pomocą bloków
Szyfrowanie poufnych danych
135
138
140
146
149
151
153
154
156
9. Dostosowywanie serwerów, przebiegów i procedur ..................................................159
Wzorce specyfikowania serwerów
Określanie grupy serwerów
Wykonywanie zadania na komputerze sterującym
Wykonywanie zadania na innym komputerze niż serwer
Wykonywanie zadania na kolejnych serwerach
Wykonywanie zadania w grupie serwerów
Jednokrotne wykonanie zadania
Strategie przebiegów
Zaawansowane procedury
Jawne gromadzenie faktów
Odczytywanie adresu IP serwera
159
160
160
161
161
162
163
163
166
173
174
10. Wtyczki zwrotne ......................................................................................................175
Wtyczki stdout
Inne wtyczki
175
178
Spis treści
Kup książkę
7
Poleć książkę
Zgłoś jeśli naruszono regulamin