Transformational cloud technology developments you can’t ignore
The rapid evolution of cloud development technologies is enabling enterprises to deploy services more reliably, scale them, and change them more rapidly. At the same time, failure to keep up with this evolution can rapidly lead to ending up with a brittle cloud implementation. In this article, John Mathon talks about the transformational cloud technology developments enterprises cannot afford to ignore.
As the tremendous advantages of cloud development become widely recognized, most enterprises are seeking to combine the way they develop for the cloud and the enterprise. However, with cloud development practices and tools evolving rapidly, it is hard for most organizations to keep up. With that in mind, here are five transformational cloud technology developments enterprises cannot afford to ignore.
Microservices’ move to Kubernetes
Microservices are becoming pervasive; everybody is either deploying this way or planning to do so. And as more organizations take a pure Kubernetes approach to cloud development, it is becoming the “operating system” of microservices. Kubernetes not only starts containers and provides basic connectivity for enabling microservices to work together; it is non-opinionated and allows enterprises to use different tools to flush out the pieces it doesn’t handle. One important note: since a primary benefit of microservices is fast spin up and spin down, local storage is not a desirable stateful storage area. Instead, organizations should combine high-performance network storage with microservices.
Service mesh integration
A recent important evolution of cloud microservices development involves using tools called service meshes. A service mesh is a proxy between microservices that helps with networking issues and also provides a number of other features that explain what is going on in your service or application. Using a service mesh is similar to a messaging platform integration tool since some aspects could allow easy integration of new services and service-level enhancement, enabling organizations to make some services more robust and fault tolerant. Several companies are promoting this approach. Among them are Istio and LinkerD, which has introduced a simplified version called Conduit.
SEE ALSO: Building a better DevOps-enabled cloud
DevOps’ evolution to GitOps
Since microservices can populate dozens to hundreds of containers, GitOps or “infrastructure as code” is rapidly emerging as the standard approach for knowing where microservices are and how they got there, ensuring enterprises can operate more consistently. GitOps is an evolution of DevOps, but it is not a change in the basic idea of DevOps. Organizations can continue to use many of their DevOps tools, such as Chef or Helm. The difference is that everything is stored in a Git repository and organized, and enterprises can operate with it just like they do with the code for a service or application.
A big advancement in the container approach was introduced by the introduction of serverless computing, which makes it possible to specify certain actions to be performed based on an event. The principal advantage of serverless is that organizations are only charged for the time the function is executed; and because there is no need dedicate a reserved instance of some node, serverless computing can help cut costs by up to 95%. Serverless is not right for all use cases and tends to be more beneficial for more marginally used functions that don’t have low latency requirements. Still, targeted application of serverless functions can produce stunning results and shouldn’t be overlooked when trying to save costs.
Orchestration has many definitions. However, in cloud development, it typically refers to a process that oversees and deploys services as needed, compares differences between existing services, and integrates new technology into existing environments. And it is an important function for mitigating some of the integration and DevOps that often accompany cloud deployments. At varying times, Kubernetes, Chef and other technologies have been referred to as orchestration tools. In reality, enterprises will typically require multiple tools that need to be managed by a service mesh, the Kubernetes Helm package manager, or a DevOps automation platform.
The rapid evolution of cloud development technologies is enabling enterprises to deploy services more reliably, scale them, and change them more rapidly. At the same time, failure to keep up with this evolution can rapidly lead to ending up with a brittle cloud implementation. For this reason, imposing greater automation and automated testing is critical to ensuring that the changes an organization makes over time won’t break anything. In doing so, enterprises will be well positioned to capitalize on the advantages of cloud development technologies to increase quality and reduce costs over time.