Windows

Windows - Palvelinten hallinta viikkotehtävä 6

TLDR

Tehtävässä ajoin saltin komentoja paikallisesti windows virtuaalikoneessa, sekä pohdin oman modulini aihetta.

Tehtävänanto

Kokeile saltia windowsissa - Tehtävä A

Tehtävänä oli kokeilla saltia windows käyttöjärjestelmässä. Tehtävää varten asensin windowsin tyhjään virtuaalikoneeseen. Windows iso kuva on saatavilla heidän omilta sivuiltaan, eikä asennus vaadi tuoteavainta.

tili

Asennusta tekiessäni huomasin, että windows vaatii microsoft tilin syöttämistä, jotta asennus voi edetä. Virtualboxin asetuksista valitsin boksin network välilehdeltä cable connected ja poistin sen käytöstä. Tämä on virtuaalikoneelle sama kuin repisi fyysisen kaapelin irti omasta tietokoneesta. Painoin yläreunassa olevaa nuolta jotta asennussivu latautui uudestaan ja pääsin näin syöttämään paikallisen käyttäjän tiedot.

eitiliä

Ensimmäisenä oli vuorossa asentaa salt-minion windowsille. Asennustiedoston löytää saltin sivuilta. Asennuksen yhteydessä kysyttiin masterin IP osoitetta tai hostnamea. Kokeilin molempien avulla yhdistää toiseen virtuaalikoneeseen, jota olen käyttänyt aikaisemmin kurssin tehtäviin tuloksetta. Päädyin siis ajamaan komennot paikallisesti.

Jotta saltia voi käyttää windowsissa paikallisesti, tulee avata Powershell administraattorina. Tämän jälkeen sama salt-call --local komento toimii.

salt-call –local

Seurasin Saltin omia ohjeita kuinka ajaa komentoja windowsilla paikallisesti. Asensin myös gitin tässä välissä, sillä seuraavia komentoja ei pystynyt ajamaan ilman sitä.

gitupdate

Komentojen ajaminen päivittää saltin tekijöiden git repositoriot windowsia varten. Tämän jälkeen voi käyttää saltia pakettien asentamiseen windowsilla. Githubista winrepo-ng:stä voi käydä tarkastelemassa, mitä ohjelmia on mahdollista asentaa saltin kautta windowsille.

installvscode

installedvscode

Kokeilin myös asentaa Docker desktopin, sillä sekin löytyi winreposta.

installdocker

dockerfailure

Docker haluaa, että asennamme WSL2 järjestelmään, jotta se voi toimia. Winreposta löytyy tila tällekkin, joten asennetaan se saltin avulla

installwsl

Asennus ei näyttänyt onnistuvan saltin avulla. Yritetään siis dockerin ehdottamaa lähestymistapaa

dockerwsl

Valitsin Y jotta virtuaalikone käynnistettiin uudestaan.

wsl

Jälleen vaadittiin lisää käsin asennettavaa restartin jälkeen.

Nyt jälkeenpäin paketin nimeä katsoessa, olisi pitänyt ensin ajaa dockerin ehdottama komento, jotta windowsissa saa wsl lisäominaisuuden käyttöön, jonka jälkeen salt tila olisi ajettu ja tätä ei olisi tarvinnut asentaa käsin.

Uudelleenkäynnistyksen yhteydessä laitoin virtualboxista Nested VT-x/AMD-V valinnan päälle, jotta virtualisointi onnistuu virtuaalikoneen sisällä.

nested

error

Vastauksena oli silti seuraavanlainen virheviesti, joka valitti virtualisoinnin puutteesta. Ajoin uudestaan wsl2-update saltin kautta ja katsoin, mitä tapahtuu

success?

Tällä kertaa asennus vaikutti onnistuvan, mutta sama virheilmoitus tuli esille jälleen docker desktopia avatessa. Yritin myös ajaa dockerin ehdottaman “hei maailma” komennon, mutta sekin kaatui virheilmoitukseen

dockerfail2

Oman modulin aihe - Tehtävä B

Oman modulin aiheeksi olin miettinyt webkehitysympäristöä, joka voisi toimia kaikilla käyttöjärjestelmillä Dockerin avulla. Tarkoituksena siis, että saltin avulla automatisoitaisiin järjestelmän käyttöönotto, jonka jälkeen saisi yhdellä komennolla käyttövalmiin kehitysympäristön näkymään localhostiin. Alustavasti olin ajatellut tekeväni kontit spring bootia, flaskiä sekä nodejs ympäristöjä varten. Jokaiseen konttiin olisi tarkoitus myös lisätä postgresql tietokannan käyttämistä varten.

Idea on todella docker painotteinen ja poikkeaa jonkin verran kurssilla käsitellyistä aiheista. Aikomuksenanin on konsultoida opettajaa keskiviikon luennolla ja kysyä onko modulin idea hyväksyttävä. Oma kokemus dockerista on tällä hetkellä täysi nolla. Mikäli dockerin käyttö projektissa osoittautuu ylitsepääsemättömän hankalaksi kehitysympäristöjen asentamisen automatisoinnin hoidan saltin avulla.

Linkkejä