3 Ways Service Mesh Helps DevOps

3 Ways Service Mesh Helps DevOps Teams

How exactly can a service mesh help DevOps teams? Our three co-founders were each recently interviewed by The New Stack Maker’s podcast, where they each addressed how service mesh can help DevOps teams. Below are some key takeaways that we hope will be useful for your team. 

1. Istio Boosts Engineering Efficiency 

In the first of this three-part podcast series, Neeraj Poddar, Aspen Mesh’s Chief Architect and Dan Berg, IBM Cloud’s Distinguished Engineer, discussed how the core capabilities of Istio can make engineering teams more efficient.

Microservices have provided new benefits for organizations, including better security and increased uptime, but on the flip side, there is also added infrastructure complexity. Service meshes like Istio have emerged as a way to provide better management of this complexity at scale. The core capabilities of the Istio service mesh—connection, security, control, and observability—help make engineering teams more efficient in many ways, and especially when it comes to running multicluster applications. “It’s a natural evolution to fit where we are today with cloud native applications based on containers,” Berg said. 

Providers like Aspen Mesh also play a role in helping DevOps teams take advantage of Istio’s traffic management, security, and general networking capabilities, said Berg. “Generally speaking, there are traffic management capabilities and things like that a developer would use, because you’re defining your routes and characteristics specific to your application, as well as the rollout of your deployment,” Berg said.

The future of Istio in terms of how it builds upon running multicluster applications on Kubernetes should include evolving to “talk to the language of applications,” Poddar said. “That’s where the real value will kick in and service mesh will still be a key player there, but it will be a part of an ecosystem where other pieces are also important and all of them are giving that information and we are correlating it,” Poddar said. “We’re still very early, as people are just getting used to understanding service meshes. So telling them that we need to coordinate all of this information in an automated way is scary — but we will get there.”

Listen to the podcast here.

 

2. The Importance of Knowing When You Need a Service Mesh 

In the second part of the series, Aspen Mesh’s CTO, Andrew Jenkins, and Tetrate’s Founding Engineer, Zack Butcher, talked about how service mesh is the gateway to cloud migration, and when you do—or don’t—need a service mesh.

A service mesh helps organizations migrate to cloud native environments by bridging the management gap between on-premises data center deployments to containerized-cloud environments. Once implemented, a service mesh relieves the complexity of this process. And for many DevOps team members, the switch to a cloud native environment and Kubernetes cannot be done without a service mesh.

In a typical environment split between on-premises servers and multicloud deployments, a service mesh provides the “common substrate,” by enabling “communication of those components that need to communicate across these different environments,” Butcher said.

There are also some cases where a service mesh may not be needed for DevOps. “I don’t think it’s honest to say, ‘hey, everybody absolutely must use this new thing,’” Jenkins said. “There are actually problems where you don’t need Kubernetes and you may not need containers at all or if you look at serverless, for example.”

As organizations consider which technologies to adopt in order to meet their software development and deployment goals, there are many tools and solutions to choose from. Ultimately, organizations are turning to service meshes as an answer for “not just a deployment problem,” but as a way to “integrate all the pieces together” during a cloud native journey, explained Jenkins.

Listen to the podcast here.

 

3. Service Mesh Amplifies Business Value 

Shawn Wormke, Aspen Mesh VP and General Manager, and Tracy Miranda, CloudBees Director of Open Source Community, met with the TNS team to discuss how exactly a service mesh can amplify business value for organizations in the third and final installment of this three-part podcast series.

Service meshes are increasingly providing DevOps teams with new ways to gain observability into the events that cause application deployment and management problems. Ideally, a service mesh should also help DevOps teams determine who should take the appropriate actions.

“What we’ve seen with our customers is they want to move [the maintenance work] down underneath the application, and let the application owners really focus on business-value code,” said Wormke. “They also want to let the operations team that is the ‘Ops’ part of DevOps really work on providing them the tooling and the common infrastructure it takes to run those things in production in a large enterprise environment.”

Service meshes offer powerful capabilities that teams can exploit, once they get past the learning curve. “We just need an easy way to get [service meshes] into folks’ hands and help them steer clear of the pitfalls so that they can get to all the real magic that you can start to do once you’ve got this orchestration and all these things connected,” said Miranda. “You can start to do pretty clever things.”

Listen to the podcast here.


Uptime and Efficiency in the Application Economy

Uptime and Efficiency in the Application Economy

The High Cost of Downtime 

Modern organizations are using “application value” as a new form of currency in the software-first world. What this means is any business that delivers a product or service to its customers through an application must understand the importance of application security, reliability and feature velocity. As applications become increasingly important to enterprises, so do engineering teams. 

Access to engineering talent is now more important to companies than access to capital. 61% of executives consider this a potential threat to their business. The average developer spends more than 17 hours a week dealing with maintenance issues, such as debugging and refactoring. In addition, they spend approximately four hours a week on “bad code,” which equates to nearly $85 billion worldwide in opportunity cost lost annually. As the necessity of driving business value with applications increases, so does the importance of engineering teams. As customer demands on applications increase, enterprises have two options — increase the size and cost of engineering teams, or increase engineering efficiency. 

