Skip to main content

29 Tekniikkaa

29Tekniikka logo

Microsoft Azure -pilvipalvelut yrityksille

Microsoft Azure on yksi kolmesta suuresta pilvialustasta. Sen osuus yrityskäytössä on kasvanut tasaisesti viime vuodet, erityisesti organisaatioissa joilla on jo valmiiksi Microsoft-ympäristöjä käytössä. Active Directory, Office 365, Dynamics, Teams. Kun nämä ovat jo olemassa, Azuren käyttöönotto on usein lyhyempi askel kuin siirtyminen toiselle alustalle.
Rakennamme Azure-ratkaisuja. Tässä tekstissä kerromme mitä se tarkoittaa käytännössä, millaisia projekteja teemme ja milloin Azure ei ole oikea valinta.

Mitä Azure-osaaminen tarkoittaa meillä

➠ Azure ei ole yksi asia. Se on satoja palveluita, ja jokaisella on oma käyttötarkoituksensa, oma hinnoittelunsa ja omat rajoituksensa. Kukaan ei hallitse kaikkea. Tärkeämpää on tietää, mitkä palvelut sopivat mihinkin tilanteeseen ja mitkä ovat ansakuoppia.
➠ Meillä on kolme aluetta joissa olemme tehneet eniten töitä.
  • Monella organisaatiolla on palvelimia omassa konesalissa tai vuokratussa konesalissa. Ne pyörivät, ne toimivat, mutta niiden ylläpito maksaa ja skaalautuminen on hidasta. Jossain vaiheessa tulee kysymys siitä, kannattaisiko ne siirtää Azureen.
  • Vastaus ei ole aina kyllä. Tämä on asia jota moni myyjä ei sano ääneen. Joskus oma konesali on halvempi, erityisesti jos kuormat ovat tasaisia ja ennustettavia. Pilvi tuo hyötyä silloin kun kapasiteetin tarve vaihtelee, kun uusia palveluita pitää saada käyttöön nopeasti, tai kun halutaan siirtää infrastruktuurin ylläpito pois omalta väeltä.
  • Kun siirtymä tehdään, se tehdään vaiheittain. Harvoin kannattaa siirtää kaikkea kerralla. Tyypillinen eteneminen on jotain tällaista: kehitys- ja testiympäristöt ensin, sitten vähemmän kriittiset tuotantojärjestelmät, ja lopuksi ne joissa on eniten riippuvuuksia ja joissa riski on suurin. Tämä antaa aikaa oppia, korjata virheet ja kerätä kokemusta ennen kuin siirretään ne järjestelmät, joiden kaatuminen sattuu.
  • Siirtymässä on yksi asia joka yllättää lähes aina. Se ei ole tekninen. Se on kustannus. Azure-lasku ei ole sama asia kuin konesalin lasku, ja sen ennustaminen etukäteen on vaikeaa. Siksi rakennamme siirtymän yhteydessä kustannusseurannan alusta asti, emmekä vasta sitten kun lasku on jo karannut.
Siirtymä Azureen:
  • Rakennamme sovelluksia, jotka on suunniteltu Azuren päälle alusta asti. Tämä tarkoittaa sitä, että arkkitehtuuriratkaisut tehdään sen mukaan, mitä Azure tarjoaa.
  • Käytännössä tämä tarkoittaa esimerkiksi sitä, että laskenta hoidetaan Azure App Servicessä tai Azure Functionsissa sen sijaan että pystytettäisiin virtuaalikoneita. Tietokanta on Azure SQL tai Cosmos DB sen sijaan että asennettaisiin SQL Server omalle palvelimelle. Tiedostot tallennetaan Blob Storageen sen sijaan että niitä säilytettäisiin levyllä. Autentikointi hoidetaan Entra ID:n kautta sen sijaan että rakennettaisiin oma käyttäjähallinta.
  • Tämä ei ole pelkästään tekninen valinta. Se vaikuttaa siihen, kuinka paljon ylläpitoa tarvitaan ja kuinka paljon kustannuksia kertyy. Hallitut palvelut ovat yleensä kalliimpia yksikköhinnalla mutta halvempia kokonaisuutena, koska niitä ei tarvitse ylläpitää itse.
  • Konttipohjaisissa ratkaisuissa käytämme Azure Kubernetes Serviceä. AKS on kypsä ja toimiva, mutta se ei ole oikea valinta jokaiseen projektiin. Kubernetes tuo mukanaan monimutkaisuutta, jota ei tarvita jos sovellus on yksinkertainen. Olemme kieltäytyneet AKS-projekteista, joissa asiakas olisi halunnut sen koska se on muodikasta, mutta joissa App Service olisi riittänyt.
