Edellisessä artikkelissa tutustuimme Puppetiin pintapuolisesti sitä pelkästään yhdellä työasemalla käyttäen. Tässä osassa kerron miten voit pystyttää testiympäristön agent/master -käyttöä ajatellen käyttäen VirtualBoxia.

1. Johdanto

Testiympäristön pystytys tehdään niin että isäntäkoneena on Windows 7 ja virtuaalikoneina ajetaan Ubuntu Serveriä ja Xubuntua, molemmissa käytettävä versio on Oneiric Ocelot 11.10. Tehdäksesi samanlaisen testiympäristön, pitää isäntäkoneesi olle liitettynä reitittimeen joka luo koneiden välille lähiverkon ja antaa jokaiselle koneelle oman lähiverkon IP-osoitteen mallia 192.168.X.X. Tässä tapauksessa reitittimenä toimii A-Link WNAP 3G.

Testiympäristöä varten tarvitset

Voit toki käyttää myös muita haluamiasi versioita, mutta jokin asia saattaa toimia niissä toisin.

2. VirtualBoxin ja virtuaalikoneiden asennus

Tätä osiota en käy sen tarkemmin läpi, VirtualBoxin asennus Windows 7 -käyttöjärjestelmään ja uusien virtuaalikoneiden asennus VirtualBoxin alle ovat sen verran suoraviivaisia ja opastettuja operaatioita että niistä selviää varmasti VirtualBoxin ohjeilla ja Ubuntun yleisillä asennusohjeilla.

Lähtötilanne on siis se että sinulla on VirtualBox ja kaksi virtuaalikonetta (Ubuntu Server ja Xubuntu) asennettuina. Anna koneille nimet puppetserver ja puppetagent1 seurataksesi ohjetta ja helpottaaksesi hahmottamista.

3. VirtualBoxin asetusten muokkaus ja kiinteät lähiverkon IP-osoitteet virtuaalikoneille

Kun olet saanut virtuaalikoneet luotua ja asennettua, käy muokkaamassa niiden verkkoasetuksia VirtualBoxin asetuksista (Kone -> Asetukset -> Verkko) ja valitse kuvan mukaisesti asetuksen Liitetty laitteeseen arvoksi Bridged Adapter.

Kuva 1

Tällä tavoin virtuaalikoneille annetaan jokaiselle oma IP-osoite samasta lähiverkosta kuin missä isäntäkoneesikin on. Oletusasetuksella NAT virtuaalikoneilla on kaikilla sama IP-osoite 10.0.2.15 eivätkä ne voi nähdä toisiaan eikä reittittimeesi liitetyt fyysiset laitteetkaan voi niitä nähdä.

Laita VirtualBoxin verkkoasetuksista muistiin kunkin koneen Mac Address eli fyysinen osoite. Oletuksena VirtualBox luo kaikille koneille satunnaiset Mac-osoitteet. Seuraavaksi käydään laittamassa reittimen asetuksita MAC-osoitteiden perusteella virtuaalikoneille kiinteät IP-osoitteet. Oletusasetuksilla reititin antaa jokaiselle yhdistävälle laitteelle automaattisesti kasvavan IP-osoitteen siinä järjestyksessä kun laitteet sitä pyytävät, joten osoite saattaa muuttua riippuen siitä missä järjestyksessä koneet käynnistät ja onko muita laitteita liitettynä verkkoon.

Tämä kohta on tietysti erilainen jokaisella reitittimellä, mutta yritä löytää alla olevan kaltainen TCP/IP / LAN asetusvalikko.

Kuva 2

Aseta tässä valikossa Domain Nameksi localdomain. Kohdasta Set Static DHCP päästään määrittämään kiinteät IP-osoitteet kullekkin MAC-osoitteelle. Valitse sellaiset IP-osoitteet jotka ovat DHCP Client Rangen sisällä eli tässä tapauksessa jotain väliltä 192.168.1.100-192.168.1.200.

Kuva 3

Virtuaalikoneelle puppetserver asetettiin siis kiinteä IP-osoite 192.168.1.190 ja koneelle puppetagent1 osoite 192.168.1.191. Nyt kun käynnistät koneen puppetserver, pitäisi sen IP-osoitteen olla juuri asetettu. Voit tarkistaa toimivuuden komennolla* ifconfig*:

Kuva 4

Varmista seruaavaksi että koneet näkyvät toisensa, eli pingaa koneella puppetagent1 osoitetta 192.168.1.190 ja toisinpäin pingaa koneella puppetmaster osoitetta 192.168.1.191. Jos saat seuraavanlaisia tuloksia molemmilla koneilla ovat verkkoasetuksesi kunnossa.

Kuva 5

4. FQDN eli Fully Qualified Domain Name

Saadaksemme puppetin toimimaan master/agent konfiguraatiolla, pitää koneilla olla oikein asetetut FQDN:t eli absoluuttiset domainnimet. Aiemmassa kohdassa asetimme reitittimet LAN-asetuksissa domainiksi localdomain joten käytetään sitä. Oikealla palvelimella olisi tietysti joku oikea FQDN kuten tämän blogin hostaamiseen käytetty kone limia.jannewaren.fi. Testiympäristössä toimimme kuitenkin vain lähiverkon sisällä joten localdomain on ihan sopiva meille.

Voit tarkistaa koneen hostnamen (koneen nimi) komennolla hostname ja FQDN:n komennolla hostname -f. Oletusasetuksilla molemmat näyttävät samaa eli koneen nimeä:

jkw@puppetagent1:~$ hostname
puppetagent1
jkw@puppetagent1:~$ hostname -f
puppetagent1

Muokkaa koneen FQDN:ää ja koneen näkemiä muita FQDN-osoitteita muokkaamalla tiedostoa /etc/hosts (esimerkiksi komennolla sudo nano /ets/hosts) tällaiseksi koneella puppetmaster..

Kuva 6

..ja tällaiseksi koneella puppetagent1:

Kuva 7

Nyt voimme testata pingillä että koneet näkevät toisensa ja itsensä myös FQDN nimiä IP-osoitteiden sijaan käytettäessä. Pingin kanssa voit nyt asetusten ollessa kunnossa käyttää joko pelkkään koneen nimeä tai pitempää FQDN-nimeä:

Kuva 8

5. Entäs sitten?

Artikkelin ohjeita seuraamalla sinulla pitäisi nyt olla VirtualBoxin sisällä kaksi virtuaalikonetta jotka näkevät toisensa FQDN-osoitteita käyttäen. Seuraavaksi voidaan edetä puppetin agent/master asennukseen. Kirjoitan siitä eri artikkelissa, mutta sillä aikaa koneelle puppetserver voi asentaa paketin puppetmaster ja koneelle puppetagent1 paketin puppet – ja seurata puppetin omia ohjeita :)