Opens in a new tab
vmblog logo 2024 wht (updated)

Three tips to help DevOps teams master microservices and containers

Share: 

David Marshall | Published: October 6, 2021

By Saif Gunja, Dynatrace

DevOps teams have faced pressure to accelerate digital transformation for years. However, in the last 18 months, this pressure to transform has swelled. Organizations are increasingly building their digital experiences using cloud-native technologies to provide the flexibility they need to adapt to rapidly changing market trends and customer needs. Indeed, according to our research, 86% of organizations are using technologies such as microservices, containers, and Kubernetes today. However, while these technologies enable digital agility, they can create blind spots.

The problem with blind spots

The sheer scale, complexity, and frequency of change in cloud-native environments has put greater pressure on organizations to not only deliver faster innovation but to also ensure frictionless user experiences. For DevOps teams, that pressure has elevated observability to become more important than ever, as they cannot manage and optimize what they cannot see into.

Similarly, blind spots form because containers and microservices are voluminous and dynamic, spinning up or out in milliseconds. Traditional monitoring tools and approaches simply can’t keep up. Even with more advanced observability solutions, it can be difficult to achieve the same depth of insight into all layers of a containerized, Kubernetes-orchestrated infrastructure, including every container, pod, node, and cluster.

To tackle these challenges, DevOps teams should consider the following three tips for enhancing end-to-end observability across their cloud-native environments.

1) Implement a single observability data model

Most organizations run their applications, microservices, and containers in multicloud environments, which usually results in DevOps teams using multiple monitoring tools to manage each environment and data source. This can create silos that separate teams, or it can make it difficult to retain rich context and meaning between data sources.

To overcome this, DevOps teams should look to consolidate their observability data – including metrics, logs, traces, as well as data from user experiences and the latest open-source standards – into a single data model. This improves consistency in the way data is captured and structured, which fuels AI engines with the rich context needed to make the right decisions in real time.

2) Harness the power of advanced AIOps

AIOps can help DevOps teams master their dynamic microservices and containerized environments. It can create an intelligent, more automated replacement for legacy monitoring tools, which produce high rates of false positives and require too much manual effort. In fact, experts predict these benefits will become so important that the market for AIOps solutions is expected to grow at nearly 22% over the next five years, to reach $41 billion by 2026.

However, AIOps powered by machine learning is often slow and inflexible, taking weeks to train using pre-existing data. Solutions that rely on ML-backed AIOps don’t truly understand the underlying dependencies between applications, microservices, and containers, as their decisions are generated by alert data coming from other tools, rather than raw observability data. Also, because they are based on correlation, the precision reflects the quality of the underlying data instead of the true root cause. DevOps teams still have to validate the insights these AIOps tools provide, which eliminates the efficiencies they hoped to gain.

Instead, DevOps teams should leverage more sophisticated and accurate approaches built on deterministic AI. This approach relies on causation, not correlation. This means the AI can instantly understand dependencies across complex containerized microservices environments and provide timely and precise root-cause details down to the microservices layer or individual pods, nodes, and clusters. In addition, teams should ensure their AIOps is capable of ingesting raw observability data from any source – including open-source tracing formats such as OpenTelemetry.

A good, deterministic AI method goes beyond traditional AIOps and performs a step-by-step fault tree analysis that delivers precise, actionable results in real-time. DevOps teams can then use the precise answers and continual automation provided by their advanced, causal AIOps to optimize user experiences. They can also use it to automate remediation runbooks and begin to move towards self-healing applications rather than manual intervention.

3) Automate everything you can

Managing the volume, variety, and velocity of data produced by modern cloud environments is beyond human capacity. While many DevOps teams have automated CI/CD, there are still many manual tasks involved in monitoring, remediation, testing, and even release go/no-go decisions. There’s simply no time to configure and instrument apps, or script and source data. Efforts to do so end up piecemeal, leaving multiple blind spots and wasting countless people-hours that could be better invested in driving digital innovation. That’s why DevOps teams need to expand the use of automation, so they can discover changes as they happen and prevent user-facing issues before they occur.

It’s not just DevOps teams that stand to benefit from increased automation when it comes to managing microservices and container-based environments. In a separate research initiative, over three-quarters of CISOs said the only way for security teams to keep up with cloud-native application environments is to replace manual deployment, configuration, and management with automated approaches.

Taking the complexity out of microservices and containers

If these three core principles are followed, DevOps teams can successfully send their organizations on the path to automated cloud operations and self-healing applications in containerized environments in no time. Buried deep down amidst all the complexity of microservices and containers is a very simple concept – if organizations want productive users and happy customers, the experiences they deliver must be optimized, every single time.

Increased automation and AI, along with a single data model, are central to that capability, and it’s up to DevOps teams to lead the charge.

##

To hear more about cloud native topics, join the Cloud Native Computing Foundation and cloud native community at KubeCon+CloudNativeCon North America 2021 – October 11-15, 2021      

ABOUT THE AUTHOR

Saif Gunja Director of Product Marketing, Dynatrace

Saif Gunja 

Saif leads Product Marketing for Dynatrace Cloud Automation and DevOps solution areas at Dynatrace bringing 10+ years of IT and marketing experience from his previous roles at VMware, Apple and Deloitte. You can follow him at @sgunja or connect with him on LinkedIn.