Pilvipalveluiden perusteita käsittelevä luento, jonka pidin Jyväskylän kirjastolla huhtikuussa 2016.
Lähestyminen laajaan aiheeseen on melko teoreettinen ja pyrkii antamaan yleiskäsityksen tärkeimmistä perusasioista.
1. Pilvipalveluista
Luennolla käsitellään pilvipalveluita yleisesti sekä keskitytään erityisesti
palveluiden hyödyntämiseen henkilökohtaisessa käytössä. Esimerkkinä
Googlen pilvipalveluympäristö. Tavoitteena on antaa selkeä kuva
pilvipalveluiden roolista nykyaikaisessa tietotekniikassa.
3. Mihin esitys perustuu?
Hill et al. (2013)
Guide to Cloud Computing
Principles and Practice.
Rafaels, R. (2015)
Cloud Computing From
Beginning to End.
4. Päivän fokus
• Tavoitteena on saada yleiskäsitys pilvipalveluiden
tyypeistä eli "missä mennään".
• Katsotaan myös palveluiden käytön aiheuttamia
muutoksia käyttäjän tietotekniikassa.
• Luento sekä muut aiheeseen liittyvät luennot ovat
verkossa SlideShare-palvelussa (tvtkoulu).
5. Pilvi muuttaa käyttötapoja
•Google Docs-dokumentin jakaminen vrt.
tiedoston lähettäminen sähköpostilla.
sovellukset, ajantasainen versio, yhteistyö
•Spotify / YouTube vrt. musiikin kuuntelu
levyiltä.
•Netflix vrt. elokuvat videovuokraamosta.
8. Määritelmä pilvilaskennalle
Toimintojen tekemiseksi tapahtuvaa käyttäjän
osittain hallinnoimaa laskentaa, joka tehdään
verkossa. Hallinnointiin kuuluvat mm.
• tiedonsyöttö
• yhteenvetojen tarkastelu
• prosessien käynnistys.
Tiedonsyöttö, yhteenvedot, prosessit
9. Esimerkkinä Google Photos
• Kuvien lähetys automaattisesti älypuhelimesta
(tiedonsyöttö)
• Assistentti-toiminto (yhteenvedot)
• Albumien luonti (prosessit)
Tiedonsyöttö, yhteenvedot, prosessit
10. ”Virallinen” määritelmä
•Pilvilaskenta mahdollistaa jaettujen ja pitkälle
muokattavissa olevien laskentaresurssien käytön
verkon välityksellä tarpeen vaatiessa (hyödyke).
Resursseja voidaan nopeasti ja pienellä vaivalla
varata lisää tai vapauttaa käytöstä.
•Pilvilaskennan määritelmään liittyvät oleelliset
periaatteet, palvelumallit sekä käyttöönottomallit.
National Institute of Standards and Technology 2011
11. Määritelmän lisäykset
• Oleellisia periaatteita ovat
• itsepalvelu ja palvelun nopea muutoskyky tarpeeseen vastaten
• resurssien yhteiskäyttö virtualisoinnin avulla
• käyttöasteen mittaukseen perustuva laskutus
• nopea laajakaistayhteys
• Palvelumalleja ovat SaaS (Software as a Service), PaaS
(Platform as a Service) sekä IaaS (Infrastructure as a Service).
• Käyttöönottomalleja ovat julkinen, yksityinen, yhteisö ja hybridi.
NIST 2011, Rafaels 2015, Hill et al. 2013
12. Esimerkkejä
SaaS:
Gmail, Drive, Office365, Facebook, Netflix, Spotify
PaaS:
Microsoft Azure, Google Web Toolkit
IaaS:
DigitalOcean, Google Cloud, Amazon Web Services
Julkisia pilvipalveluja
14. Uuttako? (Hill et al. 2013)
” Pilvilaskenta on uusi
tuotantomalli tietotekniikalle,
joka hyödyntää olemassa
olevia IT-resursseja. Pilvi
abstrahoi epäoleelliset
yksityiskohdat käyttäjältä.”
15. Olemassa olevat resurssit?
• Web 1.0 -> 2.0, kohti vuorovaikutuksellisuutta
(Palvelulähtöinen arkkitehtuuri, SOA)
• Virtualisointi - useita järjestelmiä yhdellä fyysisellä
laitteella, käytön monipuolinen optimointi.
• Autonominen laskenta - tavoitteena järjestelmät, jotka
hallitsevat itse itseään ja sopeutuvat myös ennalta
arvaamattomiin muutoksiin (IBM 2012).
• Laajakaistayhteydet - käyttö mahdollista missä vain,
kunhan on nopea verkkoyhteys.
Web 2.0, virtualisointi, autonominen laskenta, laajakaista
16. Vuorovaikutteinen Web 2.0
• Käyttäjien itsepalvelua ja algoritmeihin perustuvaa
data-analyysiä (O'Reilly 2005).
• Minimaalinen vuorovaikutteinen verkkosovellus
käyttää useita tekniikoita kuten mm. HTTP, XHTML,
CSS, JavaScript, XML, PHP sekä tietokannat.
• HTTP hoitaa kommunikaation asiakkaan ja
palvelimen välillä, HTML ja CSS määrittelevät
verkkosivun ulkoasun, JavaScript ja PHP sekä
tietokannat tekevät sivusta dynaamisen.
Itsepalvelua ja ohjelmointitekniikoita
17. Virtualisoinnin perusteita
•Tietokoneelle asennetaan hyperviisori (HV) eli
sovellus, joka luo virtuaalikoneita (VK).
•HV:n kautta asennetaan VK:t, jotka ovat omia
erillisiä järjestelmiään ja kommunikoivat
tietokoneen kanssa HV:n välityksellä.
•Esimerkiksi Linux-järjestelmiä Windows-
ympäristössä (VirtualBox).
Hyperviisori hallinnoi virtuaalikoneiden joukkoa
19. Virtualisoinnin ominaisuuksia
• Useampi VK käytössä samalla fyysisellä koneella.
• Jokaisella VK:lla voi olla erilainen käyttöjärjestelmä sekä
sovellukset.
• Jos yksi VK "menee sekaisin" (ohjelmisto), muut jatkavat
toimintaansa ilman ongelmia.
• VK voidaan tallentaa kokonaisuudessaan ja siirtää
(kloonata) toiselle fyysiselle laitteelle.
• Ongelmatilanteessa liikenteen ohjaus muualle.
• Tekniset päivitykset.
• Resurssien optimikäyttö ja käyttöasteiden tasaaminen.
Useita järjestelmiä yhdellä fyysisellä laitteella, varmistus,…
20. Virtualisointi ja Google?
•Googlen palvelut peruskäyttäjälle hyödyntävät
virtualisoinnissa kapselointia (lmctfy).
•Kapselointi perustuu Linuxin sovelluksia
toisistaan erottavaan tekniikkaan (cgroups).
•Kapseloidut osat käyttävät jaettua
käyttöjärjestelmäresurssia, VK:t käyttävät
erillisiä järjestelmäresursseja.
Kapselointi vs. virtuaalikoneet
22. SPI-malli (Rafaels 2015)
Sovellukset
Data
Ajon (run) hallinta
Apuohjelmat
Käyttöjärjestelmä
Fyysinen kerros
IaaS
Sovellukset
Data
Ajon (run) hallinta
Apuohjelmat
Käyttöjärjestelmä
Fyysinen kerros
PaaS
Sovellukset
Data
Ajon (run) hallinta
Apuohjelmat
Käyttöjärjestelmä
Fyysinen kerros
SaaS
oikeudet
ei oik.
23. IaaS
• Käyttö osittain samanlaista kuin tekstipohjaisella
tietokoneella. Hyödyntäminen vaatii ohjelmointitaitoa
sekä järjestelmänvalvojan osaamista.
• Käyttäjä vastaa käyttöjärjestelmästä, apuohjelmien
valinnasta, päivityksistä, sovellusten kehittämisestä ja
joistakin tietoturvatekijöistä (mm. tietokannan suojaus).
• Etuina pilven skaalautuvuus tarpeen mukaan, pienet
aloituskustannukset ja nopea käyttöönotto. Esimerkiksi
DigitalOcean.
Virtuaalipalvelimen tai –palvelimien vuokrausta
24. PaaS
• Ohjelmointiympäristö tai muu alusta luovaa tekemistä
varten. Hyödyntäminen vaatii usein ohjelmointitaitoa
sekä tietokoneen hyvää käyttötaitoa.
• Käyttäjä hallinnoi sovellusten ominaisuuksia (malli,
näkymät, toiminnallisuus; MVC) käyttäen kehitystyön
välineitä (kääntäjät, ohjelmakirjastot, apuohjelmat,…).
• Etuna suoraan toimivat ja ylläpidetyt kehitystyökalut,
ongelmana valmiiden sovellusten siirrettävyys.
Esimerkiksi Google Web Toolkit (GWT).
Kehitysympäristö avaimet käteen -periaatteella
25. SaaS
• Verkkorajapinta eli selain tai app sovelluksen käyttöön.
Hyödyntäminen vaatii tietokoneen peruskäyttötaitoa tai
esimerkiksi bisneslogiikan tuntemusta (Zoho CRM).
• Käyttäjä tekee valitsemiaan toimintoja sovelluksilla, jotka
käsittelevät käyttäjän antamia käskyjä pilvikoneella.
• Etuina mm.
• Ei tarvitse asentaa järjestelmiä tai sovelluksia
• Kaikilla käyttäjillä uusin versio sovelluksista
• Yhteiskäyttö ja tiedon jakaminen
• Automaattinen synkronointi (varmistus)
Pilvipalveluiden käyttäjän valinta
27. Käyttöönottomallit
• Yksityinen - järjestelmä rakennetaan itse tai ostetaan
vain omaan käyttöön palveluntarjoajalta.
• Julkinen - palvelu ostetaan palveluntarjoajalta kuten
Google tai Microsoft, joka tarjoaa palvelua myös muille.
• Yhteisö - yhteisen asian puolesta työskentelevät
toimijat käyttävät pilvipalvelua, jonka omistaa ja jota
hallinnoi yksi tai useampi toimijoista.
• Hybridi - käytetään julkista ja yksityistä pilveä, toiminta
yhdistetään sopivalla teknisellä ratkaisulla.
Julkinen, yksityinen, yhteisö ja hybridi
29. Kontrollin puute (Stallman 2008)
”One reason you should not
use web applications to do
your computing is that you
lose control.”
30. Data lock-in (ENISA 2009, O’Reilly 2005)
•Pilvipalveluiden muotoa määrittävät standardit
ovat kehitysvaiheessa.
•Siirtyminen toiselle palveluntarjoajalle voi olla
hankalaa, sillä moniulotteinen tieto on yhden
toimijan ei-standardimuotoisessa järjestelmässä.
•Esimerkiksi Google: kalenteri, yhteystiedot,
dokumentit, valokuvat, käyttöhistoria,…
Ongelmana standardiratkaisujen puute tallennukselle
31. Sosiaalinen media (Hill et al. 2013)
”Pilvityökalujen avulla ihmiset
voivat erittäin nopeasti
keskustella yhdessä, tuoda
esiin ja edistää ratkaisuja
ongelmatilanteisiin.”
32. Organisaationäkökulma
• Pilvi tuo pienille yrityksille ja organisaatioille
suuryritystason työkaluja, resursseja sekä
tietoturvaratkaisuja (Hill et al. 2013).
• Ei tarvetta investoida ennakkoon, käyttöoikeuksien
hankinta tarpeen mukaan riittää. Nämä osana
liikevaihtoa vrt. "kiinteät" tehotietokoneet.
• Toiminnan hallinta kysynnän mukaan onnistuu
joustavasti.
Pienille organisaatioille isojen resursseja edullisesti
33. Tietoturvasta (Rafaels 2015)
• Pilveä käytettäessä voidaan saavuttaa parempi tietoturva, mm.
• Suurilla toimittajilla on palkattuna alaan erikoistunutta henkilöstöä.
• Pilvijärjestelmä on yhtenäinen - helpompi suojata kuin erilliset
järjestelmät.
• Laitteen tuhoutuessa tiedon palautusprosessi on nopea.
• Toisaalta kohdataan uusia tietoturvaongelmia:
• Pilvijärjestelmän monimutkaisuus tuo enemmän
hyökkäysmahdollisuuksia.
• Jaettu usean asiakkaan ympäristö saman VK:n hallinnoimana.
• Kontrollinen menetys tiettyihin aspekteihin kuten datan ja prosessien
hallinta. Lisäksi mm. sisäiset uhkat ja käyttöoikeudet (SLA).
Parannuksia ja uusia uhkatekijöitä
34. Google SaaS tietoturvasta
• Google käyttää kertakirjautumisen periaatetta sekä 2-
vaiheista vahvistusta.
• Google tarjoaa Gmail-turvatarkistuslistan, joka on
kattava tietoturvapaketti sisältäen mm.
• Salasanan vahvuuden tarkistus
• Tilin palautusvaihtoehdot
• 2-vaiheisen vahvistuksen käyttöönotto
• Sovellukset, joilla oikeus käyttää Gmail-tiliä.
• Palvelun käyttö VPN-yhteydellä parantaa tietoturvaa.
Kertakirjautuminen, 2-vaiheinen vahvistus ja turvatarkistuslista
36. Mitä on pilvilaskenta (Hill et al. 2013)?
”Jos pilvilaskenta pitäisi
tiivistää neljällä avainsanalla,
valitsisimme sanat verkko,
elastisuus, hyödyke ja
skaalautuvuus.”