Palvelinten hallinta ICT4TN022-3005 Harjoitus 7

Oma moduli


Tehtävän suorittaminen aloitettu 18.5.2020 9:30

Laitteen/alustan tiedot, jolla tehtävä suoritettiin:

VM #1 (Xubuntu)

  • Oracle VirtualBox 6.1.6
  • Xubuntu 18.04.03 LTS (+ VirtualBox guest additions)
  • 4GB RAM
  • 8GB Levytilaa (dynaaminen)

VM #2 (Xubuntu2)

  • Oracle VirtualBox 6.1.6
  • Xubuntu 18.04.03 LTS
  • 2GB RAM
  • 10GB Levytilaa (dynaaminen)

b) Oma moduli (iso tehtävä). Ratkaise jokin oikean elämän tai keksitty tarve omilla tiloilla/moduleilla. Voit käyttää Salttia tai muuta valitsemaasi modernia keskitetyn hallinnan ohjelmaa. Esitä tulos viimeisellä opetuskerralla, 5-10 min (keskiviikon ryhmä). Live demo olisi kiva. Raportoi modulisi tarkoitus, koodi ja testit.

Päätin luoda moduulin, joka konfiguroi palomuurin, ssh-yhteyden ja apachen minioneilla.

1) UFW

Aloitin luomalla kansion nimeltä ufw /srv/salt hakemistoon, jonka sisälle loin init.sls-tiedoston. Määrittelin tiedostossa UFW:n käynnistyvän paitsi, jos se on jo käynnissä. Avasin myös SSH:ta varten portin 22, ja Apachea varten portin 80.

Jolloin init.sls tiedosto näytti UFW:n kohdalla tältä. Testasin ajaa tämän jälkeen tilan muutamaan otteeseen. Ensimmäisellä ajokerralla tila teki muutoksia onnistuneesti ja toisella kerralla tila ajettiin onnistuneesti, mutta muutoksia ei tehty. Tästä pystyin päättelemään tilan olevan idempotentti.


2) SSH

Aloitin luomalla kansion sshd /srv/salt hakemistoon, jonka sisälle loin init.sls tiedoston, jossa määriteltiin SSH:n asennus, sshd_config-tiedoston määrittely, motd-tiedoston määrittely sekä lopuksi tarkistettiin ssh-demonin olevan päällä.

Jolloin init.sls tiedosto näytti tältä. Tämän jälkeen loin vielä sshd kansioon init.sls-tiedostossa määritellyt sshd_config -ja motd-tiedostot, joiden sisältö oli seuraava.

Tämän jälkeen ajoin sshd-tilan jälleen kerran muutamaan otteeseen varmistuakseni sen olevan idempotentti. Ensimmäisellä kerralla tila ajettiin onnistuneesti ja muutoksia tehtiin, toisella kerralla tila ajettiin myös onnistuneesti, mutta muutoksia ei tapahtunut.


3) Apache 2

Aloitin luomalla kansion apache /srv/salt hakemistoon, jonka sisälle loin init.sls -tiedoston. Määrittelin tiedostossa Tero Karvisen ohjeen mukaan asetukset, jolla käyttäjän kotisivut saadaan toimimaan. Lisäsin myös muutaman määrityksen /etc/skel/ -hakemistoon, jolloin uutta käyttäjää luodessa kotisivut luodaan samalla.

Tämän jälkeen tein vielä apache-kansioon init.sls -tiedostossa määritellyt index.html -ja kayttaja-index.html -tiedostot. Ajoin tilan muutamaan otteeseen varmistuakseni sen toiminnasta ja idempotentiudesta.


4) Sovellukset

Päätin myös tehdä yksinkertaisen tilan, joka asentaa muutaman sovelluksen. Tein tätä varten uuden kansion sovellukset ja sen sisälle init.sls tiedoston, joka näytti seuraavalta.

Testasin jälleen ajaa tilaa muutamaan otteeseen varmistuakseni sen toiminnasta.


5) Top.sls

Tein tilojen luomisen jälkeen vielä Top.sls -tiedoston, jonka sisältö näytti seuraavalta.


Tehtyäni moduulini valmiiksi, tein uuden repon GitHubiin ja kopioin moduulini tänne.

https://github.com/tommygratschew/apachemoduuli

Tämän jälkeen loin kokonaan uuden Xubuntu-virtuaalikoneen (VM #2), jolle asensin salt-minionin, avasin portit 4505 ja 4506, sekä määrittelin masterin (VM #1) IP-osoitteen ja minionin id:n. Hyväksyin tämän virtuaalikoneen master-virtuaalikoneella (jossa olin tehnyt aikaisemmat testit yms.) ja ajoin luomani moduulin komennolla ”sudo salt ’xubuntu2’ state.highstate”. Pienen odottelun jälkeen moduuli suoritettiin onnistuneesti. Ajoin komennon vielä kerran uudestaan varmistuakseni sen olevan kokonaisuutena idempotentti. Tila ajettiin uudestaan onnistuneesti ilman muutoksia. Tämän jälkeen testasin vielä kaiken asentamani toimivuuden yksitellen.

SSH

myös motd näkyy halutusti.


UFW


Apache 2 kotisivut

Tein uuden käyttäjän “testi”, jonka jälkeen testasin selaimessa päästä käyttäjän kotisivulle.


Sovellukset


Päättelin näistä testeistä luomani moduulin toimivan halutulla tavalla.

Tehtävä suoritettu 18.5.2020 klo. 16:25


Lähteet

Karvinen, Tero 2020: Configuration Managment Systems – Palvelinten Hallinta – Spring 2020, h7. http://terokarvinen.com/2020/configuration-managment-systems-palvelinten-hallinta-ict4tn022-spring-2020/, Luettu 18.5.2020

Karvinen, Tero 2018: Apache User Homepages Automatically – Salt Package-File-Service Example. http://terokarvinen.com/2018/apache-user-homepages-automatically-salt-package-file-service-example, Luettu 18.5.2020

Bloglinux.me 2018: Using salt to automate apache2 and php installation (h2). https://www.bloglinux.me/node/11, Luettu 18.5.2020

Gratschew, Tommy 2020: Palvelinten hallinta ICT4TN022-3005 Harjoitus 2. https://tgratschew.news.blog/2020/04/13/palvelinten-hallinta-ict4tn022-3005-harjoitus-2/, Luettu 18.5.2020

Gratschew, Tommy 2020: Palvelinten hallinta ICT4TN022-3005 Harjoitus 5. https://tgratschew.news.blog/2020/04/30/palvelinten-hallinta-ict4tn022-3005-harjoitus-5/, Luettu 18.5.2020

Gratschew, Tommy 2020: Palvelinten hallinta ICT4TN022-3005 Harjoitus 6. https://tgratschew.news.blog/2020/05/12/palvelinten-hallinta-ict4tn022-3005-harjoitus-6/, Luettu 18.5.2020

Github linkki: https://github.com/tommygratschew/apachemoduuli

2 thoughts on “Palvelinten hallinta ICT4TN022-3005 Harjoitus 7

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

Create your website with WordPress.com
Get started
%d bloggers like this: