DevOpsDays Amsterdam

DevOpsDays Amsterdam

Comiqin kaksi teknistä testaajaa, Teemu ja Juho, lähtivät kesäkuun lopulla lämpimään Amsterdamiin DevOpsDays-seminaariin oppimaan uutta ja tutustumaan alan ihmisiin. Näin he kertovat matkastaan:

Seminaarin avausluennot olivat lähinnä kertausta siitä, mitä DevOps on, ja miten nykyiseen tilaan ollaan päästy. Avauksen pääpointtina oli se, että DevOpsin keskiössä eivät ole niinkään työkalut, vaan ihmiset, sillä DevOps on ennen kaikkea kulttuurillinen toimintatapa. Kun projektin tavoitteet ovat selvillä, valitaan työkalut tavoitteiden mukaan. Ketterässä maailmassa tavoitteet voivat kuitenkin muuttua jatkuvasti, joten muutoksiin pitää olla valmis reagoimaan nopeasti.

Yksi mielenkiintoisimmista esityksistä DevOps-päivillä oli mielestämme “Service networking for microservices”. Esitys käsitteli sitä, kuinka mikropalvelut tulisi verkostoida keskenään isompaa sovellusta luotaessa. Aihe oli karkeasti jaettu kolmeen osa alueeseen: palveluiden löytämiseen, palveluiden konfiguroimiseen sekä palvelun osiin jakamiseen.

Ensimmäisenä tarkasteltiin tarkemmin palveluiden löytämistä. Tällä tarkoitettiin sitä, miten mikropalvelut löytävät toisensa, kun tarvitsevat jonkin metodin suorittamista. Ennen tällainen olisi toteutettu pelkästään IP-osoitteiden avulla, mutta se ei toimi enää nykyajan dynaamisessa ympäristössä. Kun IP-osoite vaihtuu koko ajan, kyseinen metodi ei pysy perässä. Sen vuoksi nykyään palvelut nimetään, ja muille mikropalveluille kerrotaan nimi, jolla tarvittavan mikropalvelun voi löytää. Tällä tavalla muiden moduulien löytäminen ja ylläpito helpottuvat huomattavasti.

Toisena esityksessä puhuttiin siitä, kuinka mikropalvelut tulee konfiguroida niin, että palvelut ovat turvallisia ja helppokäyttöisiä. Konfiguraatio tulee tehdä jokaiselle mikropalvelulle erikseen omalla tiedostolla. Tiedoston tulee sisältää erilaisa asioita, kuten kuka saa käyttää palvelua tai muokata asetuksia, mistä proxy tai tarvittavat mikropalvelut löytyvät, ja niin edelleen. Tällaisella tiedostolla pidetään asetukset siististi yhdessä paikassa, josta niitä on helppo tarvittaessa muuttaa.

Kolmantena ja viimeisenä aiheena käytiin läpi kuinka suurempi palvelu tulee jakaa osiin, ja miten mikropalveluiden tulee löytää ja keskustella muiden tarvittavien mikropalveluiden kanssa. Saimme esityksestä hyviä vinkkejä jakamisen toteuttamiseen. Yksi vaihtoehto on tehdä ns. “Sidecar proxy”, mikä tarkoittaa mikropalvelun omaa proxya, joka tietää missä tarvittavat mikropalvelut sijatsevat. Näin mikropalveluiden välinen keskustelu sujuu jouhevasti. Toinen vaihtoehto on käyttää HashiCorpin omaa Consul-työkalua.

Seuraava konferenssipäivä alkoi hiukan sekalaisemmilla DevOps-aihealueilla, ja iltapäivällä siirryttiin HumanOpsiin. Sokerina pohjalla oli mielenkiintoinen luento kompleksisten ongelmien ratkaisuista, mistä saimme pari hyvää jippoa työkalupakkiin vastaavien ongelmien ratkaisuun tulevaisuudessa.

Kokonaisuudessaan olimme tyytyväisiä konferenssin rakenteeseen: ensin käytiin läpi perusasiat ja sen jälkeen mentiin syvemmälle asiaan. Vaikka perusasiat ovatkin jo hallussa, opimme kuitenkin uutta. Moni luento keskittyi tiettyyn työkaluun, josta meillä ei ollut niinkään kokemusta, mutta vastaavat konseptit tai ongelmat (esim. networking, monitorointi) ovat tarpeeksi geneerisiä ymmärrettäväksi.

Teemu ja Juho