Microsoft Azure biedt applicatieontwikkelaars hulp

In de huidige digitale transformatie ligt de nadruk op het snel opleveren van applicaties. Medewerkers willen nieuwe digitale mogelijkheden het liefst gisteren in gebruik nemen.

Microsoft Azure en Vita Privata biedt applicatieontwikkelaars hulp. 5 voorbeelden van tools die de time-to-market van next-generation applicaties aanzienlijk verkorten.

Azure Kubernetes Service
Containers zijn enorm populair, ook onder ontwikkelaars. Een container bestaat simpel gezegd uit een volledige runtime-omgeving: een applicatie, plus alle afhankelijkheden, bibliotheken, binaries en configuratiebestanden. En dat allemaal gebundeld tot één pakketje dat je zonder problemen kunt verplaatsen, bijvoorbeeld naar een ander cloudplatform.

Deze aanpak biedt ontwikkelaars meerdere voordelen. Zo beschikken ze hiermee over een gecontroleerde omgeving voor een snelle en eenvoudige ontwikkeling en implementatie van applicaties. Nieuwe functies en toepassingen zijn snel in gebruik te nemen. Een ander voordeel van containers is de hoge mate van voorspelbaarheid. Waar de container ook draait, de software zal zich niet anders gedragen.
Ontwikkelaars kunnen op het Azure-platform al jaren gebruikmaken van containertechnologie. Momenteel zet Microsoft vooral in op zijn Azure Kubernetes Service(AKS) voor het ontwikkelen, uitrollen en beheren van Kubernetes-containers. Daarnaast biedt Microsoft de Azure Container Service (ACS), maar daar gaat op 31 januari 2020 de stekker uit. Gebruikers van ACS wordt aangeraden om zo snel mogelijk de overstap te maken naar AKS.

Azure Dev Spaces
Wat als een applicatie problemen vertoont? Debugging betekent dan vaak het inrichten van een dedicated testomgeving waarmee veel kostbare tijd verloren gaat. Met Azure Dev Spaces – primair bedoeld als aanvulling op AKS en voorlopig als preview beschikbaar – pakt Microsoft de zaken iets anders aan.
Met Dev Spaces is het uitrollen, testen en debuggen van een applicatie een kwestie van het aansluiten van de eigen integrated development environment (IDE) op een AKS-cluster dat Dev Spaces ondersteunt. Die IDE kan bijvoorbeeld Visual Studio zijn op een Mac, Windows- of Linux-machine. De lokaal bewerkte code wordt via een SSH-tunnel gesynchroniseerd met de desbetreffende AKS-container. Zonder lokaal tooling te installeren voor bijvoorbeeld Kubernetes.

Azure Functions
Iedere applicatie moet uiteindelijk landen op een fysieke of virtuele machine met voldoende capaciteit. Dit betekende in het verleden dat een ontwikkelaar na moest denken over de onderliggende IT-infrastructuur. Die wordt in de cloud echter aan het zicht onttrokken. Vaak is niet eens duidelijk waar een applicatie ‘landt’.
Met Azure Functions heeft Microsoft de ontwikkeling van applicaties ‘serverless’ gemaakt. Het idee achter serverless computing of Function-as-a-Service is dat een ontwikkelaar de code aanmaakt en uploadt en aangeeft wanneer de cloudprovider de code moet uitvoeren. Zodra zich een trigger of gebeurtenis voordoet, is het de verantwoordelijkheid van de cloudaanbieder om de code in een geschikte uitvoeringsomgeving te laden, de code uit te voeren en vervolgens de computerresources vrij te geven.
Ook bij deze serverloze aanpak zijn servers natuurlijk nog altijd nodig, maar daar heeft de ontwikkelaar geen omkijken meer naar.

Azure DevOps
Snelle en foutloze ontwikkeling van nieuwe software vraagt een hechte samenwerking tussen development en operations. Het is de kerngedachte achter DevOps. Microsoft bevordert die samenwerking met Azure DevOps. Dit is de opvolger van Visual Studio Team Services.
Azure DevOps biedt ontwikkelaars verschillende tools, zoals Azure Pipelines om code te bouwen in populaire talen, deze te testen en vervolgens uit te rollen naar elk gewenst platform en cloud. Andere voorbeelden zijn Azure Boards voor het plannen, bijhouden en bespreken van werkzaamheden en Azure Repos voor codereviews.

Azure Service Fabric
Een nieuwe trend in softwareontwikkelland luistert naar de naam ‘microservice’. Hierbij wordt een grote, ‘monolitische’ applicatie opgeknipt in meerdere kleine applicatie die met elkaar praten en samen dezelfde functionaliteit leveren. Deze aanpak zou onder andere de time-to-market van nieuwe applicaties verkorten, de performance verbeteren en het onderhoud efficiënter maken. De verschillende onderdelen van de totale toepassing zijn onafhankelijk van elkaar bij te werken.
Microsoft ondersteunt de ontwikkeling van microservices met Azure Service Fabric en de volledig beheerde Azure Service Fabric Mesh.

Hiermee biedt de cloudprovider een Platform-as-a-Service voor het bouwen van zeer schaalbare cloudapplicaties die zijn opgebouwd uit microservices. Een op microservices gebaseerde clouddienst kan in het begin gebruikmaken van slechts enkele machines en opschalen naar duizenden. Service Fabric helpt de ontwikkelaar bij de orchestratie van al die microservices.
Dat dit platform werkt, heeft Microsoft in de praktijk bewezen. Onder andere Skype for Business en de kerninfrastructuur van Azure zelf zijn opgebouwd met behulp van Service Fabric.