Harjoitus 3

Palvelinten hallinta H3

Aloitin komennolla sudo apt-get update.

B)

Tiedosto muotista: tee yksinkertainen SLS-tilatiedosto, joka laittaa muuttujan tiedostoon. Käytä jinjan kontekstimuuttujaa (template: jinja, context: …).

Tein salt tilan uuteen kansioon nimeltä jinjatest.

cd /srv/salt/

sudo mkdir jinjatest

sudoedit init.sls

Tässä näkyy init.sls:

 

initjinja1

Sitten tein colors.txt:n, jossa oli {{ color }} muuttuvana osana.

sudoedit colors.txt

template1

sudo salt ‘*’ state.apply jinjateststate1

Ei virhe merkintöjä. Katsotaan oliko tapahtuma oikea.

inittest1

Kyllä, jinja kansio on ilmestynyt. Sitten katsoin, että haluama teksti oli colors.txt tiedostossa.

success1

Kyllä oli. Testi oli onnistunut.
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.)

Tein uuden kansion tälle tehtävälle ja sinne init.sls tiedoston.

sudo mkdir multi

sudoedit init.sls

Tein init.sls tiedoston väärään paikkaan, joten siirsin sen komennolla:

sudo mv /srv/salt/init.sls /srv/salt/multi/init.sls

Tältä init.sls näytti:

multiinit2

Init.sls tiedostoon oli otettu mallia täältä.

Sitten tarvittiin malli.txt tiedosto.

sudoedit malli.txt

malli2

Olikokeilun aika.

sudo salt ‘*’ state.apply multi

Tutkin oliko kaikki haluamat tiedostot ilmestyneet.

statetestbetter2

Kuvasta näkyy, että aluksi threefiles kansiota ei ole ja tilan myötä se oli ilmestynyt.

Testi onnistui.

 

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.

Tein uuden kansion ssh tilaa varten ja tein init.sls tiedoston.

cd /srv/salt/

sudo mkdir sshd

cd sshd

sudoedit init.sls

Kuva, miltä init.sls näytti. Valitsin portiksi 8888.

portinit

Haen sshd_config tiedoston tilan kansioon.

cd /etc/ssh/

sudo cp /etc/ssh/sshd_config /srv/salt/sshd/sshd_config

Muokkaan /srv/salt/sshd/ kansiossa sshd_config tiedostosta “Port” kohdan perään jinja muuttujan {{ port }}.

sudoedit sshd_config

changeconfig

Kokeilen tilaa.

sudo salt ‘*’ state.apply sshdstatesshst

Testi toimi. Yritän uudestaan, kun olen ensin poistanut ssh:n.

sudo apt-get purge openssh-server

sudo salt ‘*’ state.apply sshd

Sitten kokeilin ssh:ta oletus porttiin 22.

ssh -p 22 riku@localhost

Ei toiminut, niinkuin oletin.

Sitten porttiin 8888.

ssh -p 8888 riku@localhost

Ja se toimi.

sshtestsuccess

Testi oli onnistunut.

 

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.

Valitsin kokeiltavan tilan täältä.

Eli Kristian Syrjäsen tila sysstatin käyttöönotosta, jossa innoittajana Roope Varttila.

Aloitan ohjeen mukaan tekemällä sysstat kansion.

cd /srv/salt/

sudo mkdir sysstat

Sitten kopioin seuraavan tiedoston

sudo cp /etc/default/sysstat /srv/salt/sysstat/sysstat

Siinä vaihdettiin false -> true. Itsellä se olikin jo valmiiksi.

sysstatfile

Teen samanlaisen init.sls tiedoston kuin Kristianilla.

sudoedit init.sls

kirstinit

Kokeilen toimiiko näiden ohjeiden mukaan.

sudo salt ‘*’ state.apply sysstat

successsysstat

Testasin ja se toimi.

 

Lähteet:

http://terokarvinen.com/2018/aikataulu-%e2%80%93-palvelinten-hallinta-ict4tn022-4-ti-5-ke-5-loppukevat-2018-5p

http://terokarvinen.com/2018/make-a-million-of-those-jinja-templating-salt-states

http://terokarvinen.com/2018/pkg-file-service-control-daemons-with-salt-change-ssh-server-port

https://ksyrjanen.me/2018/04/08/palvelinten-hallinta-harjoitus-2/

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s