Aikataulu – Palvelinten hallinta ict4tn022-1 – 5 op, uusi OPS – loppusyksy 2016

Hallitse palvelimiasi Pupetilla. Pupettia käyttävät esimerkiksi Google, Mozilla ja Wikipedia. Sillä on toteutettu myös US Government Security Baseline hallinnon Linux ja Windows -tietokoneisiin.
Tämä on uuden opetussuunnitelman, 5 opintopisteen kurssi.

Alustava aikataulu

Opetus labrassa 5004 maanantaisin 12:00-14:45 ja torstaisin 09:00-11:45. Kurssi kestää 5. periodin eli 2016 loppusyksyn, viikot w43 – w50. Yhteensä 16 tapaamiskertaa 8 viikon aikana.
Tämän edistyneen kurssin aikataulu on alustava, ja se muuttuu vielä kurssin aikana.
w34 Hello Puppet
ma Järjestäytyminen, nykytilan arviointi. Suppea katsaus työkaluihin. Hello Puppet. One line puppet. Modulit. Package-file-service.
to Orjien ohjaaminen verkon yli. Git versionhallinta.
Osaat konfiguroida orjille palvelimia, verkon yli.
w44. Pupetin resursseja ja rakenteita
ma. Muotit ja faktat. Määritellyt tyypit.
to. Puppetin kertaus ja esimerkkimodulin teko. Omien miniprojektien käynnistys. Package-File-Service. Exec, User, Group.
Osaat konfiguroida Pupetilla palvelimia tavallisissa tilanteissa.

Eri työkaluja

w45 Provisiointi
ma Verkkobootti, DHCP+PXE
to Verkkobootti, DHCP+PXE
w46 Kilpailevia keskitettyjä hallintajärjestelmiä
ma Salt, chef tms. kilpaileva nykyaikainen työkalu.
to Salt, chef tms. kilpaileva nykyaikainen työkalu.
w47 Eri käyttöjärjestelmien hallinta
ma Eri käyttöjärjestemiä
to Eri käyttöjärjestemiä
w48

ma Kertaus
to Kertaus
w49 Oman modulin viimeistelyä
ma Oman modulin viimeistelyä
to Oman modulin viimeistelyä
w50 Loppuhuipennus
ma Omien modulien esittely I
to Omien modulien esittely II

Osaamistavoitteet

Opintojakson suoritettuaan opiskelija:
– Osaa hallinnoida useita palvelimia keskitetysti
– Pystyy kuvailemaan palvelinten tavoitetilan hallintajärjestelmän ymmärtämällä tavalla
– Osaa versioida alustat toistettavalla tavalla

Arviointiperusteet

– Kotitehtävät 50 %
– Oma moduuli 50 %

Ohjaus

Kotitehtävistä annetaan palaute jokaisen opetuskerran alussa.
Opetuksessa teoria ja harjoitus vuorottelevat. Tero opettaa teorian kertomalla siitä jonkin käytännön esimerkin avulla koneella. Opiskelijat kokeilevat tätä käytännön harjoituksessa, Tero kiertää kommentoimassa ja opastamassa vaikeiden kohtien yli.

Palautetta

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) Numeerinen palaute Haaga-Helian e-lomakkeelle
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!

Linkkejä

Kurssin kuvaus opinto-oppaassa – Palvelinten hallinta ict4tn022
Moodle – Palvelinten hallinta 1 (edellyttää kirjautumista)

Salt, chef tms. kilpaileva nykyaikainen työkalu.
Posted in Uncategorized | Tagged , , , , , , , , | 115 Comments

