Blog

Konttien orkestrointi Docker Datacenterilla

APR 21, 2016

On aika kerrata hieman DEVOPS 2016 -tapahtuman keynote-puheenvuoroa, jonka Markus Suonto piti aiheesta konttien orkestrointi Docker Datacenterilla.

Eficode is the leading DevOps company in Europe, driving and building the future of software development across 10 countries, with 500+ experts in DevOps and sustainable software development. Our Eficode ROOT managed DevOps platform provides centralized access control and real-time visibility of project status, quality, and performance that integrates with 50+ of your preferred tools, including the Atlassian Stack and open-source systems like Jenkins and Kubernetes.

Hei, olen Richard Weber, DevOps-konsultti täällä Eficodella. Osallistuin Devops2016-konferenssiin, ja kirjoitan tänään Markus Suonnon Docker Datacenteria käsitelleestä esityksestä.

Esitys alkoi järjestelmän yleiskatsauksella: mistä komponenteista se koostuu ja mitä ne tekevät. Sen jälkeen hän näytti lyhyen demon siitä, miten järjestelmää käytetään käytännössä ohjelmiston kehittämiseen ja sen käyttöönottoon ympäristössä.

Järjestelmä koostuu kahdesta pääkomponentista: Docker Universal Control Planesta, joka hallitsee sovellusten ajoon käytettävää laskentaympäristöä, sekä Docker Trusted Registrystä, johon Docker-imaget tallennetaan. Se on Dockerin kaupallinen tuote on-premises Docker Registryn ajamiseen ja imagejen tallentamiseen. SaaS-vastine on Docker Hub.

Docker Universal Control Plane (UCP) on rakennettu avoimen lähdekoodin komponenttien, Docker Enginen, Docker Composen ja klusterointijärjestelmä Docker Swarmin, päälle. Se tuo näihin selainpohjaisen graafisen käyttöliittymän, jonka avulla saat yleiskuvan kaikesta klusterissasi käynnissä olevasta, sekä mahdollisuuden hallita käyttäjien käyttöoikeuksia. Markus keskittyi käyttöoikeuksien hallintaan, jota hän piti hyvänä mutta vielä puutteellisena. Ajatuksena on antaa käyttäjille ja tiimeille tunnisteita, joihin heillä on käyttöoikeus. Järjestelmä on teoriassa erittäin hyvä, sillä se mahdollistaa tarkasti määritellyn hallinnan siihen, mihin eri käyttäjillä on pääsy. Olen kuitenkin samaa mieltä puutteista. Nämä tunnisteet ovat käytettävissä vain containereille. Muut resurssit, kuten verkot ja volyymit, eivät vielä tue niitä. Kun tunnisteet ovat käytettävissä myös muille resursseille, järjestelmä on huomattavasti kypsempi.

Docker Trusted Registry on kypsempi tuote, ja koska nämä komponentit voidaan ajaa erikseen, Registryä varten ei tarvita UCP:tä. Registryssä on käyttäjien käyttöoikeuksien hallinta, mutta se ei perustu tunnisteisiin. Siinä on tiimejä ja käyttäjiä, ja molemmat voivat omistaa repositoryja (imageja). Jos siis tarvitset on-premises Docker Registryn etkä halua ottaa käyttöön jotakin avoimen lähdekoodin vaihtoehdoista, tai haluat mahdollisuuden lähettää tukipyynnön, tämä voi olla erinomainen työkalu sinulle.

Seuraavaksi hän demonstroi, miten kehittäjänä käytät Docker Composea määrittämään koko sovelluksesi tarvitseman Docker-pohjaisen kokonaisuuden ja miten tiedoston avulla kokonaisuus voidaan käynnistää nopeasti paikallisesti omalla kannettavalla tietokoneella. Tämän jälkeen hän puski sovelluksestaan rakentamansa imaget Docker Trusted Registryyn. Sitten hän näytti, miten sovellus otettiin käyttöön klusterissa samoilla Docker Compose -komennoilla. Ainoa muutos oli UCP:stä ladattu bundle, joka sisälsi sertifikaatit ja konfiguraatiotiedostot. Yksi tiedostoista oli yksinkertainen shell-skripti, joka vei muutaman ympäristömuuttujan Docker-clientin käyttöön, jotta se tietää, mihin sen tulee kohdistaa komentonsa.

Kaiken kaikkiaan Docker Datacenter -paketti voi olla erinomainen niille, joille Docker-komennot ja -ympäristöt ovat tuttuja, sillä järjestelmää hallitaan samoilla komennoilla. Kun UCP:n käyttöoikeusjärjestelmä kypsyy, uskon tämän olevan vahva kilpailija Docker-orkestroinnin markkinoilla.

Jos et päässyt tapahtumaan mutta olet kiinnostunut tästä esityksestä, voit katsoa sen täältä (Markus Suonto, Eficode):

https://www.youtube.com/watch?v=2HmI3MocKJk&index=9&list=PLvo3403u1dyiNuttzUKaPThO3UXBBug3w

Kiitos, kun luit!

P.S. Docker Engine -versiosta 1.11 alkaen tunnisteita tuetaan myös verkoille ja volyymeille, joten käyttöoikeusjärjestelmän puutteet saattavat korjaantua ennemmin kuin myöhemmin.

  • DevOps
  • Cloud

Subscribe to our newsletter