Zahtjevi
Terminologija
Postavljanje poslužitelja
SaltStack master operacije
Stvaranje vaše prve formule
Pokrenite svoju prvu formulu
Zaključak
SaltStack je program za upravljanje konfiguracijom temeljen na pythonu koji je optimiziran za automatizaciju konfiguracijskih datoteka, implementacija i bilo čega drugog pod temom softverski definiranog centra podataka. U ovom vodiču naučit ćete kako započeti sa SaltStackom, dodavanjem svojih prvih čvorova i pisanjem svoje prve formule.
Zahtjevi
- Vultr instanca radi Ubuntu 17.04 (master)
- Vultr instanca radi Ubuntu 17.04 ( minion )
Terminologija
SaltStack koristi nekoliko ključnih riječi koje predstavljaju određeni uređaj ili konfiguraciju, kao što je objašnjeno u nastavku:
Ovladati; majstorski
Ovo je glavna instanca koja se povezuje sa svim poslužiteljima dodanim u vaš SaltStack "cluster", čime također pokreće sve naredbe / komunikaciju s vašim poslužiteljima.
Sljedbenik
Poslužitelji koji su dodani vašem SaltStacku zovu se minions. Sve radnje se izvode na jednom, grupi ili svim vašim podanicima.
Formula
Formula predstavlja datoteku ili skup datoteka koja uvodi sluge koje naredbe treba izvesti. To može biti instalacija jedne aplikacije kao što je nginxili uvođenje konfiguracijskih datoteka itd.
Stup
Stup je datoteka u kojoj se pohranjuju informacije koje se odnose na grupu miniona ili jednog miniona. Kao primjer, upotrijebili biste ovu vrstu datoteke za pohranjivanje "Virtual-Hosts" za Nginx za određeni minion.
Postavljanje poslužitelja
Ovladati; majstorski
Prvo, počet ćemo s postavljanjem mastera za naš SaltStack klaster:
apt-get update
apt-get dist-upgrade
apt-get install salt-master
Prema zadanim postavkama, SaltStack master ne osluškuje nikakva sučelja, budući da master obično komunicira s minionima putem javnog interneta. Moramo napraviti malu promjenu u konfiguracijskoj datoteci koja se može naći na /etc/salt/master:
# The address of the interface to bind to:
interface: 0.0.0.0
Nakon što su promjene zapisane u datoteku, ponovno pokrenite glavnu uslugu:
service salt-master restart
Sljedbenik
Sada možemo nastaviti s dodavanjem našeg prvog miniona. Idite ravno naprijed i instalirajte potrebne pakete:
apt-get update
apt-get dist-upgrade
apt-get install salt-minion
Zatim, moramo napraviti još jednu malu promjenu u konfiguraciji SaltStack miniona koja se može naći na /etc/salt/minion:
# Set the location of the salt master server. If the master server cannot be
# resolved, then the minion will fail to start.
master: <master_server_ip>
Zamijenite <master_server_ip>IP adresom vašeg glavnog poslužitelja kao što ste prethodno postavili. U idealnom slučaju, za to biste postavili DNS zapis kako biste olakšali promjenu glavnog poslužitelja.
Nakon toga moramo ponovno pokrenuti minion uslugu da bi promjene postale aktivne:
service salt-minion restart
SaltStack master operacije
Sada imamo postavljene radni master i minion, tako da možemo izravno ići naprijed i raditi s malim skupom naredbi SaltStack na masteru.
Prikazuju se svi sluge
# salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
Rejected Keys:
Napomena: Već smo rekli minionu na koji glavni poslužitelj treba se povezati. Stoga, ako ste slijedili ovaj vodič, već biste vidjeli miniona pod Unaccepted Keys:odjeljkom.
Prihvaćanje neprihvaćenog podanika
# salt-key -a <minion_id>
Prihvaćanje svih neprihvaćenih miniona
# salt-key -A
Uklanjanje miniona
# salt-key -d <minion_id>
Napomena: <minion_id> obično predstavlja UNIX hostname vašeg miniona(a) i pohranjeno je u /etc/salt/minion_iddatoteci na minion(ima).
Nakon dodavanja našeg miljenika majstoru, možemo nastaviti s pisanjem naše prve formule. U početku moramo stvoriti mapu koja pohranjuje naše formule:
mkdir -p /srv/salt/
Napravite mapu za našu prvu formulu:
mkdir -p /srv/salt/nginx
U osnovi, sve upute za formulu pohranjuju se u init.slsdatoteci, na primjer, /srv/salt/nginx/init.sls. Kako postoji ogromna količina operacija koje se mogu izvesti kroz formulu, napisat ćemo malu formulu koja instalira Nginx:
nginx:
pkg:
- installed
Nakon što upišemo u init.slsdatoteku kako je gore objašnjeno, možemo nastaviti i pokrenuti je:
salt '*' state.sls nginx
Napomena: nginx predstavlja naziv mape koju smo prethodno kreirali.
Zaključak
SaltStack je vrlo dobar softver za automatizaciju bilo koje vrste konfiguracijskih datoteka, implementacije usluga, početnih uvođenja poslužitelja i slično. Zbog činjenice da se SaltStack temelji na Pythonu, lako možete dodati i vlastite module, ako tečno govorite jezik. Sretna automatizacija!