Sovelluskehitys Azure-alustalle:
  • Tämä on palvelu, jota monet eivät osaa pyytää mutta jota useimmat tarvitsevat.
  • Azure-lasku on vaikea lukea. Se koostuu kymmenistä tai sadoista riveistä, ja jokainen rivi laskutetaan eri perusteella. Compute juoksevan ajan mukaan. Storage tallennetun datan ja siirretyn datan mukaan. Verkkoliikenne suunnan mukaan. Tietokannat sekä varatun kapasiteetin että käytön mukaan. Tämä tekee kokonaisuuden hahmottamisesta vaikeaa, ja siksi kustannukset helposti karkaavat.
  • Tyypillisiä löydöksiä, kun käymme läpi Azuren ympäristöä:
  • Virtuaalikoneita, joiden CPU-käyttö on alle kymmenen prosenttia. Ne on mitoitettu liian suuriksi tai niitä on liikaa.
  • Resursseja, jotka on jääneet päälle eikä kukaan muista miksi. Kehitysympäristöjä, jotka pyörivät ympäri vuorokauden vaikka niitä käytetään toimistoaikoina.
  • Tallennustilejä, joihin on kertynyt tavaraa vuosien ajalta eikä kukaan tiedä mitä siellä on.
  • Varauskattoja, jotka ovat päättyneet hiljaisesti, minkä jälkeen laskutus on palannut listahinnoille.
  • Kustannusten hallinta ei ole kertaluonteinen projekti. Se on jatkuva prosessi. Rakennamme yleensä seurannan, joka hälyttää poikkeamista, ja käymme läpi kustannukset säännöllisesti. Tämä on tylsää työtä, mutta se maksaa itsensä takaisin nopeasti.
Azuren kustannusten hallinta:

Turvallisuus ja hallinta

➠ Azure tarjoaa valmiit työkalut identiteetin hallintaan, pääsynvalvontaan, salaukseen ja lokitukseen. Mutta oletusasetukset eivät ole aina turvallisia. Ne on suunniteltu niin, että palvelun saa nopeasti käyttöön, ei niin että se olisi turvallinen.
➠ Käymme läpi Azuren ympäristön turvallisuusasetukset järjestelmällisesti. Tämä tarkoittaa muun muassa sitä, että varmistamme ettei julkiseen internetiin ole avattu mitään mitä ei tarvitse olla auki. Että palveluiden väliset yhteydet on rajattu oikein. Että salausavaimet ja salaisuudet ovat Key Vaultissa eivätkä koodissa. Että lokitus on päällä ja lokit menevät keskitettyyn paikkaan. Että pääsynhallinta perustuu rooleihin eikä henkilökohtaisiin oikeuksiin.
➠ Tämä ei ole erillinen projekti. Se on osa jokaista projektia, jonka teemme. Jos turvallisuus jätetään viimeiseksi, se jää tekemättä.

Miten työ etenee

Aloitamme keskustelulla. Kerrot mitä tarvitset ja mitä sinulla on jo. Ei tarvitse olla valmista suunnitelmaa.

Sen jälkeen katsomme kokonaisuuden. Mitä Azure-palveluita tarvitaan, mitä ei. Mitä voidaan tehdä itse ja mitä kannattaa ostaa. Mitä pitää tehdä ensin ja mitä voi siirtää myöhemmäksi.

Jos kyseessä on suurempi kokonaisuus, teemme arkkitehtuurisuunnitelman. Se ei ole dokumentti, joka jää kansioon. Se on suunnitelma, jonka pohjalta työ tehdään ja jota päivitetään, jos tarpeet muuttuvat.

Toteutus etenee vaiheittain. Jokaisen vaiheen jälkeen käymme läpi, mitä on tehty ja mitä seuraavaksi. Näin pysyt mukana koko ajan etkä huomaa vasta lopussa, että lopputulos ei vastaa sitä mitä odotit.

Milloin Azure ei ole oikea valinta

➢ Tämä on osio, jota harva toimittaja kirjoittaa. Me kirjoitamme, koska se säästää kaikkien aikaa.
➢ Azure ei ole oikea valinta jos kuormat ovat pieniä ja vakaita. Jos sinulla on yksi palvelin, joka pyörii tasaisella kuormalla, pilvi on todennäköisesti kalliimpi kuin oma tai vuokrattu palvelin.
➢ Azure ei ole oikea valinta jos koko organisaatio on rakennettu AWS:n tai Googlen päälle. Tässä tapauksessa alustan vaihtaminen tuo enemmän kustannuksia kuin hyötyjä.
➢ Azure ei ole oikea valinta jos tarvitset erittäin spesifiä laskentatehoa, jota Azure ei tarjoa. Tällaisia tapauksia on harvassa, mutta ne ovat olemassa.
➢ Azure ei ole oikea valinta jos kukaan ei ylläpidä sitä. Pilvi ei ylläpidä itseään. Se tarvitsee jonkun, joka seuraa kustannuksia, päivittää konfiguraatioita ja reagoi ongelmiin.

Keitä me olemme

➠ Teemme tätä työtä itse. Emme alihanki projekteja eteenpäin. Se kuka myy on se joka tekee.
➠ Kerromme rehellisesti, jos jokin ei ole realistista. Jos Azure ei ole oikea ratkaisu, sanomme sen. Jos projekti on liian pieni että se kannattaisi, sanomme sen.
➠ Emme myy sinulle sitä mitä et tarvitse.