Microservices are a hell of a drug.
Rapid development. Easier testing and deployment. Applications that are simpler to change and maintain.
It’s easy to understand why microservice-based applications are becoming more and more common. Through microservice architectures, enterprises are realizing:
- Improved scalability
- Increased development velocity
- Easier debugging
- Better alignment between development and user requirements
As companies build or convert to more modern applications, they are leveraging microservices to drive differentiation and market leadership. As a side effect, they realize that they are increasing complexity and decentralizing ownership and control. These new challenges require new solutions to effectively monitor, manage and control microservice-based applications at runtime.
Kubernetes has become the defacto method for enterprises to orchestrate containers. Kubernetes simplifies the work of technical teams by automating application processes and service deployments that were previously performed manually. Kubernetes is a superb tool for managing containerized application deployment challenges but leaves some runtime challenges on the table.
That’s where service mesh comes in. A service mesh like Aspen Mesh adds observability, security and policy capabilities to Kubernetes. A service mesh helps to ensure resiliency and uptime – it provides solutions that enable engineering teams to more effectively monitor, control and secure the modern application at runtime. Companies are adopting service mesh as a way to enhance Kubernetes, as it provides a toolbox of features that address various microservices challenges that modern enterprises are facing.
Thoughts on the state of microservices from OSCON
Having attended OSCON last week, it was interesting to have discussions with people spread across the microservices, Kubernetes and service mesh adoption curves. While it was clear that almost everyone is at least considering microservices, many are still waiting to see their peers implement before deciding on their own path forward. An interesting takeaway was that more and more organizations are looking to microservices for brownfield deployments, whereas even a couple of years ago almost everyone only considered building microservices architectures for greenfield. The conversations around brownfield signaled to me that as microservices technology and tooling continues to evolve, it is more feasible for non-unicorn companies to effectively and efficiently decompose the monolith into microservices.
Another observation is that Kubernetes use is starting to catch up to the hype. The decision to use Kubernetes for container orchestration was nearly unanimous among the OSCON attendees I spoke with. They were in various phases of implementation with some still just running POCs to evaluate the best use cases, but many conversations were centered on how companies are running Kubernetes in production for mission critical applications.
Among those humming along with Kubernetes, many were interested in service mesh as a way to extend or enhance what they are getting from Kubernetes. The top three reasons people said they want to implement service mesh were:
- Observability – to better understand the behavior of Kubernetes clusters
- mTLS – to add cluster-wide service encryption
- Distributed Tracing – to simplify debugging and speed up RCA
Gauging the cloud-native infrastructure space after OSCON, there is no doubt that there is still more exploration and evaluation of tools like Kubernetes and Istio, but the gap is definitely closing. Companies are closely watching the leaders in the space to see how they are implementing and what benefits and challenges they are facing. As more organizations successfully adopt these new technologies, it’s becoming obvious that while there is a skills gap and new complexity that must be accounted for, the outcomes around increased velocity, better resiliency and improved customer experience mandates that many organizations actively map their own path with microservices. This will help to ensure that they are not left behind by the market leaders in their space.