Palvelinten Hallinta kurssin harjoitukset Tero Karvisen opastamana.
Harjoitus suoritettu Lenovo Ideapad 700, jossa Xubuntu 16.0.4.4 LTS joka toimii minionina sekä DigitalOceanin VPS:llä [1GB RAM, 25GB SSD, Ranska, Ubuntu LAMP 16.04] joka toimii Salt-masterina.
Muistetaan ajaa tuttu ja turvallinen pakettien päivitys ennen harjoitusten aloitusta.
sudo apt-get update sudo apt-get -y upgrade
b) Tiedosto muotista: tee yksinkertainen SLS-tilatiedosto, joka laittaa muuttujan tiedostoon. Käytä jinjan kontekstimuuttujaa (template: jinja, context: …).
Luodaan tilaa varten oma kansio,
cd /srv/salt sudo mkdir testitila
Jonka sisälle init.sls tiedosto,
cd testitila sudoedit init.sls
Sujautetaan init.sls tiedoston sisään hieman sisältöä,
Sitten luodaan text.txt johon tuo – source: viittaa,
sudoedit text.txt
Tässä siis ilmoitetaan että teksti joka löytyy aaltosulkujen sisältä, {{ teksti }} saa arvon Jinja. Tänään siis testissä Jinja, ei muuta kun tila ajoon.
sudo salt 'viuhka' state.apply testitila
Näyttää onnistuneen, käydään vielä kohde koneella tarkistamassa.
Homma toimii kuin rasvattu! Next…
c) SLS tilaa Jinjalla: tee yksinkertainen SLS-tilatiedosto, joka käyttää for-in -silmukaa. Voit esimerkiksi tehdä kolme tiedostoa silmukalla. (Tässä tehtävässä siis käytetään jinjaa vain SLS-tiedoston sisällä, älä sotke samaan esimerkkiin tekstitiedostojen sisällön muuttamista.)
Tehdään uusi kansio jälleen tehtävälle,
cd /srv/salt sudo mkdir iddqd
Jonka sisälle teemme init.sls tiedoston,
sudoedit iddqd/init.sls
Sujautetaan seuraavanlaista jargonia init.sls sisälle,
Ja kokeillaan tilaa,
sudo salt 'viuhka' state.apply iddqd
Näyttää menneen läpi. Katsomme vielä kohde koneelta onko sinne ilmestynyt mitään.
Ja siellä lepää…
d) SSH-demonin portti: tee tila, joka asentaa SSH-demonin valittuun porttiin. Käytä portin valintaan Jinjaa, siten että sshd_config:issa “Port:”-kohdan arvo tulee Jinjan muuttujasta.
Teron ensimmäisellä tunnilla tuli GitHubiin laitettua jo tuo SSH:n porttia muokkaava tila sekä konfiguraatiotiedosto joka hieman helpottaa tehtävän tekemistä.
Luodaan uusi kansio /srv/salt alle,
cd /srv/salt sudo mkdir ssh
Kloonataan repo /srv/salt/ssh alle, tämä on privaatti joten vain minä voin kloonata kyseisen repositoryn.
cd /srv/salt/ssh sudo git clone https://github.com/kristiansyrjanen/salt.git
Siirrellään tarvittavat tiedostot ulos kloonatusta salt kansiosta ja poistetaan turhat tiedostot.
sudo mv sshd.sls /srv/salt/ssh/ cd sshdemon/ sudo mv sshd_config /srv/salt/ssh/ Ja poisto, cd /srv/salt/ssh/ sudo rm -r salt/
Vaihdetaan sshd.sls nimeä,
sudo mv sshd.sls init.sls
Seuraavaksi muokataan init.sls sisältöä seuraavanlaiseksi,
Ja sshd_config tiedoston kimppuun…
Tämä on kommenteista riisuttu versio joka näyttää paljon puhtaammalta.
Poistetaan ssh-demoni kohde koneelta ja kokeillaan ssh:n portin muuttamista ajamalla ssh tila.
sudo apt-get -y purge openssh-server
Ja testataan onko ssh:ta paikalla enään,
Ei näytä olevan. Sitten ajetaan ssh tila,
sudo salt 'viuhka' state.apply ssh
Tila ajettiin ja sshd_config tiedostoon tehtiin saltin mukaan muokkaus -Port 22 -> +Port 666, käydään kuitenkin testaamassa kohde koneelta että ssh toimii…
Se toimii! Olemme Saltilla Jinjaa käyttäen muuttaneet sshd_config tiedostosta porttia. Upeeta sekä makeeta.
e) Kokeile jonkun toisen opiskelijan tekemää Salt-tilaa. Kokeiltava tila voi olla mistä vain harjoituksesta. Opiskelijoiden raportteja ja koodeja löydät tämän sivun perästä kommenteista.
Katselin muitten tiloja läpi ja Valtteri Partasen kotikansion varmuuskopiointi tila iski silmään. Lähdetään kokeilemaan.
Luon kansion /srv/salt alle,
sudo mkdir backup24
Ja luon backup24 kansion alle init.sls tiedoston,
sudoedit backup24/init.sls
Seuraavaksi ajan tilan backup24 komennolla,
sudo salt 'viuhka' state.apply backup24
Kohde koneeni kotikansio ammotti tyhjyyttä vielä 20 minuutin jälkeenkin. #Todetaan että tila ei toiminut ainakaan 16.0.4.4 LTS versiolla.# (Uudelleen testattu 19.4, lyhyemmällä ajalla, TOIMII)
Eli testasin uudestaan backup24-tilaa 19.4.2018 klo 11:00 hieman muokatulla versiolla. Muutin tunnit hour: -> minuuteiksi minute: tilassani.
sudoedit /srv/salt/backup24/init.sls
Ja ajoin tilan,
sudo salt 'viuhka' state.apply backup24
Tämän jälkeen tarkastelin kotikansiotani spämmäämällä ls -l komentoa ja sieltä löytyi parin minuutin sisällä backup.tar tervapallo.
Todetaan että tila toimi mutta aika ei vaan sattunut kohille aikasemmalla tilalla. Muutan konfiguraatio tiedostoa tuosta minuutin välein ajettavasta versiosta hieman lempeämpään versioon joka luo kahden tunnin välein varmuuskopion kotihakemistosta.
Muutan tilan nimen sopivammaksi ja muokkaan top.sls tiedoston myös sen mukaan.
sudo mv /srv/salt/backup24 /srv/salt/backup2hour
Ja top.sls myös vastaamaan tilan korrektia nimeä.
Näin sielu lepää kun tilat toimivat moitteettomasti… Seuraavia tehtäviä kohti…
ICT-Infrastructure student from Finland.
Learning Linux, DevOps and Docker…