A deep dive into Anthos Service Mesh
The world of modern software moves quickly. Containers and Kubernetes are major components of modern infrastructure services. Anthos, Google Cloud’s application modernisation platform, let’s you build, deploy and manage applications in a secure and consistent manner on the infrastructure of your choice. Anthos allows you to modernize existing applications running on VM’s while deploying Cloud-native apps on containers in a hybrid / multi-Cloud environment.
In this article we take a deep-dive into how a specific part of Anthos works; Anthos Service Mesh. In order to provide a consistent development and operations experience across different deployments while reducing operational overhead and improving developer productivity, Anthos Service Mesh plays a big role. Anthos Service Mesh helps you to better run and manage loosely coupled microservices anywhere you need them. Anthos Service Mesh helps you integrate Google’s best practices and experience of managing planet scale workloads into your deployments by providing you with features which evolved from Site Reliability Engineering (SRE) methodologies developed within Google.
Anthos Service Mesh?
Anthos Service Mesh is a suite of tools that helps you monitor and manage a reliable service mesh on-premise or on Google Cloud, and that enables observability, security and traffic control between the microservices that compose your application. You can think of Anthos Service Mesh as the network infrastructure of microservices. A service mesh is an infrastructure layer that enables managed, observable, and secure communication across your services, letting you create robust enterprise applications made up of many microservices on your chosen infrastructure. Service meshes factor out all the common concerns of running a service such as monitoring, networking, and security, with consistent, powerful tools, making it easier for service developers and operators to focus on creating and managing great applications for their users.
A key benefit is the speed with which you can roll out new and upgraded products to your customers. Because of enhanced observability, Anthos Service Mesh helps you quickly find deployment issues hence supporting rapid deployment cycles. With Anthos Service Mesh, you can:
- Better understand what is happening with your services
- Set policies to control those services
- Secure the communication and traffic control between services
- No application changes or redeployments necessary
Better monitoring and measuring
Knowing what is happening with your infrastructure is essential. Anthos Service Mesh can do exactly this for you. It begins with monitoring, so that it is visible which services are communicating, how much traffic is being sent and response times and error rates. This simple baseline information can already lead to major improvements in your operations.
Once you have monitoring in place, you can use Anthos to implement SRE concepts such as service level objectives (SLOs). The SLOs are performance measures like 99% availability over a one week rolling window. Having alerts on those SLOs lets your staff catch issues before customers become aware of them. The alerts can be sent when SLOs are not being met which indicate that deployments should be frozen or slowed until stability and reliability are under control.
The amount of traffic in your mesh can be overwhelming. Anthos Service Mesh helps to achieve safer, more controlled release processes, as well as gain more control over how traffic flows between services. Its capabilities allow you to fine tune the traffic in your mesh. For example, you can use the built-in canary capabilities which enable you to route a small percentage of traffic to new versions before rolling them out to all users.
Google takes care of you
Anthos Service Mesh is based on the open-source Istio service mesh. Google, however, offers it as a managed service. Meaning: you get all the benefits of service mesh without having to worry about installing, upgrading or maintaining the underlying software. Included in the managed offering are service mesh dashboards that give you all of the monitoring and SLO capabilities above without having to commit to deploy and maintain it yourself.
The next step for Anthos Service Mesh is the addition of virtual machines. Google is working on making it easier to add virtual machines to the Anthos Service Mesh, and not just containers. Ultimately allowing you to use all the features as listed above on your VM-based workloads.