DevOps at the Edge - Release, Deploy, Operate and Monitor

January 12, 2022

In a previous post we took a hard look at three key challenges for developers at the edge. But development is only half of the modern DevOps paradigm. There’s also the Ops side, specifically application release, deployment, operations and monitoring (the yellow bits in the image below).

devops lifecycle Image source: edureka

Let’s assume that you’ve already embraced containerization, microservices, Kubernetes, CI/CD and other aspects of modern applications (and if you haven’t yet, you can learn more about our perspective here).

Release/Deploy at the Edge

In the discussion around developer considerations in our earlier post, one of the central observations we made was the need for familiar tooling, noting that if developers are forced to adopt entirely different tools and processes for distributed edge deployment, it creates a significant barrier. Efficient edge deployment requires that the overall process is the same as, or similar to, cloud or centralized on-prem deployments.

Viewed through a DevOps lens, this means use of familiar tools like CI/CD solutions (e.g. Jenkins, CircleCI), API-backed CLIs (e.g. kubectl), package managers (e.g. Helm, Kustomize), and more.

While that’s achievable with a single cloud instance, it becomes significantly more complex at the edge, where you can be running hundreds of clusters, with different microservices being served from different edge locations at different times. How do you decide on which edge endpoints your code should be running at different times? How do you manage across heterogeneous provider networks?

In an ideal world, you wouldn’t – that should be the job of an edge platform provider. All you should have to do is simply hand over your application manifest, make some strategic settings choices, and then leave it to the edge provider to run your applications reliably, securely, and efficiently.

Edge Operations

A mid-2021 survey of IT decision makers, sponsored by Section partner Lumen Technologies, found organizations heavily focused on the benefits of edge computing. In fact, more than 90% of those surveyed believe that “moving their organization’s high-performance applications from cloud-based apps to metro edge will reduce lag time and improve performance… and [edge] provides the best balance of cost and performance.”

That said, there’s a difference between wanting to move to the edge and an actual competency and willingness to oversee edge operations.

73% of those surveyed “would, if possible, rather manage applications only and never manage infrastructure…”

Managing the basics of a distributed network is hard enough, as our white paper on Solving the Edge Puzzle makes clear. Optimizing global operations and ensuring security are even more complex, yet just as important. Again, these are areas where organizations need to be able to count on an edge platform provider for execution and support.

Distributed System Observability and Monitoring

For DevOps teams, it’s critical to have a holistic understanding of the state of an application at any given moment to ensure performance, usability, security and more. But this observability becomes increasingly difficult to achieve for distributed delivery nodes across diverse infrastructure from different providers. This can create a black-box scenario where organizations don’t actually know what’s going on with their application globally until they receive complaints or experience security issues.

As reported in a recent Dynatrace survey of 700 CIOs, “The dynamic nature of today’s hybrid, multicloud ecosystems amplifies complexity. 61% of CIOs say their IT environment changes every minute or less, while 32% say their environment changes at least once every second.” To add to the complexities of trying to keep up with dynamic systems, that same report revealed that:

“On average, organizations are using 10 monitoring solutions across their technology stacks. However, digital teams only have full observability into 11% of their application and infrastructure environments.”

This lack of observability is unacceptable in an edge platform whose primary purpose is to improve application performance and usability. An effective platform for multi-cloud/edge deployment should be able to provide a single pane of glass to observe the state of an application, drawing together data from many locations and infrastructure providers.

This kind of visibility is essential for developers to gain insight into the entire application development and delivery lifecycle. The right centralized telemetry solution will allow engineers and operations teams to evaluate performance, diagnose problems, observe traffic patterns, and share value and insights with key stakeholders.

Edge as a Service: Managing the Distributed Network

To accelerate edge adoption, operations teams need familiar tooling for application release and deployment, the ability to offload management of the underlying distributed network infrastructure to the platform vendor, and clear global observability and monitoring so they can diagnose issues and tune as needed.

That’s why we offer an Edge as a Service platform – so DevOps teams can concentrate on managing the application, not the infrastructure. Section’s EaaS platform offers GitOps-based workflows, Kubernetes-native tooling, CI/CD pipeline integration, a broad range of security and operational tools, and a complete single-pane-of-glass edge observability suite. This, combined with the other benefits of EaaS for application deployment, gives DevOps teams the cost and performance benefits they’re looking for in an edge platform, without the need to master distributed systems management.