H4 Linux Palvelimet

Tehtävät liittyvät Haaga-Helia AMK Tero Karvisen pitämään kurssiin, Linux Palvelimet ICT4TN021 4. Tehtävät löytyvät http://terokarvinen.com/2017/aikataulu-palvelinten-hallinta-ict4tn022-3-5-op-uusi-ops-loppusyksy-2017-p5.

Tehtävässä käytetyn koneen rauta

koneen rauta.png

Ennen tehtävien aloittamista, tarkistin verkkoyhteyden ja ajoin Xubuntulla komentokehotteessa komennon , eli päivitin paketit ja vaihdoin näppäimistön kieleksi Suomi.

a) Kokeile Ansiblea

Käytin tehtävässä kahta fyysistä tietokonetta, joissa kummassakin sama rauta (ylhäällä kuva). Toisesta koneesta tein orjan, toisesta masterin.

Hostnamet kuntoon

Orjan hostnameksi määritin “slave”. Kirjoitin orjan koneella terminaaliin:

slave<sudo hostnamectl set-hostname slave>

slave<sudoedit /etc/hosts> lisäsin xubuntun jälkeen “slave” hostnamen

127.0.0.1 localhost
127.0.1.1 xubuntu slave

Käynnistin avahi demonin uudestaan

slave

Tein samat masterin koneella mutta “slave” hostnimen tilalle laitoin “master”.

Ansiblen asennus ja säätö

Asensin Ansiblen sekä orjan että masterin koneille:

<sudo apt-get -y install ansible>

Seuraavaksi lisäsin orjan (slave) IP:n masterin /ansible/hosts tiedostoon:

master<sudoedit /etc/ansible/hosts>

[test]

10.3.119.167 (<– tämä on siis orjan IP, jonka saa orjan koneelta komennolla <hostname -I>)

ansiblehosts.png

Tämän jälkeen latasin SSH:n sekä orjalle että masterille:

<sudo apt-get -y install ssh>

Seuraavaksi lisäsin julkisen avaimen orjan koneelle master-koneella:

master<ssh-keygen -t rsa> ja hyväksyin enterillä kaikki valinnat.

sshkeygen.png

Seuraavaksi määritin orjan koneella orjalle salasanan, koska sitä tarvitaan seuraavassa kohdassa:

slave<passwd>

Kopioin orjan avaimen masterille ja annoin orjan salasanan:

master<ssh-copy-id xubuntu@10.3.119.167>

ansibletestping.png

Seuraavaksi testasin pingata masterilta orjalle. Tämä testi on toimittava, jotta masterilta saa orjalle tavaraa.

master<ansible test -m ping>

Pingaus toimi

Playbookin teko ja apachen asennus orjalle käyttäen masterin konetta

Kirjoitin masterin koneella yaml-formatissa olevan komennon orjalle. Ansible toimii yamlilla.

master<sudoedit /etc/ansible/apache.yml>

Lisäsin tiedostoon seuraavat määritykset:

---
- hosts: test
  remote_user: xubuntu
  tasks:
    - name: testing ping
      ping:

Ajoin playbookin komennolla

master<ansible-playbook /etc/ansible/apache.yaml>

ansibleplaybook.png

Pingaus onnistui, joten kokeilin seuraavaksi asentaa Apachen. Muokkasin edellistä tiedostoa:

---
- hosts: test
  remote_user: xubuntu
  tasks:
    - name: testing ping
      ping:
    - name: install apache
      package:
       name: apache2
       state: latest
      become: true

Ajoin playbookin uudelleen samalla komennolla:

ansibleapacheworks.png

Apache toimi nyt orjan koneella

apache.png

Tehtävässä kesti noin 15 minuuttia, eikä ongelmia esiintynyt. Ainakin yksittäisten ohjelmien asennukseen orjalle, Ansible vaikuttaa paljon yksinkertaisemmalta kuin esim. puppet.

b) Kokeile Saltia

Tein samoilla koneilla myös Salt harjoitustehtävän, joten hostnameja ei nyt tarvitse muuttaa. Masterin hostname on “master” ja orjan “slave”.

Latasin masterin koneelle salt-masterin

master<sudo apt-get -y install salt-master>

ja orjan koneelle salt-minionin

slave<sudo apt-get install -y salt-minion>

Seuraavaksi muokkasin orjan koneella salt-minionin asetuksia

slave<sudoedit /etc/salt/minion/>

Lisäsin uuden tekstipätkän tiedostoon, jossa määritetään salt-masteri. Annoin master-koneen IP:n:

master: 10.3.120.22

saltminion ip.png

Käynnistin salt-minionin uudelleen

slave<sudo service salt-minion restart>

Kävin seuraavaksi hyväksymässä avaimen masterille orjan koneelta.

master<sudo salt-key>

Hyväksyin avaimet

master<sudo salt-key -A>

Seuraavaksi testasin toimiiko yhteydet koneiden välillä.

master<cd /etc/salt>

saltkey.png

saltkey.png

Seuraavaksi kokeilin asentaa slave-koneelle salt-minionille apachen.

master<sudo salt ‘*’ pkg.install apache2>

saltapachemaster.png

Kokeilin orjalla localhostia ennen ja jälkeen apachen asennuskomennon painamista masterillaa:

Screenshot_2017-11-20_09-26-40.png

saltminion apache2.png

Orja sai siis apachen koneelleen.

Tehtävässä kesti noin 15 minuuttia.

LÄHTEET:

https://github.com/marrkus/Palvelinten-hallinta/blob/master/H4.md – Markus Nissinen, Saltin ja Ansiblen asennus, käyttöönotto

http://terokarvinen.com/2017/aikataulu-palvelinten-hallinta-ict4tn022-3-5-op-uusi-ops-loppusyksy-2017-p5 – Tero Karvinen, Palvelinten hallinta (Linux) -kurssi, tehtävät + ohjeet.

Lisäksi sain toveri Markus Nissiseltä henkilökohtaista ohjausta liittyen Ansiblen ja Saltin käyttöön.

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