Microsoft launched two interesting, practical, and more importantly, open-source projects. The first one is Dapr, which is an event-driven runtime meant to simplify building microservices, and the second one is Open Application Model (OAM), a specification that allows developers to define the resources their applications need to run on Kubernetes clusters. The OAM specification appears to be developed in cooperation with Alibaba Cloud.
While the new open-source projects appear independent of each other, they are meant to improve the application creation process on a complex Kubernetes ecosystem and improve collaboration between developers and operations team, noted Microsoft Azure CTO Mark Russinovich, “OAM very much solves a problem that a lot of developers and ops teams are facing every day. If you take a look just at the Kubernetes ecosystem, Kubernetes has no concept of an application. It’s got the concept of deployment and services, but nothing that coherently connects these things together into one unit and deployment lifecycle that a developer would understand in the way they look at their applications.”
Dapr Runtime Will Make It Easy For Developers To Build Microservices Quicker:
Microsoft describes Dapr as an “open-source, portable, event-driven runtime that makes it easy for developers to build resilient, microservice stateless and stateful applications that run on the cloud and edge.” What this essentially means is that Dapr is intended to simplify the creation of distributed, microservice-based applications.
Announcing Dapr: an #opensource project that enables all developers, using any language and any framework, to easily build portable microservices applications.
— Open at Microsoft (@OpenAtMicrosoft) October 16, 2019
Majority of the issues that developers often run into, revolve around event-driven needs. They need to manage things like events and responding to triggers. Communication between multiple microservices currently mandates the use of pub/sub. Moreover, developers have to do “Service Discovery” as well as “State Management”. These two instances involve several parameters. Moreover, depending on whether it’s a stateless or stateful app, developers have to work with different SDKs and programming models.
Microsoft Dapr appears to be a revolutionary new approach to address the issues that developers currently face. Dapr ditches a Software Development Kit or SDK, and instead, it delivers its services through a local HTTP or gRPC endpoint. This method effectively keeps the application code separate from the Dapr code. Essentially, Dapr remains completely independent of the language developers have used. The Dapr runtime is a simplified methodology that provides all the necessary and relevant building blocks. Needless to add, this encodes best practices for building distributed services.
Microsoft OAM Is A First-Class Application Concept In A Kubernetes Cluster:
OAM is essentially a YAML file. It can be put in a service catalog or marketplace and deployed from there. However, the best aspect of the OAM is that developers can simply hand over the specifications to the operations team, and the latter can then deploy the same without consulting or referring back to the developer. Microsoft claims Kubernetes, in its present iteration, is rather complicated for developers who wish to work in the enterprise segment.
Microsoft launches two new open source projects for developers — OAM and Daprhttps://t.co/3VwlDKujnI
Continuing its embracing of open source, Microsoft has today announced two new open… pic.twitter.com/c8LbTRIdk5
— plugilo (@plugilo) October 16, 2019
Kubernetes is indeed a rather complex infrastructure-oriented and focused platform. Developers, on the other hand, need to focus on the app. Usually, enterprises are quite protective about their Kubernetes and do not let developers peek inside or use the same as a reference. OAM essentially acts as a bridge as well as gap-filler for developers and the operations team.
Microsoft’s OAM appears to be developed in cooperation with Alibaba Cloud, the Chinese eCommerce giant’s own cloud-hosting and service arm. Both the tech giants have reportedly worked together on quite a few projects in the past, and OAM is reportedly a result of the collaboration. OAM was apparently developed because both the companies encountered the same problems when they talked to their customers and internal teams. It appears the collaboration between Microsoft and Alibaba Cloud could soon launch a unified specification into an open-source foundation. In fact, reports indicate Alibaba Cloud could soon launch a managed service based on OAM, and Microsoft could follow, possibly depending on the pace of adoption of the just-launched Microsoft OAM specification.