Palvelimien, ohjelmien ja tiedostojen hallintaa saltilla. Tämä raportti on osa Tero Karvisen k2020 palvelinten hallinta-kurssia. Raportti on kirjoitettu uudelleen selkeämmäksi ja parannetuilla esimerkeillä 11.5.2020.
a) Demonin asennus ja asetukset
Tehtävänä automatisoida Apache2-palvelimen asennus ja asetukset saltilla
Loin uuden kansion sudo mkdir /srv/salt/apache/
Kansioon loin tiedoston sudoedit init.sls
Lisäsin tiedostoon asetukset Tero Karvisen ohjeiden mukaan
Loin samaan kansioon lähdetiedoston, johon luotu sls-tiedosto viittaa sudoedit default-index.html
. Muutin Apachen oletussivua kirjoittamalla tiedostoon Hello Apache! This is salt.
Ajoin tilan sudo salt '*' state.apply apache
Katsoin tuloksen selaimella localhostista
b) Uusi ohjelma ja find-komento
Kokeilin asentuuko Spotify saltilla. Asensin ensin käsin Spotifyn ohjeilla.
Seuraavaksi kokeilin saltia. Loin uuden kansion sekä sls-tiedoston mkdir /srv/salt/spotify
ja sudoedit /srv/salt/spotify/init-sls
Ajoin tilan sudo salt '*' state.apply spotify
Asennus onnistui ja ohjelma toimii. Katsotaan vielä muutoksia find-komennolla find /etc/ -printf '%T+ %p\n'|sort
Find-komento raportoi tarkan ajankohdan jokaiselle muutokselle. Huomasin ettei Spotifylla ole omaa asennuskansiota /etc/-hakemistossa. whereis spotify
kertoo missä tiedostoja sijaitsee.
c) Tilan ajo paikallisesti
Ajoin vielä apache-tilan paikallisesti sudo salt-call --local state.apply apache --state-output terse
ja katsoin tulostetta
Komento tulosti yhteenvedon kohteista (esim. apache2), funktioista (esim.pkg.installed) sekä tuloksista (esim. Clean started) ja myös ajasta (Duration). Kaikki 4 moduulia ajettiin paikallisesti onnistuneesti ilman muutoksia.
Lähteet:
http://terokarvinen.com/2018/apache-user-homepages-automatically-salt-package-file-service-example
http://terokarvinen.com/2018/pkg-file-service-control-daemons-with-salt-change-ssh-server-port
https://docs.saltstack.com/en/master/topics/tutorials/starting_states.html