September 2022 White Paper
Kubernetes and Istio are powerful but hard to handle:
This is where Aspen App Intelligence Platform comes in
Brian Jimerson, Technical Product Manager, Aspen Mesh
You have Kubernetes and Istio, and you understand the power of these platforms. Kubernetes allows you to operate your applications at cloud scale, and Istio gives your applications rich traffic management and security capabilities. There are still a lot of things that Kubernetes and Istio don’t do well, leaving you to come up with workarounds on your own.
At Aspen Mesh we have talked to many companies that are far along in their cloud-native journey. As we listen to these early cloud native adopters inevitably the discussion turns to how Kubernetes and Istio are core to their platform yet hard for their development teams to access.
These open source technologies are not turnkey solutions, and DevOps leaders talk about needing to build their own solution to access Istio data and functionality because the tools available are hard to implement.
Today it’s virtually impossible for an app owner to take advantage of Istio to meet their SLO’s without becoming Istio experts.
As we hear about what’s keeping modern app teams from achieving their goals, there are common problems we mentioned over and over. We will share how we are tackling these big problems today.
The Biggest Kubernetes and Istio Problems for High-Performing Teams
Autoscaling in Kubernetes isn’t very useful.
You can only scale on container-based thresholds like CPU and memory usage, or create your own custom metrics adapter. The scaling algorithm in Kubernetes doesn’t really fit for a production workload. By the time Kubernetes scales to enough replicas to handle the load, it is often too late, leaving you with degraded performance or an outage.
Using Istio for continuous delivery sounds great — but is risky in practice.
Using Istio to perform canary-style and progressive rollouts is a powerful way to make continuous delivery of your applications possible. However, with Istio, the decision to move traffic between versions is based on basic metrics – like error rates and latency.
Today there are many continuous delivery tools that support canary deployments, progressive delivery and A/B testing by leveraging the routing functionality of your service mesh. However, these tools only monitor HTTP indicators to determine if another instance of your new version should be deployed. They don’t consider real behavior and usage of your application. Istio and your CD tool of choice aren’t able to make migration decisions based on meaningful data, like your application’s behavior.
Invaluable Kubernetes and Istio data and functionality is not accessible to your App Dev Team.
Software development has changed dramatically in the last several years. New development methods and programs are necessary to realize the value of cloud. The move to a modern app environment introduces a whole host of challenges and complexity that were not present before.
Developers increasingly own the whole lifecycle of their application; their responsibilities extend beyond what was traditionally expected of them. Their ability to see what’s really happening that is impacting an application’s behavior is limited. Application owners’ error budgets and SLOs aren’t being met. All of this means growing frustration for cloud operators and developers who are unable to manage their workloads at scale and meet their SLOs.
You’re not confident you know what’s going on in all your clusters.
Most people have multiple Kubernetes clusters with Istio configured in a multi-cluster topology. However, it is difficult to manage multiple clusters, see what’s going in and out of each of those clusters, and replicate configuration across these clusters. Trying to correlate data between multiple tabs in your APM tool is tedious and prone to errors.
The Aspen App Intelligence Platform
We understand the challenges and complexities of cloud-native transformation.
Aspen Mesh has years of experience helping customers adopt, operationalize, and support Istio. Our heritage is shaping early service mesh code and pioneering mesh implementation in large enterprises. We have helped one of the world’s largest, most complex microservices environments achieve unprecedented app performance.
We believe operationalizing Kubernetes and Istio is crucial for cloud-native transformation – and few understand the intricacies of these technologies better than us. The Aspen App Intelligence Platform is a cloud-based solution we have created to allow app teams to harness the power and data of Kubernetes, service mesh, and our machine learning models – making it possible to unlock new capabilities for app owners. Our goal is to enable developers to move faster and safer to accelerate your cloud-native journey.
If you’re part of a high-performing team that’s driving toward flawless app performance at scale and you want more from your cloud native environment, we want to hear from you. We are working on big problems in new ways – from predictive autoscaling and continuous rollouts to empowering dev teams with the ability to build SLO assurance into their apps.
You can join our Early Access user program to receive an account at no charge for a year, and full access to all of our solutions. This is an opportunity to share what you’re striving to achieve and work with us to build incredible solutions.
How we are shaping our Predictive Autoscaling Solution
Kubernetes autoscaling, in the form of Horizontal Pod Autoscalers, provides the ability for Kubernetes to add or remove replicas to your deployment if certain criteria are met. These criteria are specified as thresholds for simple container metrics like memory and CPU utilization. However, there are many other indicators of how your application should be scaled beyond memory and CPU, for example HTTP or application-emitted metrics.
Kubernetes HPA incrementally adds replicas. After each replica is added, Kubernetes waits for a period of time, re-measures the threshold, and adds another replica if the threshold is still crossed. It continues this process until the metric falls below the threshold. Often, spikes in traffic or utilization are immediate and sustained; the Kubernetes method of autoscaling often doesn’t add enough replicas in time to address the spike.
Due to these limitations, many people choose to overprovision their clusters and workloads because they realize Kubernetes HPA doesn’t work very well. Our Predictive Autoscaling solution addresses these issues and makes autoscaling an essential part of your applications’ lifecycle.
Using machine learning models, our platform learns your application’s behavior over time. When Predictive Autoscaling predicts that a scaling event is approaching, it will either alert you to the recommended number of replicas or automatically scale your deployment to the right number of replicas.
Our Progressive Rollout Solution eliminates manual testing.
Continuous Delivery leverages the power of Kubernetes and your service mesh to incrementally add new versions of your application without any downtime. This helps deliver on the CD promise of quickly deploying new versions or patches at any time — rather than scheduling maintenance windows and ‘batching’ updates – without any interruption in performance.
Today the lack of insight into what optimal app behavior looks like and what other factors drive behavior prevents application owners from feeling confident the new version is fit to be fully deployed. You must resort to endless manual testing and intervention to verify the new version is ready. Fear keeps teams from fully embracing a continuous delivery strategy — and squanders a key cloud-native platform value proposition.
Aspen Mesh’s intelligent Progressive Rollout solution learns the behavior of your application through machine learning models. With this knowledge, it provides feedback to your CD tool about your application’s behavior – is it correct and therefore the deployment should be promoted, or should it be rolled back. You now have more confidence in your applications’ worthiness to be deployed without manual intervention. Now you are taking full advantage of how a cloud-native platform enables seamless continuous delivery.
App owners can access Kubernetes and Istio with no learning curve.
The Aspen App Intelligence Platform includes app 360º App Performance Insight for App Owners. This gives app owners an unprecedented view of their applications. Traditional APM dashboards are built by and optimized for infrastructure owners – not application owners. Today an app owner is forced to switch between multiple browser tabs to find meaningful data, and then they must somehow correlate that data. Aspen Mesh puts the information you need to manage your applications and SLOs at your fingertips – instead of a bunch of line charts and dashboards that don’t offer any meaningful and actionable information.
Aspen Mesh also makes recommendations to optimize your workloads. You shouldn’t have to wait until performance degrades and SLOs fail to tune your applications for optimal performance. Using telemetry data from Kubernetes and your service mesh, Aspen Mesh proactively gives recommendations for tuning before there is an issue.
Manage multiple clusters from one clear data view.
Often people have multiple Kubernetes clusters for their workloads and use Istio’s multi-cluster topologies to form a single logical service mesh across clusters. This is a very powerful technique that can address many needs, such as failover and high availability, locality-based load balancing, and cloud cost optimization.
Regardless of the reasons for having a multi-cluster configuration, it introduces a whole set of new challenges and complexity, like managing SLOs across clusters, visualizing and verifying correct traffic flow between clusters, and managing configuration parity between clusters. And as more clusters are added these challenges and complexities grow exponentially.
Our multi-cluster management solution gives a 360º view of your applications across all your clusters. You have the ability to visualize, manage, and audit your workloads and data wherever they are running without having to jump between browser tabs and command line tools. Within a single view, you can visualize and validate traffic between clusters, to which cluster traffic is being sent, performance characteristics across clusters, and much more.
What’s next? Lets have a conversation, you can email me or schedule a time to talk.
I recommend you request access to our Early Access program, there’s no obligation and you get full access to the Aspen App Intelligence Platform for a year at no charge for your entire team. Learn more about Early Access and the 360° Performance Insight for App Owners that is available on Day One. Better yet, lets meet and we’ll share what are working on with you – and you can tell us what you want to achieve. Contact Us.
Available now – Get unlimited access to all new features as they are released.
Create an Early Access Account
Set up your account in minutes and get unlimited access to the Aspen Mesh Platform.
Become a Lighthouse User
We’re looking for modern app teams that demand higher application performance Share your biggest problems and help us shape features of our SaaS platform.
Leverage the power of the technologies in their microservices environment.
Get in Touch
We would like to hear from you.