Resource background image

Glossary

What is Edge Management?

Edge management involves the administration, configuration and operation of edge computing devices and infrastructure. Before we explore edge management, we should define what edge computing is and why it is important.

What is Edge Computing?

The best way to define edge computing is with an example. A great one is web caching services such as those offered by Akamai. The idea is to bring content, especially frequently accessed content, closer to users offering far faster access. These caching servers are placed at the edge in locations around the world.

With edge computing, devices are placed at the edge of the network, which is away from the network core, literally where the network rubber meets the internet road. Large, geographically dispersed networks have multiple network edges — thousands upon thousands in many cases. To maximize bandwidth efficiency and reduce latency, data collected from edge devices is processed at the edge and only the most critical data is moved to the central data center.

Edge computing “offers some unique advantages over traditional models, where computing power is centralized at an on-premises data center. Putting compute at the edge allows companies to improve how they manage and use physical assets and create new interactive, human experiences,” argues Accenture.

Why Use Edge Computing?

If edge computing was not in place, enterprise networks that produce and process massive data quantities would be overwhelmed, end user response would slow and the cost to boost the network and IT infrastructure to keep pace would be staggering.

“Businesses use edge computing to improve the response times of their remote devices and to get richer, more timely insights from device data. Edge computing makes real-time computing possible in locations where it would not normally be feasible and reduces bottlenecking on the networks and datacenters that support edge devices,” the Microsoft What is Edge Computing? web page explains.

Edge computing shifts from a centralized to a decentralized and distributed data processing model. “Edge computing is the process of bringing information storage and computing abilities closer to the devices that produce that information and the users who consume it. Traditionally, applications have transmitted data from smart devices like sensors and smartphones to a central data center for processing,” the Amazon AWS What is Edge Computing? web page explains. “However, the unprecedented complexity and scale of data have outpaced network capabilities. By shifting processing capabilities closer to users and devices, edge computing systems significantly improve application performance, reduce bandwidth requirements, and give faster real-time insights.”

Solving Edge Computing Challenges with Edge Management

Edge computing can be massively complex and remote edge computing devices can be difficult to configure, operate, maintain and manage. Edge management helps by:

  • Easing the setup and connection of edge devices in remote locations to the network.
  • Automating configuration changes while validating changes.
  • Making device management more efficient with DevOps processes.

Edge Computing Components That Need to Be Managed

We already mentioned caching services and servers as great edge computing examples. Here are some more:

  • Remote cameras that transmit video to datacenters only when something suspicious happens, rather than burdening the network with a constant feed.
  • Other edge devices include IoT devices such as sensors, smart cameras, drones, robots and thermometers.

Edge Infrastructure That Needs to Be Managed

  • Private cloud: Private cloud hardware and their processors and edge routers are two examples of items that need to be managed.
  • Hybrid cloud: Server clusters and switches are two hybrid cloud components that need management such as system updates.
  • Public cloud: Here, edge clusters and servers can act as gateways to provide firewalling, data processing and proving wireless connections. These essential components are best served with remote management as opposed to on-site attention which are often impossible and nearly always impractical.

Overcoming Challenges at the Edge

Edge devices are outside of central IT physical control and often management control. Yet these devices are still just computers with operating systems and applications that must be configured, health checked patched, updated and audited.

Sending technicians out with USB drives is not efficient nor does it meet the efficiency or speed demands of your business. How can your company provide the best customer experience if your competitors can deliver updates on new offerings in real-time, while you’re mailing USB drives and scheduling technicians?

“Today, many of the processes for updating and managing these devices can be manual, there can be few standards or just a single team that tries to go out to every single location over the course of months to update the things that need to be updated,” the Edge Computing: Compliance,Developer Productivity,and Configuration Inconsistencies Top the List of Key Challenges blog argues. “This creates a complex and massive matrix of code bases, pipelines, deployment processes, and operational practices. Success on the edge means apps are not only architected to be functionally complete, but also operationally efficient at scale."

Edge Management Factors to Consider

While deploying applications at the edge, operations teams must consider various factors such as network bandwidth, security implementation and scalability. Factors that play a crucial role in managing the deployment of edge devices are:

 