Couple the need to increase engineering efficiency with the challenges around growing revenue in increasingly competitive and low margin businesses - and the importance of driving value through applications is top of mind for any business that considers itself a software company. 

The Advantages and Challenges of Microservices Applications

Microservices architectures allow businesses to keep pace with the competition in their space through application scalability, resiliency and agility. Most importantly, microservices allow enterprises to more quickly deliver new features to customers to maintain customer satisfaction and increase affinity. Microservices provide a powerful way to develop modern applications but they also come with new challenges. 

A common challenge our customers face is difficulty of debugging and resolving problems in a microservices environment. It can be challenging to resolve issues in a timely manner, especially when there are cascading failures which can significantly impact user experience. As a company that maintains a microservices based SaaS platform, we understand the pain operators and developers go through while dealing with an outage. 

Making the Most Out of Modern Applications 

This is why Aspen Mesh is focused on trying to make it easy for engineering organizations to reduce MTTR through quickly identifying any configuration or application changes that are likely to have caused an outage. We try to offer  a much improved user experience both for users within that company, but more importantly, for their end-users.  

Service mesh provides observability, tracing and logging capabilities that make it easy to identify when errors occurred and pinpoint their sources. It brings all of your data together into a single source of truth, removing error-prone processes, and enabling you to get fast, reliable information around downtime, failures and outages. More uptime means more revenue, and the agility with stability that you need for a competitive edge.

Aspen Mesh was designed to allow DevOps teams to address what we consider to be the three most critical areas in providing application agility and stability:

  • Proactive anomaly detection, quick incident response and resolution, and workflows that accelerate the remediation process.
  • A unified source of multi-dimensional insights into application and infrastructure health and performance that provides context about the entire software system.
  • Line of sight into weak points in environments, enabling engineering teams to architect more resilient systems in the future. 

There are many tools that allow DevOps teams to more efficiently develop and deploy microservices applications. The beauty of service mesh is that it allows decoupling of Dev and Ops along infrastructure lines. The operators can maintain the platform and develop guardrails that ensure enforcement of security and compliance policies without burdening application developers with infrastructure concerns. 

If you or your team are running Kubernetes-based applications at scale and are seeing the advantages, but know you can get more value out of them by increasing efficiency and more quickly identifying failure root causes, it’s probably time to check out a service mesh. You can reach out to the Aspen Mesh team on how to easily get started or how to best integrate service mesh into your existing stack at hello@aspenmesh.io. Or you can get started yourself with a 30-day free trial of Aspen Mesh


DevOps and service mesh

How Service Mesh Enables DevOps

I spend most of my day talking to large companies about how they are transforming their businesses to compete in an increasingly disruptive environment. This isn’t anything new, anyone who has read Clayton Christensen’s Innovator’s Dilemma understands this. What’s most interesting to me is how companies are addressing disruption. Of course, they are creating new products to remain competitive with the disruptors, but they are also taking a page out of their smaller, more nimble competitors’ playbook and focusing on being more efficient.

Companies are transforming internal organizations and product architectures along a new axis of performance. They are finding more value in iterations, efficiency and incremental scaling which is forcing them to adopt DevOps methodologies. This focus on time-to-market is driving some of the most cutting-edge infrastructure technology that we have ever seen. Technologies like containers and Kubernetes; and a focus on stable, consistent and open APIs allow small teams to make amazing progress and move at the speeds they require. These technologies have reduced the friction and time to market and the result is the quickest adoption of a new technology that anyone has ever seen.

The adoption of these technologies isn’t perfect, and as companies deploy them at scale they realize that they have inadvertently increased complexity and de-centralized ownership and control. In many cases, it can be impossible to understand the entire system and everyone needs to be an expert in compliance and business needs. Ultimately this means that when everyone is responsible, no-one is accountable.

A service mesh enables DevOps by helping you to manage this complexity. It provides autonomy and freedom for development teams while simultaneously providing a place for teams of experts to enforce company standards for policy and security. It does this by providing a layer between your teams’ applications and the platform they are running on that allows platform operators a place to insert network services, enforce policy and collect telemetry and tracing data.

This empowers your development teams to make choices based on the problem they are solving rather than being concerned with the underlying infrastructure. Dev teams now have the freedom to deploy code without the fear of violating compliance or regulatory guidelines. Secure communication is handled outside of the application reducing complexity and risk. A service mesh also provides tools that developers can use to deploy new code and debug or troubleshoot problems when they come up.

For the platform operator, whose primary objective is to provide a stable, secure and scalable service to run applications, a service mesh provides uniformity through a standardization of visibility and tracing. Policy and authentication between services can be introduced outside of the application at runtime ensuring that applications are adhering to any regulatory requirements the business may have. Deploying Aspen Mesh provides a robust experiments workflow to enable development teams to test new services using real production traffic. Our platform also provides tools that reduce mean-time-to-detection (MTTD) and mean-time-to-resolution (MTTR) with advanced analytics that are part of our SaaS portal.

DevOps represents two teams, Development and Operations, coming together to deliver better products more rapidly. Service mesh is a glue that helps unite these teams and provides one place in the stack that you can manage microservices at runtime without changes to the application or cluster.

The result is a platform that empowers application developers to focus on their code, and allows operators to more easily provide developers with a resilient, scalable and secure environment.