Hallitse palvelimiasi ja työasemiasi automaattisesti.
Tämä sivu ja aikataulu päivittyy ja muuttuu kurssin lähestyessä.
Yksittäisten Linux-palvelinten ja työasemien ylläpito sujuu, ja nyt haluat hallita kokonaisia verkkoja? Tällä kurssilla opit
- Automatisoimaan demonien ja muiden sovellusten asetukset
- Hallitsemaan koneita, jotka eivät ole verkossa juuri nyt (ehkä niitä ei ole vielä ostettu)
- Määrittelemään koneiden tavoitetilan…
- ja toteuttamaan sen hallintatyökaluilla
Jos et saanut paikka Winhan kautta, voit tulla ensimmäiselle tunnille w45 torstaina 2015-11-05 kello 12:00 katsomaan peruutuspaikkoja.
Salt Stack on kurssin pääasiallinen työkalu.
Kurssin Moodle-sivu (edellyttää kirjautumista).
Alustava aikataulu
Tunnit 5. periodin ajan torstaisin 12:00 – 15:45 tietokonelabrassa PA/5004-Labra_25.
1. Ei lähiopetusta, pääsykokeet. w44
2. Aloitus. Aloitamme siis vasta periodin toisella viikolla. Järjestäytyminen, nykytilan arviointi; automaation ja keskitetyn hallinnan merkitys; katsaus työkaluihin. Hello Salt. Install the Latest Salt Stack on Ubuntu 14.04 LTS. Salt Package-File-Service with Pyobjects. w45
3. Muotit, pilarit ja jyväset. (Templates, pillars, grains). State top.sls. Salt Pillar Walktrough. Salt.renderers.jinja. States tutorial, Part I – Basic Usage. w46
4. Master-minion. Salt Master-Minion with Ubuntu 14.04 LTS – Control Your Slaves over the Internet. SaltStack Walk-through. Using cron with Salt. Opening the Firewall up for Salt: iptables (läksynä tästä vain “Debian” ja “Ubuntu”). w47
5. Työasemien hallinta. Suosikkisovellusten asentaminen. Tausta- ja latauskuvien vaihtaminen. Motd. Omien skriptien asennus /usr/local/bin/. Salt.rendereres.pyobjects. Salt Cloud with DigitalOcean – Deploy 50 Servers. Windows-orjien hallinta. w48
6. Tietoturvan tarkastaminen. Vierailuluennoitsija Benjamin Särkkä, Disobey.fi, Nordea Incident Responce Team. Palvelinten asetuksia. Preseed MySQL Server Password with Salt Stack. Salt State with Multiple SLS Files. w49
7. Koe. Git versionhallinta. Komentojen etäsuoritus. w50
8. Omien Salt-miniprojektien esittely. w51
Esitiedot
Esitiedot (kertaa nämä): Linuxin komennot, apt, demonien hallinta (esim Apache), tiedostojärjestelmän rakenne (etc, var…).
Kirjallisuutta
Full List of Builtin State Modules
Vanhoja kurssisivuja
Vanhoilta toteutuksilta voit lukea kommenteista opiskelijoiden palautetta ja kurssitöitä, tarkastella harjoitustehtäviä ja lukea kurssimateriaaleja.
Vanha toteutus: aikataulu – Linuxin keskitetty hallinta – ict4tn011-4 syksyllä 2013
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
Oma projekti
Oman projektin saa laittaa linkiksi kommenttiin. Laita mukaan kuvaus siitä, mitä projektisi tekee. Linkki kannattaa laittaa myös kommentin tekstiin.
Näin kaikki osallistujat saavat projektien linkit kätevästi, ilman manuaalista URLien jäljennysrumbaa.
Palautetta
Vapaamuotoiseen palautteeseen saa kirjoittaa mitä vain, eikä kysymyksiä tarvitse toistaa. Mutta tässä vinkiksi:
- Opitko jotakin – eli osaatko nyt sellaista, mitä et osannut ennen kurssia?
- Oliko opittu hyödyllistä? Luuletko, että sille on käyttöä esim tulevaisuudessa töissä tai kotona?
- Miten voisin parantaa kurssia?
- Missä aiot hyödyntää taitoja kurssin ulkopuolella? Töissä, harrastuksissa, muualla?
- Viihdyitkö kurssilla?
- Suosittelisitko kurssia? Kenelle? Koulutoverille tai kollegalle?
Numeerinen palaute e-lomakkeella.
https://docs.saltstack.com/en/latest/
https://docs.saltstack.com/en/getstarted/
https://docs.saltstack.com/en/latest/ref/states/all/index.html
h1:
a) Asenna Salt (Helium tai uudempi).
b) Package-File-Service. Tee oma Package-File-Service tyylinen tila Saltille.
Lukuläksynä aikataulusta linkitetyt sivut.
Vapaaehtoisia bonustehtäviä:
Kokeile Saltia jossain muussa levityspaketissa tai käyttöjärjestelmässä kuin tunnilla käytetyssä Ubuntu 14.04:ssä.
Tehtävien määräaika on aina 24 h ennen seuraavan tunnin alkua.
Q&A: BSD: kyllä. Gentoo/emerge: kyllä. Siis kyllä, kuulen mielelläni kokemuksistanne näillä alustoilla. Itse en ole ajanut Saltia vielä kummallakaan.
/srv/salt$ tree
.
├── apache
│ ├── index.html.jinja
│ └── init.sls
└── top.sls
1 directory, 3 files
tee@taulu:/srv/salt$ cat apache/init.sls
#!pyobjects
Pkg.installed("apache2")
File.managed("/var/www/html/index.html",
source="salt://apache/index.html.jinja",
template="jinja")
tee@taulu:/srv/salt$ cat apache/index.html.jinja
Tero was here {{ grains['fqdn'] }}
tee@taulu:/srv/salt$ sudo salt-call --local grains.items
tee@taulu:/srv/salt/sshd$ cat init.sls
#!pyobjects
Pkg.installed("openssh-server")
Service.running("ssh", enable=True)
with Service("ssh", "watch_in"):
File.managed("/etc/ssh/sshd_config",
source="salt://sshd/sshd_config.jinja",
template="jinja",
context={"sshport": pillar("sshport")})
tee@taulu:/srv/salt/sshd$ grep ^Port sshd_config.jinja
Port {{ sshport }}
tee@taulu:/srv/salt/sshd$ head -100 /srv/pillar/*
==> /srv/pillar/ssh.sls /srv/pillar/top.sls <==
base:
'*':
- ssh
$ sudo salt-call --local state.sls sshd
h2. Pilareja ja jyviä. Tee tila (state), joka hyödyntää pilareja (pillars) ja jyväsiä (grains). Voit tehdä myös useamman tilan.
Lukuläksy tulee linkkinä aikatauluun.
ps. Jos sinulta puuttuu Live USB, tee sellainen seuraavalle tunnille. Xubuntu 14.04 LTS amd64 desktop/live. Helpoin tehdä Unetbootinilla Linuxissa.
Vapaaehtoisena lisätehtävänä raportoi Saltin kokeilu toisessa käyttöjärjestelmässä. Linkkejä raportteihin saa laittaa muiden paikkojen lisäksi tälle sivulle kommentteina.
h3: Herra ja orjat. Asenna salt toimimaan herra-orja (master-slave, master-minion) arkkitehtuurissa. Tee uusi moduli ja määrää orjat noudattamaan sitä.
Lukuläksy aikataulussa.
OpenBSD Salt masterina
https://docs.saltstack.com/en/latest/ref/renderers/all/salt.renderers.pyobjects.html
Usean koneen hallinta digitaloceanissa salt cloudilla
http://ilkka.jylha.eu/post/salt-cloud-with-digitalocean/
“Kuka hallitsee Saltilla isointa määrää koneita?” Ilkka kiri jo ennen kurssin puoliväliä johtoon. Ja 50 konetta on kyllä aikamoinen määrä tässä vaiheessa.
h3: Työpöydällä. Unelmien työasema: tee itsellesi tarpeellisia säätöjä työasemalle. Voit muokata koneen ulkoasua vaihtamalla taustakuvia ja latauskuvia sekä päivän viestiä (motd). Asenna suosikkiohjelmasi. Jos osaat, voit myös tehdä niihin tarvittavat asetukset.
Vapaaehtoinen lisätehtävä: säädä oikeita, käytössä olevia työasemiasi Saltilla.
Vapaaehtoinen lisätehtävä: automatisoi Firefoxin asetuksia, esimerkiksi aloitussivu ja oletuskirjanmerkit. Tehtävää vaikeuttaa Firefoxin yhteisten ja aloitusasetusten yleinen sekavuus ja eri versioiden vaihtelevat tiedostojen paikat.
Salt ja Windows
http://mangust1.fi/blog/2015/11/24/linuxin-keskitetty-hallinta-3-herrat-ja-orjat/
h4. Tee oma Salt-tila, joka asentaa LAMP:n (Linux Apache MySQL PHP).
Weppipalvelimen asentava tila voi kuvailla yhden sivun kotisivun, joka pyörii yhdellä koneella. Tai kokonaisen infrastruktuurin, jolla Wikipedia toimii. Kannattaa valita työn laajuus omien taitojen ja käytettävissä olevan ajan mukaan.
Lisää linkki omiin läksyihisi kommenttina tämän sivun perään, jos haluat. Lisää näkyvyyttä, lisää PageRankia ja kaikille helpompi valmistatuminen kokeeseen.
Valmistaudu kokeeseen. Materiaalina kurssiohjelmasta linkitetyt artikkelit sekä tuntien opetus. Koe on teoriakoe Moodlessa.
h5. Tee oma Salt-tila ja esittele se viimeisellä tunnilla.
Mieti jokin hyödyllinen tarkoitus tekemällesi tilalle. Ehkä jotain, mitä voit hyödyntää kotona tai töissä.
Kurssilla oppi hyvin Saltin perusteet, ja vähän edistyneempääkin asiaa. Keskitetylle hallinnalle on aina käyttöä ICT-maailmassa, joten uskon, että kurssista oli hyötyä minulle.
Kurssia voisi parantaa muun muassa lisäämällä käytäviä asioita, ja vähentämällä asioiden kertausta. Oppilaille vaikeissa asioissa niistä parin esimerkin julkaiseminen esim. kotisivulle auttaa paljon. Kurssi oli viihtyisä ja ilmapiiri oli loistava!
https://danielracerosaarnisuo.wordpress.com/2015/12/10/tunti-6-w50-miniprojekti/
Mielestäni kurssin tärkein asia oli oikeiden toimintatapojen oppiminen ja sudenkuoppien välttäminen.
Alkuun pääsemisen jälkeen uutta tietoa oli helppo soveltaa. Kurssilla opitut asiat ovat minulla aktiivisessa käytössä joka päivä.
Henkilökohtaisesti kurssi olisi voinut olla nopeatempoisempi ja syventävämpi, mutta uskon että kurssista tulisi tällöin yleisesti liian vaativa.
Suosittelen kurssia lämpimästi aivan kaikille.
Kurssin päätösprojektiksi automatisoin Let’s Encrypt työkalulla sertifikaatin luomisen.
https://ilkka.jylha.eu/post/lets-encrypt-quick-demonstration/
https://hesekielk.wordpress.com/saltjavaeclipse/
Haaga-Helian kurssien parhaimmistoa. Todella opettavainen, informatiivinen sekä ajankohtainen. Opin paljon uusia asioita keskitetystä hallinnasta sekä itse Linuxista. Saatuja taitoja voi hyödyntää sekä kotona että töissä. Kurssi oli melko työläs kolmen opintopisteen kurssiksi ja lähtötaso keskitasoa. Kurssilla opetus oli intensiivistä mutta sopivaa vauhtia etenevää, en tuntenut tipahtavani kärryiltä missään vaiheessa ja ongelmiin sai apua. Suosittelen ehdottomasti kaikille Linuxista ja keskitetystä hallinnasta kiinnostuneille.
Kurssi oli mielestäni erittäin hyvä jatko linux palvelimena kurssin jatkoksi.
Itse opin mielestäni todella paljon ja hyvin mahdollista että opittoja taitoja tulee hyödynnettyä jatkossa kotona omaksi iloksi ja työelämässäkin.
Vaike keksiä tähän hätään parannettavaa, mutta ehdottomasti suosittelisin kaikille opiskeliolle jotka ovat käyneet linux palvelin kurrsin. Ei tarvitse olla mikään linux ekspertti, ainakaan omasta mielestäni ole ja silti kurssi onnistui, mutta ehdottomasti pohjaa täytyy olla. Myös vaikka ei välttämättä ole linux “intoilia” on kurssi hyvä, itsellä ainakin kiinnostus kasvoi kurssin edetestä ja taitojen kehityyessä ja uutta oppiessa
Kurssin loputtua minulle jäi peruskäsite Linuxin keskitetystä hallinasta.
Joka tunnista jäin paljon käteen. Kurssilla kannattaa olla paikan päällä, koska joka tunnilla käytiin asiat perusteelliseti läpi ja niistä jäi hyvä pohja kotitehtävien tekoon.
Omasta mielestäni kurssin sisältö oli hyvä ja ytimekäs. Jokaisella tunnilla käytiin asiat selkeästi läpi ja Terolta sai hyvät ja selkeät ohjeet tehtävien tekoon.
Mahdollisesti tulen käyttämään kurssilla opittuja taitoja työelämässä.
Suosittelisin kurssia kaikille, jotka ovat kiinnostuneet edes vähän Linuxista tai käynyt aikasempia kursseja liityen Linuxiin.
Samba-palvelimen asennus Masterille.
https://joakimtick.wordpress.com/2015/12/15/saltstack-salt-projekti/
Aivan huikea kurssi taas. Salt on tehokas työkalu keskitettyyn hallintaan ja ainakin omasta mielestä perusasiat on helppo omaksua. Kurssi oli helpompi kuin Linux palvelimena. Eli jos siitä selviää kunnialla, niin tämä kurssi on selkeä seuraava vaihtoehto.
Itseäni kiinnosti enemmän koodata Saltin tilat Pythonilla, joten olisi ehkä hyvä melko alussa selittää miten Yamlin esimerkit voi “kääntää” Pythonille. Netissä kuitenkin suurin osa esimerkeistä on Yamlilla.
Toinen asia mitä kaipaisin olisi se, että harjoteltaisiin enemmän asetusten tekemistä ja esim. käyttäjien hallintaa kuin asentamista. Sitähän tietysti tuli tehtyä jonkin verran jo kurssin tässäkin toteutuksessa, mutta mielestäni se on tärkeämpää.
Git oli kiva lisä, koska itselleni se on jäänyt hieman vieraaksi. Vielä olisi voinut käydä läpi oman salaisen Git repositoryn tekemistä. Monella tälläkin kurssilla kuitenkin on jonkinnäköinen oma palvelin ja sehän olisi mukavaa käyttää sitä.
En tiedä miten moni tällä kurssilla tämän teki, mutta kannattaa vihjasta opiskelijoille, että saltin asennuksen voi scriptaa, niin menee tunnin alussa asentaminen nopeammin (siis jos käyttää LiveCD:ta)
Hieno kurssi, lisää näitä!
Xubuntu master-windows minion, cross breeding
https://jannelehtmaki.wordpress.com/2015/12/16/linuxin-keskitetty-hallinta-ict4tn011-8-h6/
https://mangust1.fi/blog/categories/linuxin-keskitetty-hallinta/index.html
Täältä tekemäni kotitehtävät
Palaute kurssista.
# Opitko jotakin – eli osaatko nyt sellaista, mitä et osannut ennen kurssia?
Keskitetyn hallinnan perusperiaatteet olivat jo valmiiksi tuttuja, joten suurin oppiminen tapahtui nimenomaan Saltin parissa: miten Salt asennetaan, konfiguroidaan, miten minionit yhdistää masteriin ja miten tiloja ajetaan.
# Oliko opittu hyödyllistä? Luuletko, että sille on käyttöä esim tulevaisuudessa töissä tai kotona?
Opittu oli hyödyllistä, mutta en tiedä tuleeko sille käyttöä. Todennäköisesti en käytä Saltia jatkossa, koska töissä on jo valmiina käytössä Ansible ja pidän siitä ehkä enemmän. Ansiblessa on _aivan mahtavaa_ se että mikä tahansa kone (kehittäjän läppäri) voi olla master-koneena, ja se idea että _kaikki_ mitä sillä tehdään on vain komentojen ajamista SSH:n yli. Ei tarvita erillistä palvelinta toimimaan masterina.
# Miten voisin parantaa kurssia?
Jättäisin pois:
– Pythonin / pyobjectsin käyttäminen (Saltin omat ohjeet ja suurin osa materiaalista netissä on tehty yamlilla)
– Työasemien hallinnointiin voisi keskittyä vähemmän, todennäköinen käyttötapaus joka vastaan tulee on kuitenkin palvelimissa
Lisäisin:
– Vertailua eri työkalujen välillä, eikä vain yhtä totuutta. Ehkä opiskelija voisi jopa valita millä työkalulla tekee? Jos tavoitteena on saada apache2 asennettua, onnistuu se millä vaan työkalulla (Puppet, Chef, Ansible, Salt)
– Oikeaa käyttötapausta vastaavaa asiaa: eri “ympäristöt” (testing, staging, production) ja niiden konfigurointi ja käyttö niin ettei samaa asiaa tehdä kahdesti
# Missä aiot hyödyntää taitoja kurssin ulkopuolella? Töissä, harrastuksissa, muualla?
Jossain vaiheessa todennäköisesti automatisoin omien palvelimieni (web, e-mail) ylläpidon, ja tästä on varmasti siinä hyötyä.
# Viihdyitkö kurssilla?
Kyllä, hyvä kurssi.
# Suosittelisitko kurssia? Kenelle? Koulutoverille tai kollegalle?
Kaikille joilla Linux on jo valmiiksi hyvin hallussa.
Kiitos kommenteista!
Kysyit oman salaisen Git-varaston perustamisesta. Jos teet joka projektista saman tien paikallisen git-varaston, ja myöhemmin saada sen toimimaan palvelimella:
http://terokarvinen.com/2012/git-from-offline-to-network
Juuh, kyllä mie sen jo virittelinkin itselleni.
Tää git olisi ehkä muutenkin enemmän Linuxin perusteet tai Linux palvelimella -asiaa. Mutta itselleni uutta, niin en valita 🙂
Viimeisenä kotitehtävänä / “miniprojektina” yksinkertainen kuormanjako (nginx) http://www.jannewaren.fi/blog/2015/12/17/linuxin-keskitetty-hallinta-kotitehtava-6.html
Mielenkiintoinen ja sopivan haastava kurssi jossa keskitetyn hallinnan lisäksi oppi paljon sekalaisia Linux-vinkkejä ja hyviä käytäntöjä. Tunneilla ja harjoitusten myötä hankittua osaamista hyödynnän varmasti ainakin joissakin omissa projekteissa.
Kurssia voi mainiosti suositella Linux palvelimena -kurssin jatkoksi ja kaikille Linuxista tai keskitetystä hallinnasta kiinnostuneille.
http://www.villepaasonen.com/2015/12/assignment-6-installing-drupal-with-saltstack
Assignment 6: Installing Drupal with SaltStack.
https://tuominiemi.wordpress.com/2015/12/15/salt-projekti/
Orjakoneiden salasanojen vahvuuden tarkistus Saltilla
https://hesekielk.wordpress.com/saltjavaeclipse/
Javan ja Eclipsen asentaminen minionille.
https://andyleino.wordpress.com/2015/12/16/linuxin-keskitetty-hallinta-ict4tn011-8-h6/
Käyttäjähallintaa Saltilla.
Kurssi oli mielestäni erittäin mielenkiintoinen sekä opettavainen. Suosittelen kaikkia Haaga-Helian järjestelmäpuolen opiskelijoita suorittamaan kurssin, jos Linux palvelimena ei osoittautunut ylitsepääsemättömäksi haasteeksi. Olen varma siitä, että kurssilla opittuja taitoja voidaan soveltaa työelämän ylläpitotehtävissä ja Salt osoittautui päteväksi keskitetyn hallinnan työkaluksi.
Kurssi ei myöskään keskittynyt ainoastaan Saltin käyttöön työkaluna, vaan painopiste oli keskitetyn hallinnan tarkoituksessa sekä toimintatavoissa. En ollut ennen kurssia tutustunut keskitettyyn hallintaan lainkaan, mutta näin kurssin jälkeen tunnen omaavani hyvän yleiskäsityksen sekä taidot, jotka mahdollistavat oman osaamisen syventämisen.
Mikäli päätät suorittaa kurssin, suosittelen ehdottomasti osallistumaan lähiopetukseen. Ilman ennakkotietoa keskitetystä hallinnasta voi harjoitusten suorittaminen etänä osoittautua todella haastavaksi. Viihdyin kurssilla vallan mainiosti ja se kuuluu mielestäni Haaga-Helian parhaimmistoon.
– Opitko jotakin – eli osaatko nyt sellaista, mitä et osannut ennen kurssia?
SaltStack oli minulle ennestään tuntematon, kurssilta sai hyvän pohjan sen käyttöönottoon.
– Oliko opittu hyödyllistä? Luuletko, että sille on käyttöä esim tulevaisuudessa töissä tai kotona?
SaltSack on varmasti hyödyllinen työkalu, ja uskon käyttäväni sitä jatkossa niin työelämässä kuin kotona.
– Miten voisin parantaa kurssia?
* Pyobjects on hyvä ja yksinkertainen käyttää. Ikävä kyllä siitä löytyy varsin vähän dokumentaatiota netistä, joten näin SaltStack -aloittelijan kannalta, olisi hyvä valita kieli josta löytyisi enemmän materiaalia.
* Kurssissa voitaisiin mennä vielä syvemmälle palvelinten konfiguroinnissa. Nyt itse konfigurointi jäi melko pinnalliseksi, ja olisinkin toivonut kurssin olevan haastavampi.
– Missä aiot hyödyntää taitoja kurssin ulkopuolella? Töissä, harrastuksissa, muualla?
Olen jo asettanut Saltin käyttöön kotona, töissä aijon tehdä samoin.
– Viihdyitkö kurssilla?
Kyllä, hyvä kurssi – Haaga-Helian parhaimmistoa.
– Suosittelisitko kurssia? Kenelle? Koulutoverille tai kollegalle?
Suosittelen kurssia motivoituineille Linux-käyttäjille.