Viikkotehtävä 2(Palvelinten hallinta)

Etusivulle

a) Demonin asetukset. Säädä jokin demoni (asenna+tee asetukset+testaa) package-file-service -rakenteella. Tunnilla muutettiin ssh:n porttinumeroa, joten tee jotain muuta.

b) Uusi ohjelma. Asenna + tee asetukset + testaa jokin sovellus, jota ei ole käsitelty tunnilla. Asenna ensin käsin, ja käytä sen jälkeen find-komentoa etsiäksesi muuttuneet tiedostot.

c) Aja jokin tila paikallisesti ilman master-slave arkkitehtuuria. Tutki debug-tulostetta. ’sudo salt-call –local state.apply hellotero –state-output terse’

d) Vapaaehtoinen: Omaa koiranruokaa. Asenna ja säädä salt:lla jokin ohjelma, jota oikeasti käytät. Esimerkiksi omalla läppärillä tai omalla Linoden/DigitalOceanin/OVH:n tms palvelimella.

e) Vapaaehtoinen: Suolapääsiäinen. Säädä useita käytössäsi olevia ohjelmia salt:lla. Tällainen käyttö antaa kokemusta ja itsevarmuutta keskitettyyn hallintaan. Ja tekee helpoksi ottaa uusia koneita omaan käyttöön.

Tehtävä alkoi 10.4.2020 kello 10.00

Tehtävä a)

Aloitamme tehtävän tekemisen ja ensimmäiseksi, kun kone on avattu ajamme komennon Sudo apt-get update.

Seuraavaksi päätimme asentaa apache2 ja se käy komennolla Sudo apt-get -y install Apache2

Asennuksen jälkeen hyväksyimme palomuurista Apache 2 komennolla sudo ufw allow 'Apache' ja sitten katsoimme apachen statuksen

Kävin vielä varmistamassa http://oma-ip, että apache toimii

Latauksen jälkeen kävimme muuttamassa /var/www/html/index.html ja kävin poistamassa sieltä HTML tekstin ja lisäsin sinne oman tekstin.

Loimme apachelle uuden direktorin /srv/salt kansioon Sudo mkdir -p /srv/salt/apache ja tänne loimme .sls tiedoston sudoedit /srv/salt/apache/init.sls ja kirjoitimmi sinne Teron ohjeiden mukaan YAMS:ia. (YAMLissa on erittäin täkreää, että on oikeat määrät välilyöntejä, muuten koodi ei toimi)

apache2:
 pkg.installed
/var/www/html/index.html:
 file.managed:
   - source: salt://apache/default-index.html
a2enmod userdir:
 cmd.run:
   - creates: /etc/apache2/mods-enabled/userdir.conf
apache2service:
 service.running:
   - name: apache2
   - watch:
     - cmd: 'a2enmod userdir'

testaamme tämän jälkeen, että teksti toimii sudo salt '*' state.apply apache

Testissä huomasin, että olisin voinut aikaisemmin poistaa apachen ennen pkg.installed komentoa idempontentissa, mutta päätin olla poistamatta, koska orjani toimii samassa koneessa, ettei tule mitään ongelmia.

Mietin mitä olisin voinut vaihtaa muuta kuin ssh portin, enkä keksinyt mitään.

Tehtävä b)

Päätin ladata sysstatin toisessa tehtävässä, eli monitorointi työkalun.

aloitetaan lataamlla sysstat käsin.

sudo apt-get -y install Sysstat

Latauksen jälkeen kävin konffaamassa sysstatia ja vaihdetaan False -> True

sudoedit /etc/default/sysstat

Sitten potkaistaan sysstat päälle komennolla

sudo systemctl start Sysstat

Avauksen jälkeen suoritetaan sysstat salt asennus

Loin kansion sysstatille /srv/salt kansioon ja kopioidaan se

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

Tämän jälkeen luon sysstat.sls tiedoston /srv/salt/sysstat kansion sisään.

