In de meeste organisaties is de cloud in meer of mindere mate ingeburgerd geraakt. Logisch, want dankzij de cloud kunnen organisaties veel flexibeler met hun it omgaan. Maar het kan nog veel flexibeler: met een DevOps-aanpak in de cruciale implementatiefase.
Internet is tegenwoordig overal. In je hand, in de auto en binnenkort op nog veel meer plekken. Gebruikers zijn ook overal, op iedere plek willen ze communiceren en ervaringen delen. De opkomst van mobile, social media en het internet of things heeft bij de gebruiker een hoog verwachtingspatroon gecreëerd. Simpele, gebruiksvriendelijke it verwachten ze ook van bedrijven en instellingen waarmee ze een relatie hebben – en dus van de it-afdelingen van die organisaties. Een it-organisatie kan het zich echt niet meer veroorloven om eindeloos te wachten alvorens het een nieuwe of een update van een toepassing op haar gebruikers loslaat. De verwende gebruiker heeft zijn heil dan allang elders gezocht.
Niet voor niets zijn steeds meer it-afdelingen overgestapt op Agile-ontwikkeltechnieken, waardoor applicaties niet zozeer worden ontwikkeld, maar voortdurend evolueren. De cloud biedt dan een enorme uitkomst, want via de cloud kunnen Iitafdelingen de infrastructuur laten mee-evolueren met hun applicaties.
Development en operations op één kussen
Onder druk van deze trends zien we de traditionele grens tussen ontwikkeling en productie steeds meer vervagen. En dat is maar goed ook, want hoeveel it-projecten zijn er niet vertraagd of zelfs stukgelopen op miscommunicatie tussen die twee werelden? Hoe vaak gebeurde het niet dat een applicatie in de productieomgeving zich anders gedroeg dan in de ontwikkel-, test- en acceptieomgeving?
In plaats van door te gaan met vingerwijzen, kwamen ontwikkelaars en systeembeheerders tot het inzicht dat zij tot in het extreme moesten samenwerken. Daar ontstond de naam ‘DevOps’ uit: development en operations die samen op één kussen slapen. Hoe extreem moet die samenwerking zijn? Zeer extreem, want DevOps komt neer op verregaande automatisering en standaardisatie van processen – en wel zo dat het proces waarmee een applicatie in de ontwikkelingsfase wordt uitgerold identiek is aan de manier waarop deze in de operationele omgeving wordt uitgerold. Bovendien krijgen testen en accepteren zo extra waarde, want ook in die fasen wordt hetzelfde proces toegepast.
Het geheim heet automatisering
Het is niet moeilijk om te zien waar cloud en DevOps elkaar versterken: op het vlak van automatisering. Het configureren en aanvragen van cloudinfrastructuur gebeurt namelijk in hoge mate geautomatiseerd – als het manueel zou moeten gebeuren, zou het lang niet zo snel kunnen en was de cloud immers de cloud niet. En zie daar: automatisering is ook het basisprincipe achter DevOps.
Dus als it-afdelingen hun organisaties geautomatiseerd van infrastructuur kunnen voorzien én hun applicaties kunnen uitrollen met een geautomatiseerde DevOps-aanpak die daarop aansluit, dan slaan it-afdelingen twee vliegen in één klap. Als ook de test- en acceptatiecycli in hoge mate worden geautomatiseerd, kan er een situatie ontstaan waarin nieuwe functionaliteit continu op een hoog niveau kan worden opgeleverd.
Ook in hybride omgevingen
Deze gecombineerde aanpak is van nog groter belang in hybride omgevingen. Want lang niet elke organisatie is met een schone lei begonnen, volledig in de cloud. De meeste organisaties dragen een geschiedenis met zich mee; een groot deel van de primaire processen draait op systemen die in het eigen datacenter draaien, op applicaties die op de traditionele manier zijn ontwikkeld.
Ook voor de integratie van nieuwe cloudtoepassingen en de huidige omgeving is automatisering van groot belang – ook van de bestaande infrastructuur. Daarvoor zijn wel hulpmiddelen nodig die DevOps mogelijk maken in zowel pure cloudomgevingen als een hybride architectuur. Dat kan als die middelen worden geleverd als een service, zodat een ontwikkelteam meteen aan de slag kan en op een beheersbare manier applicaties kan uitrollen naar verschillende omgevingen tegelijk.
Ontwikkelplatform als service
Met een ontwikkelplatform as a service kunnen ontwikkelaars Agile-applicaties bouwen en onafhankelijk van de gekozen technologie hun applicaties uitrollen. Daarbij maakt het niet uit of zij hun eigen ontwikkelomgeving of een geïntegreerde omgeving gebruiken.
De platformen dienen daarnaast een grote catalogus aan api’s te bevatten die het snel bouwen van complexe toepassingen mogelijk maken, van mobile tot internet of things, van social media tot analytics. Tevens zijn virtualisatietechnieken toe te passen zoals containers (Docker) en virtual machines (Openstack). Maar dient ook gedacht te worden aan beveiligde integratiemogelijkheden die hybride cloudoplossingen mogelijk maken.
Eric Cattoir, cloud expert bij IBM Benelux
Auteur doet zijn best om aan te tonen dat devops en cloud elkaar versterken. Het zijn echter 2 onafhankelijke technieken. En hoe moeilijk is het nou om ff al dan niet automatisch een nieuw virtueel machientje unattended te installen op je on prem site ?
Aan het eind van het artikel wordt gewoon in 1 keer de hele zooi erbij betrokken : docker, social media, IoT 🙂
Toe maar..
Wat een onzin.
Felix, ja het zijn twee onafhankelijk technieken, maar wat is nu je punt? Het zijn technieken die elkaar versterken en daar ben ik het dus gewoon mee eens. Dit on-premises nabouwen is lastiger maar niet onmogelijk, maar vooral wat los er dan precies op?
Ik weet wel dat je vooral grappig wilt zijn, en kan me misschien een beetje inleven dat de manier waarop het gebracht wordt tegen je haren instrijken, maar het is geen verkeerd artikel.
Dus Felix “Meh!”
Moeilijk, maar ik zal nog explicieter zijn.
De auteur promoot samenwerking, communicatie, op 1 kussen slapen enzo, tussen ontwikkeling en beheer. Maar hij is natuurlijk cloudboer dus de verkoop van zijn ge-aaS gaat voor. Niet samenwerken maar uitbesteden dus.
Toch claimt hij devops en agile als iets wat specifiek cloud is.
Maar goed, je zit inmiddels zover in de wolken dat je het hebben van een eigen goeie infrastructuur “Cloud nabouwen” noemt.
Verrassend artikel.
Voor “cloud” is automatisering nodig, daar was ik nooit op gekomen.
Ten eerste, wat wordt hier onder cloud gerekend en ten tweede ben ik niet sinds 3 maanden in de ICT en vindt de toon en de inhoud een weinig ongenuanceerd en kinderlijk.
Dat DevOps en cloud elkaar kunnen versterken geloof ik maar in een artikel verwacht ik concrete voorbeelden en een minimum aan diepgang, die vindt ik hier niet.
Geen verkeerd artikel? Het is een geweldig artikel, goed geschreven en het loopt als een trein. Alles komt aan bod, de cloud, devops, mobile, social media en uiteraard het onvermijdelijke agile. Ik denk als de schrijver net zo kan praten kan als schrijven en hij doet zijn verhaal voor een zaal van CIO’s, CTO’s, beslissers en ander out-of-the-box denkers dat een ovationeel applaus zijn deel zijn. Een visonair, daar houden wij van in ICT land.
Ik dacht precies hetzelfde als wat Felix dacht: wat een onzin. Is dit een parodie of is dit een column van Spoelstra?
Het is passend binnen het ‘vakgebied’ wat ict is waar we hobbelen van trend naar trend. Begrippen waar zeker iets zinnigs (devops) of iets concreet technisch (cloud) aan ten grondslag ligt maar die al snel een volledig eigen dynamiek krijgen zodat je eigenlijk als simpele lezer niet meer weet waar het over gaat. De wens is de vader van de gedachte en alle wensen worden op deze begrippen geprojecteerd. Zo leven we nog lang en gelukkig in een volledig geautomatiseerd ict landschap waarin iedereen onbaatzuchtig samenwerkt in het zelfsturende team waarin software kortcyclisch wordt opgeleverd, flexibel naar de wensen van de business inspelend op de wensen van de klant en vooral de concurrentie voor te zijn.
Van IBM zou je toch meer verwachten.
Zou toch nog even terug willen gaan naar de kern van deze discussie…… Denk namelijk dat de constatering van Eric wel degelijk valide en interessant is. Kern van zijn betoog is dat Cloud en DevOps (en eigenlijk ook Agile!) gebaseerd zijn op volledige automatisering. Een applicatie inclusief infrastructuur, middleware, beheerssoftware etc kan met 1 druk op de knop op een betrouwbare wijze worden uitgerold, aanpast of worden teruggetrokken. Zonder die volledige automatisering heb je geen Cloud en ook niet de kort cyclische ontwikkeling waarop Agile en DevOps (gedeeltelijk) op gebaseerd zijn.
Als een organisatie dit echt voor elkaar weet te krijgen, is dat zeker een groot goed met vele voordelen zoals lagere kosten, hogere kwaliteit, makkelijker oplossen van fouten etc. Maar dat voor elkaar krijgen is niet zo simpel natuurlijk. Lees Continuous Delivery van Jez Humble. Kleine organisaties – of organisaties met een eenduidig product zoals Netflix – lukt dat. Voor middelgrote en grote organisaties met vele verschillende applicaties ligt dit echter veel complexer om diverse redenen.
Maar dat betekent niet dat de gedachte fout is of dat je alleen maar cynisch kan zijn over het resultaat. Juist het success in kleinere omgevingen bewijst wel degelijk dat dit meer is dan een zoveelste trend. Vooral ook omdat common sense aangeeft dat volledig automatisering echt grote voordelen kan opleveren. We gaan onherroepelijk die kant op!