Salt state kokeilua

Kokeilin tässä harjoituksessa Salt tilaa, ja mallina käytin täältä löytyviä Salt tiloja. Tavoitteena tässä harjoituksessa on asentaa apache ja muokata apachen aloitussivu halutuksi.

Testiympäristönä käytin omaa Läppäriä, jossa Ubuntu 18.04. Asensin ensin samalle koneelle Salt Masterin ja Slaven.

Tilojen luonti

Luodaan hakemisto, jolle Salt tilojen konfigurointitiedostot tulevat.

$ sudo mkdir -p /srv/salt/

Luodaan hakemisto index.html tiedostolle. Luodaan myäs hAkemisto LAMP konfiguraatiolle, mutta aluksi konfiguraatioon tulee vain apache asennus.

$ sudo mkdir /webserver
$ sudo mkdir /lamp

Luodaan tilakonfiguraatiot

Webserver

Luodaan tänne pelkkä index.html tiedosto, tämän tiedoston orjat hakevat.

$ sudoedit /salt/srv/webserver/index.html

<!DOCTYPE html>
<html>
<body>
Hello kaikki!
</body>
</html>

LAMP tilan konfiguraatio

Tila sisältää Apache:n asentamisen, jos sitä ei ole orjakoneella jo asennettuna. Tila sisältää myös Apachen index.html tiedoston viemisen oikeaan hakemistoon.

$ sudoedit /salt/srv/lamp/init.sls

install_lamp:
pkg.installed:
- pkgs:
- apache2

/var/www/html/index.html:
file:
- managed
- source: salt://webserver/index.html
- require:
- pkg: install_lamp

LAMP tilan testaus

Testataan, että Apachen asennus ja index.html tiedoston vieminen oikeaan paikkaan orjakoneella toimivat.

sudo salt '*' state.apply lamp

Tulos

$ sudo salt '*' state.apply lamp

slave1:
----------
ID: install_lamp
Function: pkg.installed
Result: True
Comment: All specified packages are already installed
Started: 19:14:23.920089
Duration: 1030.893 ms
Changes: 
----------
ID: /var/www/html/index.html
Function: file.managed
Result: True
Comment: File /var/www/html/index.html updated
Started: 19:14:24.955357
Duration: 34.369 ms
Changes: 
----------
diff:
--- 
+++ 
@@ -1 +1,8 @@
-Moi
+ <!DOCTYPE html>
+<html>
+<body>
+
+Hello kaikki!
+
+</body>
+</html>

Summary for slave1
------------
Succeeded: 2 (changed=1)
Failed: 0
------------
Total states run: 2
Total run time: 1.065 s

LAMP tila toimii, Apache oli jo aiemmin asennettuna. Samoin index.html tiedosto, mutta se ylikirjoitettiin.

Apache palauttaa nyt oikean index.html sisällön

TOP tilan luominen

TOP tilalla voidaan konfiguroida mille kaikille orjakoneille kohdistuu mikäkin tila. Orjat myös pitävät itsensä automaattisesti tilan mukaisessa konfiguraatiossa.

$ sudoedit /srv/salt/top.sls

base:
  '*':
    - lamp

Testataan TOP konfiguraatio

juha@juha-HP:/srv/salt$ sudo salt '*' state.highstate
slave1:
----------
ID: install_lamp
Function: pkg.installed
Result: True
Comment: All specified packages are already installed
Started: 19:24:45.334768
Duration: 994.227 ms
Changes: 
----------
ID: /var/www/html/index.html
Function: file.managed
Result: True
Comment: File /var/www/html/index.html is in the correct state
Started: 19:24:46.333198
Duration: 20.692 ms
Changes:

Summary for slave1
------------
Succeeded: 2
Failed: 0
------------
Total states run: 2
Total run time: 1.015 s

TOP tila toimii myös.

Localhost

Leave a Reply

Your email address will not be published. Required fields are marked *