115 Responses to Aikataulu – Palvelinten hallinta ict4tn022-1 – 5 op, uusi OPS – loppusyksy 2016

  1. Mika Selvinen says:

    Opitko kurssilla jotakin? Eli osaatko nyt jotain, mitä et osannut ennen kurssia?
    Uusia opittuja asioita: Puppet, Herra/Orja, PXE ja parempi käsitys keskitetystä hallinnasta.
    Onko kurssin sisältö hyödyllinen sinulle?
    On, mielestäni se jatkaa fiksusti edellisen kurssin (Linux palvelimet ict4tn021-1) aihetta ja syventää sitä mm. jo opittujen asioiden automatisoinnilla. Missään vaiheessa ei tullut ns. raja vastaan että oltasiin menty liian vaikeaan tai kerrattu vain aikasempaa kurssia, jolloin fiilis olisi ollut “tämä on turhaa”. Kumpaakaan fiilistä en itse kokenut.
    Missä aiot hyödyntää kurssilla opittuja taitoja?
    Aioin jatkaa kamera moduulia sekä puppetin käyttöä – lisäksi tarkoitus olisi käyttää PXEtä. Lisäksi Git tulee olemaan kovassa käytössä.
    Mikä oli parasta kurssilla?
    Oppimisen ja onnistumisen tunne. Mielestäni on siistiä, kun itse tajuaa sen “hei mä ymmärrän ja osaan”. Lisäksi sekä kotona ja koulussa on istunut ja miettinyt iän ikuista “miksi tää ei toimi?” ja lopulta keksinyt, se onnistumisen tunne on joka kerta erittäin hieno. Muutenkin koulussa välillä tuntuu, että asioita vain kerrataan tai ei uskalleta opettaa, tällä kurssilla tietää saaneensa uutta tietoa.
    Bonuksena on ollut se, että kurssi ohjelmaa ei ole seurattu orjallisesti vaan, mikäli on tullut asioita jotka voisi/tulisi/pitää käydä läpi, ne on käyty. Tästä on saatu enemmän hyötyä irti vrt. perinteiseen “ei oo aikaa selittää tätä tärkeetä juttua, joka teidän pitäisi tietää”.
    Mitä voisi vielä kehittää?
    Kun verrataan kurssia aikaisempaan 8h per päivä toteutustyyliin, jos ei ole mahdollista samaan järjestelyyn niin tämän kurssin 3+3h toteutuksen voisi hoitaa seuraavanlaisesti.
    Ma – Läksyjen tarkistus ja uuden aiheen pohjustusta/vanhan aiheen lisäinfoa, sen mukaan miten aikaa on jäänyt läksyistä.
    To – Pelkästään uutta aihetta ja viikon läksyt.
    Nyt kurssilla kävi valitettavasti niin, että joko läksyjen tarkistukseen tai uuteen aiheeseen ei riittänyt aika. Jommasta kummasta jouduttiin karsimaan, hyvänä esimerkkinä vhost.
    Ylläoleva ma ja to ehdotuksen idea on se, että aina torstaisin opettaja voisi ns. “paahtaa täysillä” uutta aihetta sen 3h ja pyrkiä varmistamaan, että saa tarpeeksi hyvin näytettyä ja selitettyä aihetta oppilaille. Maanantaina olisi sitten se 3h aikaa tarkistaa läksyjä ja mikäli aikaa jäisi, voisi joko vastailla/näyttää miten ongelmat ratkaistaan ja jne. tai siirtyä uuden aiheen pohjustukseen – teoria ja käytäntö.
    Tarkoitus tällä kehitysidealla ei ole vähentää läksyjä vaan parantaa oppimiskokemusta. Kun vertaan tätä 3+3h versiota 8h kurssiin – opettajalla tuli aina kiire jompaan kumpaan suuntaan. Samalla mielestäni jos toinen kerta on kokonaan uusi aihe, niin läksykin voi olla 8h tuntien laajuinen. Kun esim. 8hssa ei kokoaikaa ollut pelkkää uutta aihetta. Koko päivän linuxissa kuitenkin kerkeää rauhassa näyttää asiat kunnolla.
    Oman moduulin tekemiseen olisin toivonut enemmän ohjausta/status kyselyä. Nyt tilanne oli se, että jokainen tiesi että sellainen pitäisi tehdä, mutta se käytännössä “jätettiin” syrjään kunnes muut asiat (mm. kotitehtävät) hoidettiin ensin alta. Parannuksena, olisi voinut olla jotain preview tilanteita ja enemmän suunnan näyttämistä. Uskon, että monella olisi tullut uusia ideoita/tekniikoita/yksilöllisiä ratkaisuja.
    Lisäksi olisin toivonut, että opettajalta olisi löytynyt esimerkkilista aiheista. LAMP- stackeja turhan monta, uskon että monella tilanteeksi muodostui, että eivät oikeen tienneet mitä kannattaisi tehdä. Jos olisi ollut valmislista, josta valita tarpeentullen – tällöin erilaisia moduleita, opettaja pysyisi paremmin kärryillä ja ohjaus ehkä helpompaa.
    Mitä mieltä oli esityspäivästä?
    Jos unohdetaan tykin toiminta, niin homma toimi. Henkilökohtaisesti kun esityksissä oli todella monta LAMP – stackia, niin yksilöllisen palautteen kirjoittaminen muuttuu todella haastavaksi. En kuitenkaan haluaisi laittaa vain “ihan jees” – kommenttia.
    Unohdin pyytää näkyviin tunnilla näytetyt ohjeet esityksestä. Uskon, että olisi auttanut useampaa oppilasta.
    Suosittelisitko kurssia? Kenelle (kollegoille, opiskelutovereille…)?
    Kurssia en ole vielä suositellut kenellekään, koska ystäväni eivät ole kiinnostuneet aiheesta.
    Tosin olen suositellut opettajaa heille.

  2. Mika Selvinen says:

    Oma moduulini asentaa itselleni tarvittavat ohjelmat RAW kuvien käsittelyä varten ja automaatti asentaa Ublock originin Firefoxille – https://selvinen.wordpress.com/2016/12/11/oma-moduuli/

  3. Tutuiksi tulivat myös verkkobootti, provisiointi ja versionhallinta Gitillä. Pienenä miinuksena se että kotitehtävissä oli melko paljon tekemistä, sillä niitä tuli kaksi kertaa viikossa.

  4. Ennen kurssia en osannut käyttää mitään keskitetyn hallinnan järjestelmää, mutta nyt pystyn Puppetin avulla konfiguroimaan kokonaisia järjestelmiä. Kurssin sisältö on todella käytännönläheistä ja opittua voi suoraan hyödyntää työelämässä. Omien moduulien rakentaminen oli hyvä tehtävä, sillä niiden avulla voi keskittyä eri aiheisiin kuin tunnilla ja näyttää osaamistaan. Omien moduulien esitteleminen oli myös hyvä lopetus kurssille. Suosittelisin kurssia keskitetystä hallinnasta, tai yleensäkin automaatiosta kiinnostuneille.

  5. Jarkko Koski says:

    Tykkäsin kurssista erittäin paljon ainoat rusinat pullassa oli kotitehtävien suuri määrä kun kummaltakin toteutuskerralta annettiin kotitehtävä oli välillä vaikea löytää viikosta aika jolloin saisi tehtävän tehtyä ajallaan. Jos toteutuskertoja olisi vain yksi viikossa ja tehtävät sitten laajempia toimisi kotitehtäväsysteemi oikein hyvin. Kotitehtävien käsittely tuntui myös välillä vievän suhteettoman paljon aikaa tunnin varsinaiselta aiheelta. Perusteellinen läpikäynti on hyvä asia mutta kotitehtävien suuren määrn takia jouduttiin niiden läpikäyntiinkin kuluttamaan paljon aikaa. Muutenkin tuntui että tunneilla tuppasi loppumaan aika kesken. Jos olisi yksi pidempi opetuskerta olisi helpompi panetutua yhteen asiaan kunnolla ja säästettäisiin aikaa kun samoja asioita ei tarvitsisi tehdä uudestaan tehtävän jatkamiseksi (tosin tämä ongelma oli lähinnä windowsin kanssa).
    Kurssi toimi ainakin minulle todella hyvin kun kaikkia opetettuja juttuja pääsi testaamaan ja niistä tehtiin kotitehtävä niin kurssin asia tarttuivat erittäin hyvin muistiin. Tuntui myös että kurssin aikana mainittiin aina miten kutakin tekniikka voi käyttää työelämässä. Lähdeaineistoa oli tarjolla oikein hyvin.
    Kurssin lopettava esityspäivä oli myös hyvin mielenkiintoinen kun sai nähdä mitä muut olivat tehneet. Esityspäivän ainoa ongelma oli jotkut esitykset joissa käsitelmtiin hyvin yksinkertaisia tai toisiaan toistavia aiheita, joka teki näistä esityksistä melko tylsiä.

  6. Tero Hannula says:

    Tämä oli hyödyllinen ja käytännönläheinen kurssi eikä osallistumista tarvitse katua. Alussa en tiennyt Puppetista juuri muuta kuin että kyse on lopputilan konfiguroinnista jotenkin, mutta mitään taitoja ei ollut. Nyt luulisin osaavani tehdä Puppetilla asioita, joskin lisäoppimista on vielä paljon. Kehityspuolelle mietin että pitkin kurssia olisi ollut hyödyllistä kelata jonkinlaista materiaalia joka olisi kurssin sivujen ja Puppet-kirjan väliltä, jossa keskeiset asiat selviäisi tiiviissä muodossa ja jossa perinteiset epäselvyydet olisi selitetty niin ettei niihin jäisi pitkäksi aikaa jumiin. Tyyliin 10…20 sivua tai pari sivua per luento.
    Hyvä menininki! Kiitos!
    – Tero

  7. Vesa Valli says:

    course feedback:
    – I learned how to use puppet to automate configuration on computer and also netboot installation of linux
    – I found the course contents to be very useful to myself and I will use the things I learned at least at home and possibly at work also.
    – best things about the course was well learning about puppet and getting to test is properly.
    – I think for future it would be better to have all the classes on the same day rather than dividing it to 2 separate days.
    – I recommend this course to everyone that regularly configures computers or installs them.

  8. Opin kurssilla “herättämään” tietokoneita verkon yli ja asentamaan ja konfiguroimaan niitä ilman “fyysistä kosketusta”. Lisäksi opin käyttämään Githubia versionhallintaan
    Uskoisin, että kurssista on jatkossa hyötyä minulle jos satun työskentelemään palvelinten parissa ja saattaapa taidoista olla jotain hyötyä vapaa-aikanakin.
    Kurssilla parasta on uuden oppiminen. Vaikka kurssi tuntuukin hetkittäin erittäin työläältä niin työstään saa varmasti palkinnon. Tämä näkyykin hyvin esityspäivinä jolloin opiskelijat esittelevät omat moduulinsa. Jos jotain kehitettävää haluaa löytää niin ehdottaisin, että jatkossa kurssin lähiopetus järjestetään yhtenä pitkänä päivänä viikossa. Näin näyttikin olevan ainakin kevään 2017 lukujärjestyksissä.
    Suosittelen kurssia henkilöille joilla on työtä pelkäämätön asenne. Kurssilla on nähtävä vaivaa kotitehtävien eteen jotta ei putoa kärryiltä. Vastineena saa sitten varmasti hyvät taidot.

  9. Oona Lähteenmäki says:

    Kurssi oli hyvää jatkoa syksyllä aiemmin olleelle Linux palvelimet-kurssille, ja täydensi omaa osaamistani erittäin paljon. Varsinkin puppetin osaamisesta uskon olevan paljon hyötyä niin vapaa-ajalla kuin työelämässäkin. Oli myös mielenkiintoista nähdä miten puppet toimii Windowsilla.
    Parasta kurssilla oli aina kun onnistui tehtävien teossa, ja pystyi huomaamaan kuinka opitun asian pystyy myös toteuttaamaan käytännössä, eikä oppiminen jää vain teorian tasolle.
    Esityspäivä oli mielestäni positiivinen kokemus, koska oli kiva nähdä mitä kaikkea muut ovat tehneet, ja sen miten erilaisia moduleja pystyy toteuttamaan pelkästään tämän kurssin pohjalta. Muiden moduleista myös oppi paljon, ja sai ideoita itselleen.
    Suosittelisin kurssia kaikille, jotka ovat aiheesta kiinnostuneita.

  10. Eero Kolkki says:

    Mielestäni kurssi oli hyvin toteutettu. Ainoa kritiikki mitä keksin oli se että kotitehtävää tuli aika paljon, mutta toisaalta se myös tuki oppimista. Kurssi oli ajoitettu hyvin linux palvelimena kurssin jälkeen, joten pääsin syventämään siellä oppimiani asioita. Välillä kurssilla käytiin joitain asioita todella kovaa tahtia läpi, mutta sitä on aika vaikea välttää kurssin laajuuden vuoksi. Voin sanoa että oli yksi parhaista kursseista, johon olen tähän mennessä osallistunut ja aihepiiri oli todella mielenkiintoinen.

  11. Konsta Olli says:

    Opin käyttämään Puppettia.
    Onko kurssin sisältö hyödyllinen sinulle?
    Todella hyödyllinen
    Missä aiot hyödyntää kurssilla opittuja taitoja?
    Työelämässä ja arkipäivän asioissa omalla tietokoneellani
    Mikä oli parasta kurssilla?
    Uuudet paketinhallinta työkalut (chocolatey).
    Mitä voisi vielä kehittää?
    Ehkä enemmän voisi käydä peruskomentoja (before, after, require).
    Mitä mieltä oli esityspäivästä?
    Mielenkintoisia esityksiä opin miltei jokaisesta jotain uutta.
    Suosittelisitko kurssia? Kenelle (kollegoille, opiskelutovereille…)?
    Opiskelijatovereille

  12. Leo Luoto says:

    En itse ainakaan tiennyt oikeastaan mitään kurssin sisällöstä etukäteen, eli kaikki oli uutta ja upeaa. Kurssin aihe oli itselle todella kiinnostava, ja se antoi motivaatiota opiskeluun. Tosin tiukka aikataulu yhdessä jokseenkin aikaavievien läksyjen kanssa teki läksyjen tekemisen aikataulun sisään välillä mahdottomaksi. Kurssin oppeja kyllä varmasti tulen käyttämään työelämässä ja miksei kanssa vapaa-ajalla, jos tilanne mahdollistaa sen.

  13. Alex Lilja says:

    tykkäsin kurssin toiminnasta ja erityisesti ilmapiiristä vaikkakin osa tehtävistä tuntui aivan turhankin haastavilta. kurssi ihan hyvä tälläisenään tosin kotitehtävät jotka osuivat keskelle viikkoa tuottivat vaikeuksia aikataulujen järjestelemiseen.

  14. Kurssi oli mielestäni erittäin onnistunut ja rutkasti tietoa tuli taas matkaan kurssin päätteeksi. Mielestäni läsnäolo kurssin lähiopetuksessa on erittäin arvokasta ja jopa välttämätöntä jotta asiat jäävät päähän ja perustat ovat kunnossa. Kurssi oli haastava, mutta kun kurssin lopussa huomaa, että on sisäistänyt asioita ja huomaa oman osaamisen tuloksen se on myös hyvin palkitsevaa.

  15. Jarkko Koski says:

    Moduuli jossa myös mysql salasanan vaihtaminen site.pp :ssä https://github.com/jk-github/asennawordpress

  16. Konsta Olli says:

    Oma moduulini joa conffaa ja asentaa Chromen. https://konstaolli.wordpress.com/2016/12/11/oma-moduuli/

  17. Puppet, PXE ja Vagrant konfiguraatio
    Asentaa verkkobootilla työaseman ja sille Puppetin sekä Vagrantin avulla virtuaalikoneita.
    https://joonaleppalahti.wordpress.com/2016/12/11/pupxegrant-puppet-pxe-ja-vagrant-konfiguraatio/

  18. Vesa Valli says:

    My own module:
    https://vesalinux.wordpress.com/2016/12/11/updated-version-of-my-own-puppet-module/
    It is meant to install java development tools and some other programs onto a windows slave.

  19. Vesa Valli says:

    puppet exec resource for setting the mysql password.
    exec {‘set-mysql-pw’:
    command => “/usr/bin/mysqladmin -u root password $mysqlpw”,
    require => Service[“mysql”],
    }
    replace $mysqlpw with the password you want.
    NOTE: this exec only works on the first apply
    you can read more about the error it gives on second try from my blog(near the end of the report):
    https://vesalinux.wordpress.com/2016/11/06/h4-installation-module-for-some-fav-programs-and-their-settings/

  20. Kaikki kotitehtävät ja oma moduli. Palauta linkki sivuun, jolta ne kaikki löytyvät.
    Moodlen palautuslomake (edellyttää kirjautumista):
    http://hhmoodle.haaga-helia.fi/mod/assign/view.php?id=607025

  21. Alex Lilja says:

    aiheen tarkennus asennan windowssille AD:n(active Directory) ja sinne kaksi konetta.

  22. Jori Laine says:

    Vaihdan Windows moduulin, linux moduuliin joka asettaa xubuntu työpöytäympäristön asetukset ja taustakuvat, yms.

  23. Heikki Ma says:

    Teen sittenkin Win10 – linuxille, puppet orja – puppet master yhteydellä moduulin win10 ympäristöön. Tavoitteena on asentaa “perus ohjelmat” – libreoffice, kunnollinen selain, VLC, skype ja yms. tämän lisäksi taustakuva vaihdettaisiin.

  24. Program Files/PuppetLabs/Puppet/bin (path from memory)

    > puppet.bat agent -tdv

  25. Powershell dir show hidden files

    PS> dir -Force

    Edit a text file

    PS> notepad.exe puppet.conf


  26. > powershell.exe
    PS> wget -UseBasicParsing https://downloads.puppetlabs.com/windows/puppet-3.8.5-1-x64.msi -OutFile puppetinst.msi
    PS> puppetinst.msi

  27. Ja vielä -OutFile puppetinst.exe

  28. wget Windows Coressa:

    > powershell.exe
    PS> wget -UseBasicParsing https://downloads.puppetlabs.com/windows/puppet-3.8.5-1-x64.msi

  29. h13. Kokeile jotakin puppetlabs/windows modulia. Jotain muuta kuin chocolatey provider, jota käytimme jo aiemmin.

  30. Vagrant.configure(2) do |config|
    config.vm.box = “mypackers/windows2016core”
    config.vm.communicator = “none”
    end

  31. h12. Windowsin hallintaa. Tee kohta a ja jokin kohdista b – z. Kaikki kohdat tehdään Puppetilla.
    a) Asenna ohjelmia Windowsiin package-resurssilla ja chocolatey providerilla. Täältä löytyy Gedit, Firefox, LibreOffice, VLC, sysinternals…
    b) Asenna GoldenDict ja sille sanakirjat valmiiksi
    c) Asenna MSI-paketti
    d) Asenna jokin palvelin
    e) Asenna joitakin ohjelmia DreamSparkista
    f) Asenna MS Office
    g) Asenna Adobe Creative Suite
    h) (vaikeampi) Asenna active directory orja ja herra

  32. Vapaaehtoinen bonus: Active Directory. Autentikoi työasema AD:lla, säädä palvelin ja asiakas Puppetilla.
    Vapaaehtoinen bonus: Windowsin käsikirjoitettu asennus ja siihen Puppet automaattisesti orjaksi omalle Puppetmasterille.

  33. h11. Hello Windows Puppet World. Asenna Puppet Windowsiin ja tee sillä hei maailma.
    Voit tehdä hei maailman joko paikallisesti tai herra-orja arkkitehtuurilla.
    Muista kuvailla asennus ja ympäristö tarkasti. Windowsissa tehdään paljon graafisessa käyttöliittymässä, jolloin ruutukaappauksia tarvitaan paljon. Windowsista pitää myös tietää täsmällinen versio ja bittisyys.

  34. h10. Tyypit ja parametrit. Tee omat modulit, jotka käyttävät määriteltyä tyyppiä (defined type) ja parametroitua luokkaa (parametrized class).
    Ota tyhjä muistitikku mukaan Windowsin kokeilua varten. Jos haluat, voit ottaa myös tärkeinä pitämiesi Windows-ohjelmien asennuspaketteja.


  35. ServerName www.monkeyhats.com
    ServerAlias monkeyhats.com
    DocumentRoot /home/xubuntu/public_html/
    Require all granted

  36. Linkki harjoitus 9:n raporttiin

  37. Ville Salama says:

    Oma moduuli:
    Arduino IDE:n asennus, sekä teeman muokkaaminen pimeämmäksi ja miellyttävämmäksi silmille.

  38. Heikki Ma says:

    Sivuston palvelimen siirto, eli moduuli asentaa tarvittavat ohjelmat (LAMP, laravel – PHP framework) ja siirtää koodit.

  39. Some untested code:

    d-i preseed/late_command string tftp 172.28.172.211 -c get postinstall.sh && sh postinstall.sh
    #!/bin/sh
    # Make this to puppet slave - Copyright 2016 Tero Karvinen http://TeroKarvinen.com
    echo "$0 started"
    sudo service puppet stop
    cat < /etc/puppet/puppet.conf
    [main]
    logdir=/var/log/puppet
    vardir=/var/lib/puppet
    ssldir=/var/lib/puppet/ssl
    rundir=/run/puppet
    factpath=$vardir/lib/facter
    prerun_command=/etc/puppet/etckeeper-commit-pre
    postrun_command=/etc/puppet/etckeeper-commit-post
    [master]
    # These are needed when the puppetmaster is run by passenger
    # and can safely be removed if webrick is used.
    ssl_client_header = SSL_CLIENT_S_DN
    ssl_client_verify_header = SSL_CLIENT_VERIFY
    [agent]
    server = teromaster.local
    EOF
    sudo rm -r /var/lib/puppet/ssl/
    sudo service puppet start
    sudo service puppet reload
    echo "$0: Done. "

  40. Vaikea vapaaehtoinen bonusbonus-tehtävä: tee samanlainen verkkobootti kuin labran Windows-asennus.

  41. h9. Asenna Linux verkon yli. Tyhjään koneeseen, käsin koskematta.
    Tehtävän saa tehdä parityönä. Muista merkitä tekijät ja kaikki lähteet linkkeineen myös GitHubiin.
    Laita liitteeksi nämä tiedot sekä asennetulta koneelta että palvelimelta:

    sudo tail --lines=100 /home/*/.bash_history /var/log/auth.log /var/log/apache2/*.log /var/log/syslog /etc/lsb-release>log-picks-$(date +'%Y-%m-%d_%H%M').txt

    Bonus: konfiguroi kone orjaksi puppetmasterille ja säädä sitä Puppetilla.


  42. d-i preseed/late_command string tftp 172.28.172.211 -c get postinstall.sh && sh postinstall.sh

  43. Nopeampaa asennusta:
    $ head preseed.cfg
    d-i mirror/http/proxy string http://172.28.172.211:8000/
    Lisätietoja:
    http://terokarvinen.com/2016/cache-ubuntu-deb-packages-squid-deb-proxy

  44. Joonan vinkit Ubuntu 16.04 xenial automaattiseen asennukseen (pxe+preseed):
    https://joonaleppalahti.wordpress.com/2016/11/18/palvelinten-hallinta-harjoitus-8/

  45. Tässä aiheeni hieman myöhässä:
    Teen moduulin joka asentaa ohjelmistokehittäjän pinon ja asettaa yleisimmät ominaisuudet jo valmiiksi kehittäjän käyttöön. Pinon tarkempi kokoonpano tarkentuu vielä moduulia tehdessä mutta sisältää työkalua ainakin seuraavien toteuttamiseen:
    – Verkkosivujen toteutus
    – Tietokannan luonti
    – Java – kehitystyökalu
    – Yleinen ohjelmointiin soveltuva tekstityökalu
    – + muita myöhemmin tarkentuvia tarpeellisia ohjelmia

  46. Heikki Ma says:

    Tästä ei tullut yhtään mitään. Uusi moduuli ilmoitetaan tämän kommentin vastaukseksi.

  47. Andero says:

    Moduuli, joka asentaa itselle tärkeimmät ohjelmat eli LAMP, tekstinkäsittelyohjelma, vlc, gedit jne. Tähän voi tulla vielä lisäyksiä.

  48. Leo Luoto says:

    Moduuli joka asentaa LAMPIN, sekä kylkeen VOIP-palvelu sekä Gedit joka helpottaa HTML:än kirjoittamista.

  49. Alex Lilja says:

    Teen moduulini windows 10 käyttöjärjestelmälle ja yritän saada joitain perusominaisuuksia toimimaan

  50. h8. Tee ensimmäinen versio omasta modulista.
    Kilpailu (vapaaehtoinen): kuka hallitsee suurinta määrää fyysisiä koneita Puppetilla?

  51. # pxelinux.cfg/default
    # Copyright 2015-2016 Tero Karvinen http://TeroKarvinen.com
    label teroxenial # 16.04 LTS
            kernel xenial/linux
            append initrd=xenial/initrd.gz auto=true auto url=tftp://10.0.0.42 locale=en_US.UTF-8 classes=minion DEBCONF_DEBUG=5 priority=critical
    prompt 1
    timeout 5
    default teroxenial
    

  52. $ sudo apt-get -y install tftp-hpa tftpd-hpa
    $ cat /var/lib/tftpboot/hello
    $ cd
    $ tftp localhost -c get hello
    $ cat hello
    See you at TeroKarvinen.com

  53. Verkkobootilla xubuntu koneelle ja siihen virtuaalikoneita puppetilla

  54. Tero Hannula says:

    Tarkennus:
    Webserverin pystytys ja turvakonffaus käyttövalmiiseen tilaan sis. web application firewallin asennuksen OWASP CRS -rulesetillä. Lisäksi mukana tulee välineitä, joilla voi demota haavoittuvan web-sovelluksen suojausta WAFilla. Tarkoitus on siis kehitellä osa security baselinea Puppet-moduulin muodossa, aihepiirinä webserveri.

  55. Tero Hannula says:

    Webserverin pystytys ja turvakonffaus käyttövalmiiseen tilaan sis. WAFin asennuksen OWASP CRS -rulesetillä. Lisäksi MySQL:n asennus niin että kannat tulee varmuuskopioista ja on käyttövalmis.

  56. Jani Markkula says:

    VOIP ohjelman asennus ja konfigurointi neuvottelu tarpeisiin ja etäkommunikointiin.

  57. Henri Pernilä says:

    Moduuli joka asentaa windows palvelimen ja perus konfiguraatiot

  58. Mika Selvinen says:

    Moduuli: Tarvittavien työkalujen asennus ja konfigurointi ammattivalokuvauksen tarpeisiin.

  59. Heikki Ma says:

    Moduuli: OpenVPN ohjelman asentaminen ja alustus

  60. Eero Kolkki says:

    Muutamia moduuleja jotka asentavat verkkokehitysympäristön muutamilla käytetyillä kielillä, SSH (asennus ja porttien muutos), palomuurin käynnistys ja tarvittavat reiät. Tämän lisäksi moduuleissa tulee olemaan muita Linux-asennuksen käyttöönottoon liittyviä asetuksia, sekä jos aikaa jää, niin yritän keksiä vielä jotain järkevää näiden lisäksi.

  61. Konsta Olli says:

    Moduuli joka asentaa firefoxiin addblockin lisää sivuja suosikkeihin, vaihtaa kotisivun. Asentaa vlc:n, vaihtaa työpöydän taustakuvaa ja asentaaa libre officen.

  62. Matti Nuutinen says:

    Moduuli asentaa tämän hetken kurssieni tehtävien suorittamiseen vaativat ohjelmat, jotta voisin minimoida Windowsin käytön hitaaksi käyneellä läppärilläni / tehdä tehtäviä missä vain. Ainakin Eclipse(+Java), MySQL, Sublime Text tai vastaava ja Pinta unohtamatta tietenkään distraktioita (Spotify jne.) Moduuli myös säätää ohjelmien oletusasetuksia ja joitakin käytettävyyden kannalta tärkeitä asetuksia.

  63. Jooel nurmi says:

    Jatkan lamp moduulin hiomista eheäksi. (Php ja mysql en ole saanut toimimaan.)

  64. Jooel nurmi says:

    Jatkan lamp moduulin hiomista eheäksi. (Php ja mysql en ole saanut toimimaan)

  65. Vesa Valli says:

    puppet moduuli java kehitysympärisön asennusta varten

  66. Oona Lähteenmäki says:

    Moduuli: Asentaa tekstinkäsittelyyn tarvittavat ohjelmat, ja mahdollistaa tekstien julkaisun käyttäjän kotisivuilla ja personalisoi työaseman taustakuvalla.

  67. Jori Laine says:

    Puppet moduuli windowskille ois tarkoituksena yrittää saada aikaan. Moduuli joka tarkistaa päivitykset, asentaa usein käyttämiäni ohjelmia ja ehkä pyörättää ne kertaalleen.

  68. Markus Pyhäranta says:

    Puppet moduuli: LAMP asennus ja käyttöönotto.

  69. h7. Varaa oma aiheesi kommentilla tämän viestin perään.
    (Laita myös Moodleen linkki, jotta pysyn laskuissa, ketkä ovat varanneet aiheen).
    Oma moduli, tai kokonaisen koneen tai verkon konfiguraatio. Voi olla jokin työ- tai hupiprojekti, jonka tarvitset muutenkin.
    Saa tehdä myös Windowsilla. Itse asiassa joku voisi hyvin tehdä Windows 10 / Core tms. palvelimia konfiguroituna: AD, Exchange…

  70. Markus says:

    Aihe moduulille: omaan käyttööni sopivan kehitysympäristön (kirjastoineen/plugineineen) asentaminen ja konfigurointi (netbeans vähintään, luultavasti JBoss jne).


  71. $ grep -v ^# /etc/default/isc-dhcp-server |grep -v '^$'
    INTERFACES="enp2s0"
    $ cat /etc/dhcp/dhcpd.conf
    ddns-update-style none;
    #option domain-name "example.org";
    #option domain-name-servers ns1.example.org, ns2.example.org;
    default-lease-time 600;
    max-lease-time 7200;
    log-facility local7;
    authoritative; # BE CAREFUL
    next-server 172.28.172.211; # TFTP server ip address
    filename "pxelinux.0"; # name of bootloader image
    subnet 172.28.0.0 netmask 255.255.0.0 {
    host terotestaa {
    hardware ethernet 78:ac:c0:ba:7c:f7;
    fixed-address 172.28.1.235;
    option subnet-mask 255.255.0.0;
    option routers 172.28.1.254;
    option domain-name-servers 8.8.8.8, 172.28.1.67, 172.28.1.69;
    option domain-name "tielab.haaga-helia.fi";
    }
    }
    xubuntu@xubuntu:/etc/dhcp$ sudo service isc-dhcp-server restart

  72. h6. Ratkaise osa jonkin Linux-kurssini arvioitavasta harjoituksesta. Pyri ratkaisemaan ainakin kaksi isompaa kohtaa.
    Bonus: ohjaa Windows-orjaa Puppetilla
    https://www.google.fi/search?q=windows+puppet+download
    https://docs.puppet.com/puppet/latest/reference/install_windows.html#msi-properties
    https://downloads.puppetlabs.com/windows/

  73. $ cat /usr/local/bin/reset-to-default-settings
    #!/bin/bash
    echo “You are about to reset your user settings to company defaults. ”
    echo “Press ctrl-C to cancel, or y to overwrite each file. ”
    cp -riv /etc/skel/.??* $HOME
    echo “Done.”

  74. Vinkkejä, lue nämä ennenkuin aloitat:
    Publish Your Project with GitHub
    http://terokarvinen.com/2016/publish-your-project-with-github

  75. Vaikka kirjoitat raportteja GitHubiin, säilytä silti vanha blogisi.

  76. Vinkkejä: Helpointa on julkaista GitHubissa.
    Markdownia voi kirjoittaa laittamalle md-päätteen (README.md). Tyhjä rivi tekee kappalejaon. Kaksi risuaitaa tekee otsikon (heading 2).

  77. h5. Tee moduli git-varastoon ja kirjoita raportti sinne MarkDownilla.
    Update: Bonustehtävänä voit kokeilla kloonata uusi modulisi vasta bootatulle live-USB:lle.

  78. Näin voit liittää viimeiset rivit muutamista lokeista raporttiin
    sudo tail --lines=100 /home/*/.bash_history /var/log/auth.log /var/log/apache2/*.log /var/log/syslog /etc/lsb-release>log-picks-$(date +'%Y-%m-%d_%H%M').txt

  79. Sekalaisia vinkkejä:
    Helppoja asennettavia ovat vaikkapa ohjelmat (install multiple packages).
    Asetuksia voi muuttaa vaikkapa asentamalla ssh-demonin ja korvaamalla /etc/ssh/sshd_config -tiedoston toisella. Siitähän voi vaihtaa esimerkiksi portin.
    Ohjelman foo asetukset ovat usein /etc/foo*, /home/tero/.foo* tai /home/tero/.config/**/foo*. Ensisijaisesti kannattaa laittaa yhteisesti /etc/ alle. Uusien käyttäjien (‘sudo adduser tero’) kotihakemistoon kopioidaan automaattisesti tiedostot /etc/skel/ alta.
    Tarvittaessa vanha käyttäjä voi kopioida esimerkkiasetukset omiensa päälle ‘cp -vr /etc/skel/.???* /etc/skel/* $HOME/’ (komento ulkomuistista).

  80. h4. Tee moduli, joka tekee suosikkiasetuksesi: asentaa tärkeimpiä ohjelmia ja säätää niiden asetuksia. Voit esimerkiksi ajaa tämän modulin tullessasi labraan.
    ps. Kilpailu jatkuu, tällä hetkellä 12 orjaa kärjessä.

  81. Joonalla näkyy olevan 12 orjaa Puppetilla hallittuna. Hyvä Joona, olet johdossa!
    https://joonaleppalahti.wordpress.com/2016/10/31/palvelinten-hallinta-harjoitus-3/

  82. h3. Anna orjalle määräyksiä master-slave arkkitehtuurilla (käytten puppetmaster:ia. Jos käytössäsi on vain yksi kone, voit asentaa herran ja orjan samalle koneelle. )
    Bonus: vaihda oletustaustakuva. Kannattaa päällekirjoittaa tiedosto ja käyttää file-resurssia.
    Bonus & kilpailu: kuka kurssilainen onnistuu hallitsemaan suurinta määrää orjia puppetilla? Raportoi.

  83. PuppetMaster, eli herra ja orjat verkossa. Lue myös kommentit, joissa on uudempia (Ubuntu 16.04 Xenialiin sopivia) työtapoja.
    http://terokarvinen.com/2012/puppetmaster-on-ubuntu-12-04

  84. h2. Asenna jokin palvelin package-file-server -tyyliin. Voit käyttää esimerkkikoodejani pohjana, mutta koita lisätä mukaan jotain omaa.
    Bonus: Asenna Puppet herra-orja arkkitehtuuriin niin, että herra (puppetmaster) ja orja (aka agent, puppet) ovat samalla tietokoneella.
    BonusBonus: kokeile Puppetia jossain toisessa käyttöjärjestelmässä, esimerkiksi Windowsissa.

  85. Tämän manifestin joutuu ajamaan kahdesti, eli tässä versiossa järjestys ei ole automaattisesti ylhäältä alas.


  86. class apache {
    package {"apache2":
    ensure => "installed",
    allowcdrom => "true",
    }
    file {"/var/www/html/index.html":
    content => "Welcome.\n",
    }
    file { '/etc/apache2/mods-enabled/userdir.conf':
    ensure => 'link',
    target => '../mods-available/userdir.conf',
    notify => Service["apache2"],
    }
    file { '/etc/apache2/mods-enabled/userdir.load':
    ensure => 'link',
    target => '../mods-available/userdir.load',
    notify => Service["apache2"],
    }
    service {"apache2":
    ensure => "true",
    enable => "true",
    # provider => "systemd",
    }
    }


    $ find -newermt '-2 min'
    $ sudo puppet resource file /etc/apache2/mods-enabled/userdir.conf

  87. Use service provider ‘systemd’ for nicer sshd module:

    class ssh {
    package { ssh:
    ensure => installed,
    allowcdrom => true,
    }
    file { "/etc/ssh/sshd_config":
    content => template("ssh/sshd_config.erb"),
    notify => Service[ssh],
    }
    service { ssh:
    ensure => running,
    enable => true,
    provider => systemd,
    }
    }

  88. Vinkkejä: Käytä ainakin kahta eri resurssia. Muista testata lopputulos. Usein käytettyjä resursseja ovat package, file, service, exec, user, group. Lisää tietoa resursseista ‘sudo puppet resource file /etc/passwd’, ‘puppet describe user’.
    Bonus: asenna ja konfiguroi jokin palvelu package-file-service tyylillä.
    Läksyjen raportit voit julkaista missä haluat ja palauttaa Moodleen pelkän linkin. Palautus 24 h ennen seuraavan lähiopetuskerran alkua. Jos et uskalla tai muuten halua julkaista, weppisivulle salasanan taakse, kaikille sivuille sama salasana ja salasana jakoon kurssikavereille. Mutta totta kai kannattaa julkaista. Linkin saa laittaa Moodlen lisäksi kommentiksi tämän sivun perään, kunhan laittaa myös Moodleen.

  89. Vinkkejä: Käytä ainakin tehtävässä ainakin kahta eri resurssia. Muista testata lopputulos. Usein käytettyjä resursseja ovat package, file, service, exec, user, group. Lisää tietoa resursseista ‘sudo puppet resource file /etc/passwd’, ‘puppet describe user’.
    Läksyjen raportit voit julkaista missä haluat ja palauttaa Moodleen pelkän linkin. Palautus 24 h ennen seuraavan lähiopetuskerran alkua. Jos et uskalla tai muuten halua julkaista, weppisivulle salasanan taakse, kaikille sivuille sama salasana ja salasana jakoon kurssikavereille. Mutta totta kai kannattaa julkaista. Linkin saa laittaa Moodlen lisäksi kommentiksi tämän sivun perään, kunhan laittaa myös Moodleen.

  90. h1. Tee Puppet-moduli, joka käyttää useampaa eri tyyppistä resurssia (esim. file ja package).
    Bonus: asenna ja konfiguroi jokin palvelu package-file-service tyylillä.

  91. Muistiinpanoja paremmin sisennettynä.

    1. Aja puppet one liner. g: "karvinen hello puppet"
    Bonus: 2. kokeile describe ja resource (keksi omat esimerkit)
    $ puppet describe file|less
    $ puppet resource file /etc/passwd
    $ puppet help
    Vinkkejä: setxkbmap fi, less (space, b, q), ikkuna isoksi
    2. Tee oma puppet-moduli
    puppet$ pwd
    /etc/puppet
    puppet$ cd modules/
    modules$ find hellotero/
    hellotero/
    hellotero/manifests
    hellotero/manifests/init.pp
    modules$ cat hellotero/manifests/init.pp
    class hellotero {
    file {"/tmp/helloteromodule":
    content => "Hello from module!\n",
    }
    }
    $ sudo puppet apply -e 'class {hellotero:}'
    Bonus: 3. Tee moduli, joka käyttää eri resursseja
    package, file, service, user, exec
    Vinkkejä: kun modulit etc/ alla, sudo puppet apply,
    modulin (== modulin kansion, luokan) nimi pienellä yhteen,
    pwd, ls, mieti tavoite
    xubuntu@xubuntu:/etc/puppet/modules/sshd$ tree
    .
    ├── manifests
    │   └── init.pp
    └── templates
    └── sshd_config.erb
    2 directories, 2 files
    xubuntu@xubuntu:/etc/puppet/modules/sshd$ cat manifests/init.pp
    class sshd {
    package { ssh:
    ensure => "installed",
    allowcdrom => "true",
    }
    file { "/etc/ssh/sshd_config":
    content => template("sshd/sshd_config.erb"),
    notify => Service["ssh"],
    }
    service { "ssh":
    ensure => "running",
    enable => "true",
    hasstatus => 'false',
    status => 'service ssh status|grep running',
    hasrestart => 'false',
    restart => 'service ssh restart',
    stop => 'service ssh stop',
    start => 'service ssh start',
    }
    }

  92. 1. Aja puppet one liner. g: “karvinen hello puppet”
    Bonus: 2. kokeile describe ja resource (keksi omat esimerkit)
    $ puppet describe file|less
    $ puppet resource file /etc/passwd
    $ puppet help
    Vinkkejä: setxkbmap fi, less (space, b, q), ikkuna isoksi
    2. Tee oma puppet-moduli
    puppet$ pwd
    /etc/puppet
    puppet$ cd modules/
    modules$ find hellotero/
    hellotero/
    hellotero/manifests
    hellotero/manifests/init.pp
    modules$ cat hellotero/manifests/init.pp
    class hellotero {
    file {“/tmp/helloteromodule”:
    content => “Hello from module!\n”,
    }
    }
    $ sudo puppet apply -e ‘class {hellotero:}’
    Bonus: 3. Tee moduli, joka käyttää eri resursseja
    package, file, service, user, exec
    Vinkkejä: kun modulit etc/ alla, sudo puppet apply,
    modulin (== modulin kansion, luokan) nimi pienellä yhteen,
    pwd, ls, mieti tavoite
    xubuntu@xubuntu:/etc/puppet/modules/sshd$ tree
    .
    ├── manifests
    │   └── init.pp
    └── templates
    └── sshd_config.erb
    2 directories, 2 files
    xubuntu@xubuntu:/etc/puppet/modules/sshd$ cat manifests/init.pp
    class sshd {
    package { ssh:
    ensure => “installed”,
    allowcdrom => “true”,
    }
    file { “/etc/ssh/sshd_config”:
    content => template(“sshd/sshd_config.erb”),
    notify => Service[“ssh”],
    }
    service { “ssh”:
    ensure => “running”,
    enable => “true”,
    hasstatus => ‘false’,
    status => ‘service ssh status|grep running’,
    hasrestart => ‘false’,
    restart => ‘service ssh restart’,
    stop => ‘service ssh stop’,
    start => ‘service ssh start’,
    }
    }

Leave a Reply

Your email address will not be published. Required fields are marked *