Header background

Dynatrace® Apps showcase: Akamas Kubernetes optimization

Akamas is an application optimization technology company and a Dynatrace partner. The Akamas software platform was built by performance engineering experts to redefine what organizations can achieve with AI-driven optimization, enabling enterprises and online businesses to deliver unprecedented cost savings, service performance, and resilience for Kubernetes-based applications.

An earlier blog post introduced how Akamas helps optimize Kubernetes clusters without “breaking the bank.” As one of the first Dynatrace partners, Akamas used its domain expertise and unique product capabilities to build a custom app on the Dynatrace platform. The app empowers platform engineering teams with insights into infrastructure health, FinOps, and security combined with alerting and automatic lifecycle management. In this way, the app reduces costs and improves the reliability and performance of all Kubernetes applications.

For example, the Akamas app optimized a Dynatrace-monitored Kubernetes environment, found 22 workloads with reliability issues and 53 workloads with sub-optimal performance, and identified potential savings of about $50,000 per month.

Insights into your Kubernetes environment

Leveraging Dynatrace observability data, Akamas analyzes all available Kubernetes workloads and identifies optimization opportunities such as cost reduction, reliability, and performance improvements.

As you can see in the screenshot below, you get a summary of all optimization opportunities identified in the environment. The table below lists all the individual Kubernetes workloads that can be optimized.

There is a cost reduction opportunity for the notification workload of $2,300 per month and other opportunities related to performance improvements and reliability issues due to misconfigured resource settings.

Overview of optimization opportunities and Kubernetes workloads
Figure 1: Overview of optimization opportunities and Kubernetes workloads

Optimize your workloads

Select Optimize next to the notification workload to open the Optimize workload page, which offers options for optimizing the workload. Akamas is a goal-driven optimization solution, which means you choose if you want to improve the application’s performance or lower the cost, which in Kubernetes translates to reducing the resource requirements of your containers for CPU, memory requests, and memory limits.

Goal-driven optimization of Kubernetes workloads.
Figure 2: Goal-driven optimization of Kubernetes workloads.

When you manually reduce your container’s resources to save costs, you risk impacting service performance and reliability. To avoid slowing down your apps or—even worse—harming SLOs, you can define constraints that need to be considered, such as response time or error rate. Once constraints are set, Akamas AI considers application-level performance signals so cost-reduction recommendations don’t impact your SLOs.

Before you can start optimizing, you need to define the scope. When you choose Container, Akamas tunes the Kubernetes CPU and memory limits. It also supports full stack optimization, which optimizes JVM parameters such as maximum heap size and garbage collection.

Stay in control: Monitor the optimization process

Returning to the overview, you can switch to the Optimizations tab, which summarizes all your running optimizations, including the optimization created in the previous step.

Overview of optimization opportunities
Figure 3: Overview of optimization opportunities

Select See details for any service to dive into more details about running optimization tasks. Besides showing a short summary, including optimization goals, constraints, and scope, you can dive into cost trends and the relevant SLOs.

Optimizing the Kubernetes workload cartservice
Figure 4: Optimizing the Kubernetes workload `cartservice`

In this example, despite the cost going down (from over $80 down to about $50), the application performance was not impacted and stayed well below the defined threshold of 340 milliseconds.

Apply configurations

Akamas can apply configurations automatically or suggest configurations that SRE teams can use for further manual improvements. In the example below, you can see the current CPU and memory limits and the new values suggested by Akamas: change the server.cpu_limit from 1,000 down to 982 millicores and reduce the server.memory_limit by 53 MB. Select the button in the top-right of the Pending Recommendation pane to reveal the kubectl command, which you can use to apply the suggested recommendations.

Additional recommendations for manual improvements
Figure 5: Additional recommendations for manual improvements

Summary

The Akamas app helps achieve three critical goals by optimizing Kubernetes application configurations, harnessing the power of artificial intelligence of the Akamas platform, and leveraging the capabilities of the Dynatrace platform:

  • Cost reduction: Identify opportunities to trim unnecessary expenses related to Kubernetes workloads. Imagine saving thousands of dollars each month by fine-tuning your resource allocations.
  • Reliability enhancement: Pinpoint reliability issues within your Kubernetes environment and ensure your applications run smoothly, minimizing downtime and improving overall system stability.
  • Performance optimization: Fine-tune your software stack configurations to maximize performance parameters, ensuring applications meet or exceed their service level objectives (SLOs).

This is a perfect example of how to easily build custom apps on top of observability data stored within Dynatrace and leverage its enterprise-grade platform. Utilize the power of the Dynatrace platform, with its easy-to-use building blocks, to address specific use cases based on your business requirements.

Interested in learning more?

Watch the recording of one of this year’s Perform breakout sessions, where Stefano Doni, CTO and Co-founder of Akamas, and Alois Mayr, Principal Product Manager at Dynatrace, gave a quick intro to how Dynatrace and Akamas work better together, introducing the new Dynatrace Kubernetes monitoring app and how Akamas helps optimize your Kubernetes environment.

Start building your own Dynatrace app to address the specific needs of your users:

Are you interested in learning more about Akamas and why Dynatrace and Akamas are better together? Have a look at the Dynatrace Hub, watch a video tour, or contact Akamas directly to book a demo and get more insights into how Akamas can optimize your Kubernetes environment.

Visit Dynatrace Developer to learn about the tools and technologies of Dynatrace AppEngine.