Hallitse palvelimiasi ja työasemiasi Pupetilla. Kuvaile tavoitetila, ja anna Pupetin tehdä tarvittavat säädöt ja asetukset.
Pupettia käyttävät mm. Google, Mozilla ja Wikipedia. USA:n valtio suojaa Windows- ja Linux-työasemansa Pupetilla (US Government Security Baseline).
Esitiedot
Esitiedot (kertaa nämä): Linuxin komennot, apt, demonien hallinta (esim Apache), tiedostojärjestelmän rakenne (etc, var…).
Alustava aikataulu
Kaikki tunnit labrassa 5004 tiistaisin 12:00 – 15:45. Kurssi toisen periodin loppukeväällä 2017, viikot w13 – w20.
1. Hello Puppet World. Aloitus: järjestäytyminen, nykytilan arviointi; automaation ja keskitetyn hallinnan merkitys; katsaus työkaluihin. (Hello Puppet – on Ubuntu, Resources and the RAL, Modules and Classes, esitiedot [yllä]) w13
2. Demonien konfigurointi. Muotit ja faktat (Templates, Show all facter facts). Demonien asennus (Package-File-Service, notify) vianetsintä (–debug), outojen init-skriptien ohittaminen (SSH Server Puppet Module for Ubuntu 12.04). w14
3. Orjien ohjaaminen verkon yli (PuppetMaster on Ubuntu 12.04, Basic Agent/Master Puppet). w15
4. Tyyppien määritteleminen. Määritellyt tyypit ovat asioille, joita voi olla monta, kuten käyttäjät tai Apachen virtuaalipalvelimet. Defined types. Kertaus, omien projektien käynnistys. w16
5. Git versionhallinta. (Git from Offline to Network, Pro Git (pdf): 1. Getting started (paitsi ei 1.4 Installing Git); 2. Git Basics (2.4 Undoing things asti) w17
6. Koe kirjallisuus + tunnit w18
7 Itsenäistä modulien tekoa, Ei lähiopetusta w19
8 Omien modulien esittely w20
Aikataulu on alustava – edistyneellä kurssilla aiheisiin tulee muutoksia vielä kurssin aikana.
Suoritukset
- Aktiivinen osallistuminen lähiopetukseen
- Kotiläksyt 50 %, mukaanlukien oman puppet-modulin kirjoittaminen ja esittely
- Koe 50% (Kurssikirjat Learning Puppet Puppet Reference soveltuvin osin ja Puppet Cookbook, aikataulusta linkitetyt artikkelit, oppitunnit)
Erityisesti omien modulien esittelyssä on tärkeää olla seuraamassa kaikkia esityksiä.
Kurssikirjat
Vaaditut: Learning Puppet, Puppet Cookbook
Oheismateriaali: Puppet reading list
Palaute
Palautteesi on todella arvokasta – se on tärkein tapa kehittää kurssia. Jotta saamme palautteellesi suurimman mahdollisen yleisön, palautetta kerätään kahteen paikkaan
1) Haaga-Helian e-lomakeelle
2) Vapaamuotoinen palaute tämän kurssisivun perään kommenttina
Mitä vain saa kirjoittaa, eikä kysymyksiä tarvitse toistaa. Tässä muutama idea, mihin kaipaisimme kommentteja
- Opitko kurssilla jotakin? Eli osaatko nyt jotain, mitä et osannut ennen kurssia?
- Onko kurssin sisältö hyödyllinen sinulle?
- Missä aiot hyödyntää kurssilla opittuja taitoja?
- Mikä oli parasta kurssilla?
- Mitä voisi vielä kehittää?
- Mitä mieltä oli esityspäivästä?
- Suosittelisitko kurssia? Kenelle (kollegoille, opiskelutovereille…)?
Kiitos!
Moodle
Moodle-sivu – Linuxin keskitetty hallinta 11 (edellyttää kirjautumista)
Vanhoja kurssisivuja
Aikataulu – Linuxin keskitetty hallinta – ict4tn011-8 syksyllä 2015
Vanha toteutus: Aikataulu – Linuxin keskitetty hallinta – ict4tn011-3 keväällä 2013
Vanha toteutus: Linuxin keskitetty hallinta – ict4tn011-2 syksyllä 2012
Vanha toteutus: Aikataulu – Linuxin keskitetty hallinta – ict4tn011-1
h1. a) Puppet-moduli, joka käyttää vähintään kahta eri resurssia (esim. package ja file).
Tee, testaa ja dokumentoi samaan aikaan. Moodleen saa palauttaa linkin raporttiin.
ps. LiveUSB:llä package saattaa vaatia atribuutin allowcdrom => “true”.
b) Vapaaehtoinen lisätehtävä. Tee esimerkki moduli(t) tärkeimmistä resursseista package, file, service; user, exec.
c) Vapaaehtoinen lisätehtävä: Tee moduli, joka tekee jonkin oikeassa elämässä hyödyllisen asian, vaikkapa asentaa ja konfiguroi jonkin ohjelman haluamallasi tavalla.
Vinkkejä läksyihin:
Raportin kirjoittaminen:
http://terokarvinen.com/2006/raportin-kirjoittaminen-4
Maksuton mainosrahoitteinen blogi: http://wordpress.com
Edistyneemmille GitHub:
http://terokarvinen.com/2016/publish-your-project-with-github
Livetikun teko, Xubuntu 16.04 LTS amd64:
https://unetbootin.github.io/
http://pyrylaakkonen.com/linux-keskitetty-hallinta-kotitehtava-1/
http://nikokaartinen.com/2017/04/puppet-module/
Juhan puppettiharjoitus:
https://jkmala.wordpress.com/2017/04/04/1-tunti-puppetin-hallinta/
http://kruteleff.com/2017/04/02/exercise-1-hello-puppet/
http://eeromikkonen.com/blog/2017/linuxin-keskitetty-hallinta-homework1/
https://kape601.wordpress.com/2017/04/03/h1-hello-puppet-world/
https://tommiilvonen.wordpress.com/2017/04/04/linuxin-keskitetty-hallinta-teht1/
https://lassikoivusalo.wordpress.com/2017/04/03/the-amazing-puppet-part-1/
https://aleksilahtinenblog.wordpress.com/2017/04/03/h1-puppet-modules/
https://janipuppet.wordpress.com/
https://janikuukkanen.wordpress.com/2017/04/04/linuxin-keskitetty-hallinta-h1-puppet-moduli/
https://kaapokoponen.wordpress.com/2017/04/03/puppet-moduulin-teko/
https://joonaslappalainen.wordpress.com/2017/04/02/puppet-modulit/
https://lasseablog.wordpress.com/
https://juusolehtola.wordpress.com/
https://eule2017.wordpress.com/2017/04/04/puppet-on-ubuntu/
h2. a) Julkaise tämän kerran kotitehtävä GitHubissa, kirjoita raportti MarkDownilla. (Älä poista vanhoja weppisivujasi, linkitä tarvittaessa uuteen).
b) Asenna ja konfiguroi jokin palvelin package-file-service -tyyliin Puppetilla.
Changing Apache default website
http://terokarvinen.com/2016/new-default-website-with-apache2-show-your-homepage-at-top-of-example-com-no-tilde
h3. a) SSHD. Konfiguroi SSH uuteen porttiin Puppetilla.
b) Modulit Gittiin. Laita modulisi versionhallintaan niin, että saat ne helposti ajettua uudella Live-USB työpöydällä.
c) Etusivu uusiksi. Vaihda Apachen oletusweppisivu (default website) Puppetilla.
d) Vapaaehtoinen vaikea. Tee uusi määritelty tyyppi (defined type), joka tekee Apachen nimipohjaisia virtuaalipalvelimia (name based virtualhost). Voit simuloida nimipalvelun toimintaa käsin hosts-tiedostolla.
Oliko meille annettu vielä tehtäviä tälle viikolle, en löytäny mistään. Eikös se pitäis olla h4 nyt?
Varaus: Moduuli joka asentaa ohjelmistokehitysympäristön kuntoon. (nodejs, npm, phonegap)
oman moduuli: teen moduulin joka asentaa lampin ja muutaman muun kätevän ohjelman. Tarkoitettu uuden koneen nopeaan conffaamiseen
Oma moduulini: IRC palvelimen pystyttäminen. Moduuli asentaa kaiken tarvittavan turvallisen IRC palvelimen ylläpitämiseen (SSL sertifikaatit, palomuuri ja tunkeutumisen havaintojärjestelmä).
Oma Moduuli: Teen moduulin, joka asentaa Gitin ja Lataa julkisen hakemiston Githubista käyttäjän kotihakemistoon.
Aihevaraus: Mozilla firefox konfigurointi (oletussivun muutos yms.)
Oma Moduuli: Teen moduulin, joka asentaa Gitin ja Lataa julkisen hakemiston Githubista käyttäjän kotihakemistoon.
Muutosta moduuliin. Teen moduulin, joka asentaa Gitin Ubuntulle ja Windowsille käyttäen jaettua hakemistoa, että Chocolatey paketinhallinta-ohjelmaa.
Moduuli: Asentaa Geditin ja siihen saatavat moduulit. Vaihtaa geditin oletussovellukseski html tiedostojen avaamisen.
Moduulivaraus: Moduuli joka asenta Gitin ja uusimman version Eclipsestä eclipsen omilta sivuilta.
Varaan modulin, joka asentaa ssh:n ja apachen ja konffaa palomuurin ja siihen tarvittavat portit.
BTW, luultavasti vaikein vaihe tässä tehtävässä on keksiä mitä tekee :O ;).
Siis konffaa niihin (ssh ja apache) tarvittavat portit.
Käyttäjien hallinta Puppetin avulla.
Jos jää aikaa niin ehkä joku oman repositoryn käyttöönotto, mut käyttäjillä mennään…
Teen sshfs-moduulin, joka asentaa koulun myy-verkkokiintolevyn suoraan käyttöjärjestelmän käytettäväksi.
Moduuli joka konfiguroi ubuntu käyttäjälle koneen graaffista suunnittelua varten.
Moduuli, joka lataa mobiilikehitysympäristön:
React-Native
Atom
Android-Studio
ja niitä varten tarvittavat kilkkeet.
Äärimmäisen hyvä kurssi, jossa opetettiin sekä Puppettia että Gitin käyttöä. Karvisen opetustyyli on intensiivinnen, mutta ei kuitenkaan sellainen, että ei pysyisi hyvin perässä jos vaivautuu kuuntelemaan ja tekee etätehtävät ajallaan. Etätehtävät edelleen äärimmäisen haastavia ja opettavaisia, jonka lisäksi oman projektin tekeminen opetti vielä enemmän kuin olisi uskonut ja pääsi haastamaan omat taidot.
Tuntien ilmapiiri äärimmäisen hyvä eikä tullut fiilistä, että tahtoisi jo pois. Lisäksi edelliseen kurssiin (Palvelinten hallinta) verrattuna huomattavasti enemmän tekemistä, joka on mielestäni erittäin hyvä asia.
Yksi Haaga-Helian parhaista opettajista ellei paras ja suosittelen ehdottomasti kurssia eteenpäin kaikille, jotka ovat kiinnostuneita Linuxista.
Erittäin kiinnostava kurssi. Opetuskerrat olivat hyödyllisiä ja lähiopetukseen osallistuminen oli kivaa. Tapauskohtainen ongelma, mutta moni lähiopetuskerta jäi puuttumaan Teron matkailun takia. Suosittelisin henkilölle, jota Linux kiinnostaa.
Todella mielenkiintoinen kurssi ja puppetin käyttö oli sopivan helppo omaksua. Mielestäni kurssissa oli sopivasti työtä, mutta tähän saattaa vaikuttaa, että pari opetuskertaa oli jätetty pois ja näinollen jokaiselta viikolta ei ollu kotitehtävi vaan ji aikaa tehdä omaa moduulia. Tentti oli sopivan vaikea, mutta ei vaatinut järkyttävää pänttäystä. Esityspäivä olisi ehkä hyvä jakaa kahdelle kerralle, mikäli moni esitys venähtää, koska loppupäässä esityksiä on hieman vaivalloista kuunnella keskittyneesti. Ilmapiiri oli loistava ja apua sai sopivasti sekä opelta, että muilta kurssilaisilta.
Opin kurssilla käyttämään puppettia, josta ei ollut aiemmin mitään aavistusta. Uskon että kurssi on varmasti hyödyllinen jatkossa omissa projekteissa sekä työelämässä. Kurssilla oli hyvä, että asiat joita harjoiteltiin näytettiin ensin opettajan toimesta ja sitten tehtiin itse. Tahti kurssilla oli aika kova, mutta jos oli aktiivisesti tunneilla läsnä pysyi kyllä mukana. Esitys päivässä oli mielenkiintoista nähdä mitä muut olivat tehneet, myös opettajan antama palaute auttaa korjaamaan omaa moduulia. Suosittelisin kurssia kaikille, jotka haluavat oppia linuxin keskitettyä hallintaa, erityisesti järjestelmä asiantuntijoiksi suuntautuneille kurssi on varmasti todella hyödyllinen.
Tämä kurssi oli ehkä paras mitä Haaga-Helialla on ollut tarjolla. Opin todella paljon uusia asioita keskitetystä hallinnasta, ja voin varmasti hyödyntää näitä taitoja omien harrasteprojektien parissa ja työelämässä.
Kurssin sisältö ei välttämättä ole itselleni aivan niin hyödyllinen työelämää ajatellen, koska keskityn ohjelmointiin. Mutta voin helpottaa omaa elämääni juuri eri ohjelmointiympäristöjen konfigurointien suhteen.
Parasta kurssilla oli ehdottomasti opettajan asenne. Teron into tarttuu helposti myös opiskelijoihin ja pitää motivaatiota yllä koko kurssin ajan. Tehtävät oli rakennettu mielestäni täydellisesti.
Suosittelen kurssia jokaiselle joka on jollain tavalla tekemisissä järjestelmien ylläpidon parissa.
Opin kurssilla paljon keskitettyjen työkalujen käyttämisestä.
Kurssi oli todella hyödyllinen!
Aion tulevaisuudessa käyttää tätä taitoa töissä ja jo nyt harrastuksien parissa.
Kurssilla parasta oli hyvät oppitunnit, missä opittiin tärkeitä Puppetin toimintoja.
Useita oppitunteja jäi väliin ja olisin halunnut oppia vielä enemmän kurssin aikana, tätä voisi kehittää tulevaisuudessa.
Esityspäivä oli kiva ja varmasti hyödyllinen oppimistilanne esityksen pitämisestä.
Suosittelisin kurssia kaikille aiheesta kiinnostuneille.
Kurssi oli hyvä ja tavoitteet olivat selkeät. Alusta asti oli selvää mitä tehtäisiin ja nopeasti siirtyminen käytännön asioihin oli myös hyvä. Suurimamat haasteet eivät vähemmän yllättäen liittyneet Puppetin käyttöön, vaan itse Linuxin kanssa säätämiseen. Tämä tosin tarkoittaa, että kurssi opetti myös paljon uusia asioita ihan perussäädöistäkin. Tunnelma kurssilla oli hyvä ja koskaan ei tuntunut puisevalta tai ollut sellainen tunne, ettei tajunnut mistään mitään. Tehtäviä oli sopivasti, mutta ei liikaa. Piristävä kokemus ja suosittelen varauksetta myös niille, jotka ensimmäisellä tunnilla suhtautuvat epäilyksellä omiin kykyihinsä.
Tero Karvinen on koulun ehdottomasti paras opettaja. Hän innostaa opiskelemaan, saa tehtyä minkä tahansa aiheen mielenkiintoiseksi ja osaa opettaa juuri oikealla tavalla eli laittaa tekemään.
Opin kurssilla paljon Puppetista ja opin ymmärtämään kuinka kätevää ja on tehdä kunnon dokumentaatiot, sekä julkaista ne netissä. Gittiä osasin jo käyttää, mutta Tero muistutti hyvin kuinka hyödyllistä sitä on käyttää lähes kaikkeen.
Kurssi oli hyödyllinen minulle. Osaan nyt tehdä moduulin, jolla saan asennettua itselleni kehitysympäristön nopeasti.
Kurssilla parasta oli Puppetin oppiminen, dokumentoinnin ja gitin tärkeyden ymmärtäminen.
Kehitettävää ei pahemmin ole, harmiksi muutama oppitunti jäi välistä Teron matkailun takia.
Esityspäivä oli sujuva ja opettavainen tilaisuus. Aikataulullisesti meni aika nappiin. Tero kannusti hyvin kaikkia esityspäivänä, esim. kehumalla meitä keskivertoa paremmiksi opiskelijoiksi vaikka moduuli olisi ollut yksinkertainen.
Suosittelen kurssia kaikille, jotka haluavat automatisoida rutiinejaan. Edellistä Linux kurssia suosittelen aivan kaikille, se oli ehdottomasti koulun parasta antia.
Ennen kurssia en osannut käyttää mitään keskitetyn hallinnan ohjelmia. Mielestäni kurssi tarjosi monipuolisen katsauksen sekä käytännönläheisen ympäristön uusille asioille. Opin Puppetin avulla konfiguroimaan kokonaisia järjestelmiä.
Omien moduulien rakentaminen oli mielenkiintoista ja varmasti hyödyllistä oman oppimisen kannalta. Tulen jatkossakin kehittämään taitoja keskitetyn hallinnan saralla.
Suosittelen kurssia vahvasti kaikille, jotka haluavat oppia keskitettyä hallintaa sekä osallistua kurssille, jossa opettaja omaa vahvan mielenkiinnon opetettuihin aiheisiin.
Opitko kurssilla jotakin? Eli osaatko nyt jotain, mitä et osannut ennen kurssia?
En aikaisemmin osannut Puppetista mitään ja nyt omasta mielestä osaan paljon ja pystyn nyt itsenäisesti harjoittelemaan lisää Puppetin käyttöä
Onko kurssin sisältö hyödyllinen sinulle?
On, koska saan omaa arkielämääni helpotettua kotona ja uskon, että jossain vaiheessa työelämässä tulen käyttämään Puppettia.
Missä aiot hyödyntää kurssilla opittuja taitoja?
Alussa aion jatkaa harjoittelua ja taitojeni kehitystä itsenäisesti kotona ja jos tilaisuus tulee, toivon mukaan tulevaisuuden työpaikalla
Mikä oli parasta kurssilla?
Innostava ilmapiiri tunneilla ja aiheeseen motivoitunut opettaja. Uusien asioiden oppiminen Linuxilla
Mitä voisi vielä kehittää?
Lyhyesti voitaisiin käydä Puppet agentin käyttö Windowsilla ja Macilla. Jos aika ei riitä, lähteet yksinkertaisiin ohjeisiin.
Mitä mieltä oli esityspäivästä?
Oli kiva nähdä opiskelija kolleegoiden töitä, joita voi verrata omaa moduuliin. Lisäksi esitysten kautta oppi uusia asioita Puppetista.
Suosittelisitko kurssia? Kenelle (kollegoille, opiskelutovereille…)?
Suosittelen kurssia kaikille, jotka haluavat kehittää omaa osaamista Linuxin suhteen. Suosittelen, että perus Linux kurssit on suoritettu ennen kurssille tuloa.
Opin mukavasti lisää tärkeää tietoa jota luulen tarvitsevan työelämässä. Hyvä aktiivinen työskentelytapa auttoi vaikean aiheen lähestymisessä. Palautetta saatiin mukavasti, varsinkin esitysten laaja ja yksityiskohtainen palaute jäi mieleen. Joskus palaute meni vähän ohi aiheen. Parasta oli kurssilla tuntityöskentely, kun päästiin itse kokeilemaan eri tehtäviä ja jos ei osannut siihen sai vastauksen nopeasti opettajalta tai toiselta oppillaalta.
Läksyjä oli ilmeisesti vähennetty verrattuna aikaisempiin toteutuksiin, mutta niitä oli nyt sopivasti (ja ei olisi haitannut, jos olisi ollut ihan vähän lisää).
Olisin kaivannut enemmän master-slave harjoituksia luokassa lisää.
Opin osaamistavoitteissa määritellyt asiat, lisäksi arvostin seuraavia asioita:
1. opin keskitettyä hallintaa lisää
2. sain tietoa hyvistä työskentelytavoista
3. opin lisää rutiinia Linuxin käytöstä
Olisin voinut aloittaa oman moduulin teon vieläkin aikaisemmin, vaikka nytkin siihen käytin useita tunteja. Virheiden ymmärtäminen ja niistä toipuminen on tärkeä taito, jota oppi tällä kurssilla. 🙂
Puppet Windowsilla on uuden OPSin laajemman 5 op kurssin “Palvelinten hallinta” osana. Tällä kurssilla se vilahti yhdessä loppumodulissa. Alla pyytämäsi linkit.
Puppet Windowsissa:
http://terokarvinen.com/2016/windows-10-as-a-puppet-slave-for-ubuntu-16-04-master
http://terokarvinen.com/2016/automatically-install-a-list-of-software-to-windows-chocolatey-puppet-provider