Tehtävän lähde: http://terokarvinen.com/2020/configuration-managment-systems-palvelinten-hallinta-ict4tn022-spring-2020/#h6
a) Asenna jokin toinen Linux-levityspaketti orjaksi Saltille. CentOS on hyvä vaihtoehto. Voit esimerkiksi asentaa CentOS:n VirtualBoxiin ja tehdä koneiden välille virtuaaliverkon. Jos käytät Vagrantia, ‘cent.vm.box = “centos/7″‘ on kätevä.
Laiska kun olen… Aloitin tutustumalla Vagrant -ohjelmaan. En tiedä ohjelmasta paljoakaan, mutta heidän etusivulla päämainoslauseena on juuri haluamani vastaus “Development Environments Made Easy”. Jatkan ohjelmaan tutustumista sivuilla ja käyn läpi “Getting started” dokumentaation.
Vagrant toimii cmd:n kautta Windowsilla.
Nyt olen tutustunut hiukan ohjelmaan. Aloitetaan tehtävä.
Hain täältä sopivan koneen tähä tarkoitukseen: https://app.vagrantup.com/boxes/search?utf8=%E2%9C%93&sort=downloads&provider=&q=centos7
Tein centos7 nimisen kansion ja ajoin sinne cmd:llä
vagrant init generic/centos7
Worth it.
Edited: Kun asensin Vagrantin Windowsille, virtualbox ei suostunut enään käynnistymään.
Käynnistin koneen uudestaan eikä toiminut silläkään, joten ajoin repair toiminnon virtualboxiin hakemalla “Add or remove programs” -> “virtualbox” -> “modify” -> “repair”. Tämän jälkeen virtualbox toimi.
Seuraavaksi liitän centos7:n salt masteriin tuttuun tapaan.
b) Kerää grains.items avulla tiedot orjista, joissa on eri levityspaketti.
master$ sudo salt 'centos7.localdomain' grains.items
c) Tee päivän viesti (motd), jossa koneen tyyppi tulee grains osfinger -muuttujasta. Kokeile, että saat eri levityspaketeilla eri tuloksen. Voit hyödyntää aiemmin tekemääsi motd:ia.
Tässä aijemmin tekemäni.
Muokkasin muutamaa grainsia.
Ajoin tilan kahdesti ja ihmettelin näkymää:
En vielä tutkinut miten saan SSH:n vagrantilla koneen asennuksen yhteydessä reitteineen koneelle. Joten kirjaudun paikallisesti. Vagrantfile:ssa taisi olla default SSH asetukset olemassa, mutta kommentoitu # merkillä pois ja en ottanut niitä vielä tässä asennuksessa käyttöön.
Testasin paikallisesti.
d) Tee tila, joka tekee RedHat-perheellä (esim. CentOS) tiedoston /tmp/redhat ja Debian-perheellä (esim Ubuntu) tiedoston /tmp/debian. Voit käyttää mitä vain eri perheiden levityspaketteja.
Tein tilan soveltaen ohjetta täältä: http://terokarvinen.com/2018/configure-windows-and-linux-with-salt-jinja-if-else-and-grains
d) Tee tila, joka asentaa ja konfiguroi Apachen kahteen erilaiseen järjestelmään, esim. CentOS ja Ubuntu. Paketin nimi on CentOS:ssa “httpd”. Käytä Salt-koodin generointia muoteilla.
master$ sudo apt-get install apache2
master$ sudo systemctl disable nginx.service #toimiskohan ihan vaan näin
master$ sudo systemctl enable apache2@
Testataan ensin tätä. Ajan tilan kahdesti.
To do:
sulje nginx prosessi samalla tilalla,
muokkaa index.html ja/tai asetuksia
käynnistä apache
poista apache molemmilta koneilta ja testaa