Consider the following scenarios that operations teams across enterprises face:

  • Teams do not have access to the status of diverse edge devices, connectivity and physical security standards on time. 
  • Unplanned downtimes are known only after significant business impact. 
  • An avoidable infrastructure configuration issue exposes sensitive personal information after a cyberattack. 

What is common in all three scenarios is the lack of visibility which delays updates and, therefore, only allows teams to pursue remediation actions instead of preventive ones. In an ideal scenario, teams should be proactive in detecting and isolating issues or getting information instantly to take quick action against any disruption.

Learn more at the Progress Chef Edge Computing web page.

How Does Edge Management Work?

The graphic below shows a classic Edge Computing installation and how it is managed.

 

Benefits Of Edge Management

Edge computing automation eliminates application delivery failures, accelerates deployment frequency and drives business agility to the edge.

“Supporting hundreds to thousands of different devices that can be distributed across the globe poses unique challenges for organizations. Many traditional solutions that work at the corporate level fail to translate to edge computing devices. Network latency and bandwidth constraints cause deployments to fail without notice, multiple configurations are used and must be maintained, and production environments are difficult to mimic in development,” explains the Progress Chef Edge Computing solutions page. “Unlike other areas of digital transformation that are many times developer-led, success on the edge requires operational considerations to be equally prioritized. Building applications that are not only functional but can be provisioned, configured, delivered, updated and remediated remotely using an automated solution is key to the long-term success of any edge computing effort.”

Manage App Delivery to the Edge

Application delivery to the edge is a vexing problem, one that proper edge management solves. “Edge devices are typically field devices that sit at the periphery of a network. They have limited connectivity, RAM, and storage. It is not feasible for these devices to download heavyweight software frequently. Software distribution to such devices is unreliable, and the challenges are magnified with scale,” the Deliver Your Applications on Edge Devices with Success blog says. “Failures in delivering applications that perform critical tasks in the user journey can have devastating implications for the organization. A failure in the app delivery (or an update) translates to a loss of not just money but also hard-earned trust and confidence in the product.”

Edge Management Best Practices

Addressing edge management these challenges is best done by having your development and operation teams (DevOps) work together to define and implement a set of best practices.

Edge computing automated delivery guidelines include:

  • Implement an autonomous automation solution: Solutions need to be able to work in low-bandwidth environments, can self-heal, rollback and scale easily.
  • Adopt an automation “as code” approach: DevOps practices like infrastructure as code and compliance as code are required for success on the edge.
  • Validate delivery status in “near” real-time: This should be done with in-depth dashboards that allow IT to visualize statuses more quickly.
  • Commit to continuous compliance: You should be able to verify your compliance posture at any time and produce evidence with the click of a button.
  • Apply DevOps to scale edge operations: Perform updates weekly, nightly, even daily and deliver key new features to edge environments,
  • Use an “As Code” approach: Use machine readable code that is testable and searchable. This is essential to scaling automated pipelines.

Edge management simplifies the handling of a growing array of distributed devices. “There's just so many devices, so many different configuration, so many different artifacts needed to successfully deploy out to the edge, having that library of content out there that you can use is just critical to kind of building a critical mass of automation assets,” the Chef Stories From the Edge blog argues.

Standardize application packaging and testing practices. “You can't take a lot of the complexity out of an edge app, but you can take some of the complexity around how that app is built and tested. By adopting a standard approach to packaging and creating a single immutable artifact that runs the same in production as it does in depth, so many problems are eliminated,” the Chef blog recommends.

Edge Management Customer Cases in Point

Walmart

Walmart Intelligent Retail Lab (IRL) is a technology incubator inside of Walmart dedicated to harnessing the power of computer vision, machine learning and artificial intelligence to help customers shop smarter.

Walmart deployed Progress Chef Habitat to package that application, making it easier for teams to deliver the software and make updates. Chef Habitat also enabled IT to monitoring the software they're deploying is running as expected with the right configurations.

“As we encountered unique software build lifecycles for some of these more challenging pieces of computer vision, artificial intelligence, and machine learning software, we found that Chef Habitat provides unparalleled flexibility and customization,” said Jeff Moody, DevOps Manager at Intelligent Retail Lab by Walmart.

