Package-File-Service
a) Demonin asetukset eli säädetään jokin demoni package-file-service -rakenteella.
Asennetaan Nginx Package-file-servicen avulla.
Ensin on luotava hakemisto. Hakemiston loimme mkdir /srv/salt/nginx -komennolla, jonka jälkeen loimme init.sls tiedoston kyseiseen kansioon.
$ sudoedit /srv/salt/nginx/init.sls
Tässä vaiheessa vasta asensimme Nginx palvelimen. Tämä tiedosto kirjoitetaan YAML-kielellä, joten sen tulee näytämään seuraavalta:
nginx:
Tämä riittää pelkästään nginx palvelimen asentamiseen.
pkg:
– installed
Tämän jälkeen ajetaan tämä tila.
$ sudo salt ‘*’ state.apply nginx
Ja näin olemme asentaneet Nginx palvelimen.
Seuraavaan vaiheeseen tarvitsemme nginx.conf ja index.nginx-debian.html tiedostoja, joten kopioimme ne /srv/salt/nginx hakemistoon seuravilla komennoilla.
$ sudo cp /etc/ngnix/ngnix.conf /srv/salt/ngnix
$ sudo cp /var/www/html/index-ngnix-debian.html
Seuraavaksi muokkasimme lisää äskeistä init.sls tiedostoa. Lisäsimme init.sls tiedostoon service.running ja file.managed tilat. Kyseinen init.sls tiedosto näyttää seuraavalta.

Tämän jälkeen ajetaan uudestaan juuri muokattu init.sls tiedosto.
$ sudo salt ‘*’ state.apply nginx

Seuraavaksi muokkasimme hieman index.ngnix-debian.html tiedostoa, jotta näemme toimiiko kyseiset asetukset. Teimme muokkaukset /srv/salt/ngnix hakemistossa, jotta tiedämme file.managerin toimivan oikein.
$ sudoedit /srv/salt/ngnix/index.nginx-debian.html
Tämän jälkeen ajetaan tämä init.sls tiedosto uudestaan.
$ sudo salt ‘*’ state.apply ngnix

Ennen testaamista on nginx käynnistettävä uudestaan.
$ sudo systemctl restart nginx
Seuraavaksi testasimme mitä muutoksia tapahtui, joten menimme virtuaalikoneen localhost sivulle, josta näimme tehdyt muutokset.

b) Asennetaan uusi ohjelma käsin, jonka jälkeen käytetään find-komentoa etsiäksemme muuttuneet tiedostot.
Lähdin asentamaan sysstat-ohjelman, koska sen avulla näkee tietokoneen suorituskyvyn. Asensin sysstat:in ja muokkasin sen keräämään kahden minuutin välein tietoja seuraavilla komennoilla:
Step1. Asennus
$ sudo apt-get update
$ sudo apt-get install sysstat
Step2. Sallitaan sysstat
$ sudoedit /etc/default/sysstat
Vaihdetaan ENABLED=”False” –> ENABLED=”True”
Step.3 Vaihdetaan systatin keräys intervalli kahteen minuuttiin.
$ sudoedit /etc/cron.d/sysstat
Step4. Käynnistetään sysstat uudelleen
$ sudo systemctl restart sysstat
Asentamisen jälkeen etsittiin find-komennolla mitä tiedostoja on muokattu viimeisimmäksi. Sysstatin asetukset löytyvät /etc hakemistossa, joten mennään cd -komennolla kyseiseen kansioon. Seuraavaksi suoritetaan find -komento.
$ find -printf “%T+ %p\m”|sort

c) Ajetaan Nginx tila ilman master-slave arkkitehtuuria.
DEbugataan Nginx. Käytetään seuraavaa komentoa:
$ sudo salt-call –local state.apply ngnix –state-output terse

Kuten yläpuolelta huomaan, kaikki näyttäisi olevan kunnossa!
Lähteet:
http://terokarvinen.com/2018/pkg-file-service-control-daemons-with-salt-change-ssh-server-port
http://terokarvinen.com/2018/apache-user-homepages-automatically-salt-package-file-service-example
https://www.digitalocean.com/community/tutorials/saltstack-infrastructure-creating-salt-states-for-nginx-web-servers