Palvelin hallinta viikko 4 harjoitus 4 – Pilarit

Tämän viikon harjoitus löytyy Tero Karvisen Palvelin hallinnan sivuilta.

Harjoituksessa käyttämäni kone on MSI:n GX 640 (64-bit) kannettava tietokone ja koneeseen on asennettu käyttöjärjestelmäksi Linux Xubuntu 16.04.3 LTS (64-bit).

Voit saada oman Xubuntu 16.04.3 LTS (64-bit) versiosi täältä.

Aloitan harjoituksen tekemisen maanantaina 23.4.2018 klo 9.30

Aluksi loin kaksi minionia vagrantilla käyttämällä Teron ohjetta. Tämän jälkeen luodaan master ja minion hallintasuhde. Ohjeet tämän tekemiseen löydät Kristian Syrjäsen sivuilta, joita myös itse käytin. Sen jälkeen jatkamme ajamalla pakettien päivityksen livetikulla varustetussa kannettavassa tietokoneessa, joka toimii masterina, ja kahdessa vagrantilla luodulla minionilla seuraavalla komennolla.

$ sudo apt-get update

b) Tee kahdella orjalla esimerkki, jossa orjat saavat eri muuttujan pilarista. Tarkista ‘pillars.items’, että kummalekin orjalle mene eri tieto. Tee jokin muu kuin tunnilla tehty sshd-esimerkki.

klo 9.40

Tehdään tämä tehtävä luomalla tekstitiedosto, jonne eri minionit saavat eri muuttujan. Aloitetaan luomalla ensin pillar-kansio ja sinne top.sls tiedosto seuraavilla komennoilla.

$ sudo mkdir /srv/pillar

$ cd /srv/pillar/

$ sudoedit top.sls

top1_sls

Kuten kuvasta näkyy, vagrantilla luomani minionit ovat slave1 ja slave2. Ne saavat annetun arvon, jos niiden muuttuja löytyy myös samasta kansiosta, jonne top.sls luotiin. Tämä tapahtuu seuraavilla komennoilla.

$ sudoedit test1.sls

$ sudoedit test2.sls

Seuraavissa kuvissa näkyy sisältö, jonka määrittelin kummallekin minionille.

test1_sls

test2_sls

Tämän jälkeen siirrymme luomaan salt-kansion, jonka alle luomme pillartest-kansion, jonne luomme init.sls tiedoston. Tämä onnistuu seuraavilla komennoilla.

$ sudo mkdir /srv/salt

$ sudo mkdir /srv/salt/pillartest

$ cd /srv/salt/pillartest

$ sudoedit init.sls

init1_sls

Tämä tiedosto luo minionin tmp-kansioon test.txt tiedoston, joka käyttää pohjana masterilla pillartest-kansiossa olevaa test.txt tiedostoa. Seuraavaksi luomme tuon init.sls tiedostossa pohjaksi määrittelemämme test.txt tiedoston. Tämä onnistuu seuraavalla komennolla.

$ sudoedit test.txt

test_txt

Luodaan vielä lopuksi salt-kansioon top.sls tiedosto.

$ sudoedit /srv/salt/top.sls

top2_sls

Tämän jälkeen voimme siirtyä testaamaan toimivatko pillarit, ajamaan highstate ja lopulta tulostamme cat-komennolla kummankin minionin tmp-kansiossa olevat test.txt. Tämä kaikki toteutetaan seuraavilla komennoilla.

$ sudo salt ’*’ pillar.items

$ sudo salt ‘*’ state.highstate

$ sudo salt ‘*’ cmd.run ‘cat /tmp/test.txt’

pillar

ajo1

testi1

Kuten kuvat osoittavat, tehtävämme onnistui. Voimme siis siirtyä seuraavaan kohtaan.

c) Tee kahdella orjalla esimerkki, jossa toinen orja saa muuttujan pilarista ja toinen käyttää oletusarvoa (pillar.get). Tee jokin muu kuin tunnilla tehty sshd-esimerkki.

klo 10.15

Voimme yrittää tehdä tämän tehtävän helposti muokkaamalla aiemmin luomamme pillartest-kansion init.sls tiedostoa.

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

init2_sls

Vaihdoimme siis tuon aiemmin käyttämämme {{ pillar[’test’] }} muotoon {{ pillar.get(’test’ , ’Testi’) }}. Eli jos test-muuttujalle määriteltyä sisältöä ei löydy, sille annetaan oletusarvo Testi. Tämän jälkeen poistamme pillar-kansiosta tuon test2.sls tiedoston jotta näemme, toimiiko tuo muutettu init.sls. Seuraavaksi voimme siirtyä testaamaan toimivatko pillarit, ajamaan highstate ja lopulta tulostamme cat-komennolla kummankin minionin tmp-kansiossa olevat test.txt. Tämä kaikki toteutetaan seuraavilla komennoilla.

$ sudo salt ‘*’ state.highstate

$ sudo salt ‘*’ cmd.run ‘cat /tmp/test.txt’

ajo2

testi2

Muutos näytti onnistuneen. Tehtävä on siis valmis. Lopetan harjoituksen maanantaina 23.4.2018 klo 10.40. Harjoituksen tekemiseen meni noin 1 tunti ja 10 minuuttia.

Lähteet:

Tero Karvisen nettisivut: http://terokarvinen.com/2018/aikataulu-–-palvelinten-hallinta-ict4tn022-4-ti-5-ke-5-loppukevat-2018-5p

Tero Karvisen Vagrant ohje: http://terokarvinen.com/2017/multiple-virtual-computers-in-minutes-vagrant-multimachine

Kristian Syrjäsen ohjeet Saltin asentamiseen: https://ksyrjanen.me/2018/04/01/palvelinten-hallinta-harjoitus-1/

Jätä kommentti