sudoedit sysstat.sls ja sinne sisään kierjoitamme koodin


sysstat:
  pkg.installed

/etc/default/sysstat:
  file.managed:
    - source: salt://sysstat

startsysstat:
  service.running:
    - name: sysstat

Kansiosta löytyy siis sysstat ja sysstat.sls tiedostot

Nyt voimme kokeilla toimiiko sysstat halutulla tavalla.

sudo salt '*' state.apply sysstat

Ja teistestä huomaamme, että systat toimii ja pystymme käymään katsomassa apachen iostatsit.

Käytin sysstatin asennuksessa roopen kurssitehtäviä lähteenä. https://roopelinux.wordpress.com/2018/04/08/palvelinten-hallinta-harjoitus-2-raportti/

Kävin etsimässä find komennolla muuttuneet tiedostot /etc/sysstat kansiosta.

sudo find -printf '%T+ M %p\n%A+ A %p\n%C+ C %p\n'|sort

Tehtävä c)

Tutkin sysstatin debug tuloksia komennolla.

sudo salt-call --local state.apply sysstat --state-output terse

Komennon lopussa kohta terse yksinkertaistaa debug tuloksen, jotta se olisi selkeämpi.

Tehtävä loppui 11.4 kello 13.50 / Käytimme aikaa yhteensä noin 5tuntia

Lähteet:

Roopelinux Palvelinten hallinta (Luettu 11.4.2020)

https://roopelinux.wordpress.com/2018/04/08/palvelinten-hallinta-harjoitus-2-raportti/

Tero Karvinen (Luettu 11.4.2020)

TeroKarvinen.com

Etusivulle

Viikkotehtävä 1 (Palvelinten hallinta)

Etusivulle

h1 Hei maailma, verkon yli ja idempotenssi.

Lue aikataulussa mainitut artikkelit. Joko linkistä tai googlettamalla/duckittamalla artikkelin nimeä.

a) Asenna Salt ja siihen uusi orja. Voit tehdä ne esimerkiksi uudelle virtuaalikoneelle, niin pääset kokeilemaan puhtaalta pöydältä.

b) Tee saltille idempotenssi hei maailma (siis tiedostosta, foo.sls)

d) Kerää tietoa koneesta saltin avulla (grains.items)

e) Kokeile jotain toista tilaa kuin file.managed. Tärkeitä ovat pkg.installed, file.managed, service.running, file.symlink, user.present, group.present. Ohjeita saa esim ’sudo salt kissa sys.state_doc pkg.installed|less’

f) Vapaaehtoinen: Laita Salt Master palvelimelle, joka näkyy Internetiin. Silloin orjat saavat siihen yhteyden tulimuurin läpi, ei-julkisista (NAT) osoitteista ja vaikkapa virtuaalikoneista.

a) Ensiksi ajetaan update ja uprgadet ja pyyhitään pölyjä koneelta.

Näiden jälkeen tarkistetaan komennolla Hostname -I oma IP osoite, joka lisätään tiedostoon /etc/slat/minion kansioo, kun minion on asennettu.

Kun ip osoite ja id on saatu tiedstoon laitettua hyväksytään saltkey komennolla

sudo salt-key -A

Tehtävä b)

Loimme tiedoston /srv/salt/hello.sls ja lisäsimme sinne tekstiä, jotta master pystyy kopioimaan tiedostosta txt tiedoston heimaailma.txt

Tehtävä d)

grains.items haualla löytyy paljon tietoa esim cpu flageja, cpu model yms.

tehtävä e)

Kokeilimme pkg installed tilaa onnistuneesti. Loimme /srv/salt kansioon uuden .sls tiedoston, jonka sisään annoimme komennot ja mitkä paketit halusimme ladata.

Huomsin, että rsync oli jo asennettu valmiiksi.

Lähteet:

http://terokarvinen.com

https://docs.saltstack.com/en/getstarted/config/files.html

Etusivulle

Design a site like this with WordPress.com
Aloitus