Walmart IRL is now using Chef Habitat to fully automate almost all applications and dependencies in its cutting-edge AI environment, enabling:

  • Developers to focus on solving problems, instead of fighting the platform.
  • Elimination of developers having to constantly reconfigure the application, saving months of configuration time with Habitat with OpenCV.
  • Monitoring and control needed to leverage AI in their solutions with Chef EAS.

Read the full Walmart case study.

Panera Bread

Panera Bread is probably the largest scale deployment of Chef Habitat. They are currently managing about 12,000 machines with Progress Chef Infra running over 58,000 Habitat application instances. They average about 28,000 builds per month.

This is one of those scenarios where the team is needed to go to locations and deploy the software. And it could take up to a month to get all the software updates out. Now, Panera’s team can do it in a day and monitor those deployments as they roll out from dev, preprod to production. As those DevOps teams conduct those rollouts, they no longer need to work nights and weekends.

What to Look for in an Edge Management Solution

Rapid Rollback

Not all application updates can be rolled back, but in low bandwidth/edge environments the ability to quickly rollback where applicable is critical. Consider updating POS devices in stores. Over a slow connection, the update may take eight (or more_ hours to download and deploy. “If the deployment fails there is not time to push another package. The only recourse is to rollback to the last working version. To do so, the device needs to have the last working version of the application and an agent that can execute the rollback locally,” the Reliable Application Delivery for Edge Environments blog explains. “Chef Habitat can trigger a service rollback by “demoting” a package via the Habitat Builder. Since not all application updates can be safely rolled back, when you configure a service, you can specify whether to track the channel for updates (rollback when demotions happen) or use the latest version on disk.”

Automated Package Clean-Up

Edge devices like kiosks, point-of-sale systems and manufacturing devices often have limited storage. As you push software updates to these devices, it’s critical that you continually manage the available disk space.

Chef Habitat has an option to configure the latest versions to keep on disk when a service is started or updated. The Habitat Supervisor will uninstall the previous versions of the package and all its dependencies (if other packages do not depend on them). This is especially valuable when paired with rapid rollback, allowing a user to make an explicit decision on the number of previous versions to keep on disk.

Layered Container Support

Containers are often the preferred form of delivery for applications across all industries and organizations. In low bandwidth, distributed environments, containers are a great strategy for minimizing the size of the package required to deliver the application.

“This release provides users with the ability to create a layered container to take advantage of container caching functionality. This reduces the time required to upload to the container registry, lowers storage costs, and reduces the time required to download to the target,” the Software Deployments at the Edge blog explains.

More on How Chef Helps Manage the Edge

Chef helps DevOps teams supporting edge computing devices reduce deployment failures and accelerate release schedules by providing a code-based autonomous automation solution that includes configuration, hardening, patch management, compliance audits and application delivery. By using Chef edge solutions clients can:

  • Scale continuous delivery to the edge and deploy applications 90% faster.
  • Validate deployments in real-time and eliminate 95%+ of run-time failures.

Chef Edge Benefits

  • Accelerate Delivery: Scale continuous delivery to the edge and deploy to production up to 90% faster.
  • Reduce Deployment Failures: Shift defect resolution from run-time to build-time and eliminate production failures.
  • Reduce Operational Overhead: Reduce time and effort to maintain applications over their lifetime by up to 80%.

Chef Edge Computing Solution Advantages

Chef enables teams supporting edge computing devices to eliminate deployment failures and accelerate release schedules by providing a comprehensive automation solution that includes configuration, hardening, patch management and application delivery.

Chef is uniquely positioned for edge computing and offers customers the following advantages to other tools on the market:

Consistent Configuration

  • Configuration as code drives consistency and repeatability across devices.
  • Purpose built reports and dashboards for auditing.

Real-Time Visibility and Validation

  • View and validate the status of applications across all edge computing environments.
  • Leverage advanced analytics to see if a deployment was successful or not and if the app is currently healthy.
  • Drill down to classes of nodes or classes of errors to isolate data using intuitive tools.