Seamlessly, every single day, we wake up and check our health statistics in smart watches, scan QR codes to validate information, pay using credit cards in different locations, use surveillance cameras to record our neighborhoods, and connect our smartphones to distributed WiFi access points in our restaurants or coffee shops. According to the Statista, in the Forecast number of mobile users worldwide 2020-2025 report, the number of mobile users worldwide reached 7.1 billion in 2021, and this number is projected to grow. This initiates a new set of use cases for edge devices due to the explosive growth of network-connected entry points.
Edge computing and networking is not specific to any industry; all of these scenarios span many different types of organizations. However, all edge scenarios have one common factor: creating and consuming data resources that are geographically distributed. As a final objective we want to analyze, consume or react to data to fulfill our customer and business needs.
Edge challenges here, and now
12 years ago, I was the network administrator for a bank. We had a branch office connected through a satellite link, which was easily impacted by the constant heavy rains. In the worst case scenario, a single transaction would take up to five minutes, a disruption that although was excessive, didn’t inconvenience most people on normal days. The big problems happened at the beginning of each month during payment days, when hundreds of local residents would go in person to cash their checks, and as waiting time accumulated, eventually we would receive desperate calls from the branch manager requesting IT help while getting yelled at by furious clients. The only options we had were to reboot the router, or to call the service provider to recalibrate the link several times to overcome climate interference. Imagine how grateful he was when the service provider was able to provide a wired line and replace the unstable satellite link.
We learned multiple lessons managing branch offices that utilize edge devices:
- Keeping a good user experience at edge layers is challenging. If a person is waiting to obtain a service (think about ATM or QR scanning lines), every single delay adds up.
- IT teams will have to rely on proper automation tools to reduce OPEX and CAPEX. At the edge level, latency is critical, and IT resources are scarce and expensive. We aim to process and automate data as close to the source as possible to reduce traffic all the way back and forth from remote devices to central datacenters.
- Consistency and repeatability are key to simplifying operation and maintenance. The same IT people have to manage disparate architectures, OS versions and devices. One of my service provider operations team members even mentioned they have maintenance windows every night of the week and do not want to overload IT people and end up in a never-ending loop to migrate and standardize their infrastructure. But rather it is urgent to provide IT groups the tools and solutions to automate everything in a simple and human-readable way, to quickly achieve consistency for configuration, software version and patches, and security settings in a repeatable way for every single device.
- Edge locations have limited or no IT staff. A network administrator might have thousands of routers and switches to manage, tasks to troubleshoot, so validations and status information would be simpler to automate at scale using Ansible Playbooks.
- Security, regulatory and data management now extend all the way to the edge. Some small branches might not even have a rack or network closet with physical security, leaving IT devices vulnerable to tampering. Automation solutions must include the ability to run compliance checks and remediation at scale, for thousands of devices, multiple times per day, as close to the source as possible.
- To innovate faster, developments and automation workflows need to be portable within environments. Humans are prone to error, and we want to avoid reworks or multiple trips to remote sites. Containerization of developments can make images portable and easier to deploy; this concept also applies to automation development.
- An automation solution for edge must be distributed and as close to the edge locations as possible to lower the traffic flow to the central site, optimize infrastructure resources, reduce latency and achieve a faster response while reducing the IT resources consumption.
IoT, 5G, containers and microservices
Industrial networks have already been using sensor signals for a long time in their own isolated domains. However, there were some disruptive technology advancements that enabled the expansion of businesses into new domains.
First up let's talk about 5G, which allows mobile cellular density to grow up to 1 million of devices per square kilometer. This means that in addition to people, other objects such as surveillance cameras, self-driving car sensors, smart doorbells, and virtual reality (VR) devices will be able to interconnect, as well as consume and generate data at massive scale. And all this massive machine-type communication enables the Internet of Things (IoT), which is the far edge layer.
Why would we want to generate or consume such a large amount of data?
According to Forrester Research’s Predictions 2021: Edge Computing, “The explosion of IoT-enabled connected devices will drive demand for edge computing solutions that process data as close to the end device as possible.”. This could mean that in the future, businesses could detect patterns, make predictions or make decisions at the edge through Artificial Intelligence (AI).
Containers and microservices are other disruptive technologies that enable the ability to optimize compute resources, deploy container images between disparate environments, and easily scale to grow or release applications and resources according to business needs. The final objective is to consume infrastructure resources in an optimized way.
Red Hat's vision for edge computing addresses the edge use case as a solution to many problems. Challenges will be different depending on the use case, as well as the number of devices and their location or proximity to the main central datacenter. Let’s refer to the following diagram to visualize the edge layers and observe where edge devices could be located:
In IT, geography matters. We can better classify and understand how our use cases span within edge layers considering the following examples:
Solving edge needs by automating with Red Hat Ansible Automation Platform
The release of Ansible Automation Platform 2 includes multiple enhancements for distributed environments. These are few of the advantages of using Ansible Automation Platform for edge:
- It is simpler to develop and deploy automation workflows. Ansible Automation Platform 2 uses automation execution environments, which are self-contained automation spaces that can be easily replicated and repeated across the organization. This means that as soon as a development is ready in a testing environment (say, on a laptop or workstation), it can be easily ported and deployed into production on a server or in the cloud in a distributed way. We can now avoid the “it works on my machine” common complaints and start using automation developments faster.
- Geographically distributed automation execution. Automation mesh separates the control from the execution layers. Control nodes can be centrally located and execution nodes can be deployed for different regions. In that way, users can connect to a single point of control, but the edge devices will receive the automation instructions from their local or regional execution node, reducing latency and traffic between the edge and the datacenter.
- Consuming certified Ansible Content Collections from Ansible automation hub. Ansible Automation Platform has 100+ certified Collections, tested and validated by dozens of technology partners. These certified Collections enable automation for different cross-domain edge use cases including IoT, industrial switches and routers, plus the capability to integrate with enterprise-grade tools. In addition, customers can always develop custom playbooks and automate workflows using the same language across all the IT areas.
- Bridging silos within IT groups to achieve end to end orchestration. Ansible Automation Platform has Collections with out-of-the-box capabilities to automate processes and tasks across multiple domains. Network, systems, security and engineering teams can speak a common language, collaborate in a simpler way, and define standard automation practices in a human-readable manner.
- Ready to use for the enterprise. While community solutions are great to develop and test, most of the customers I work with mention an immediate need to fulfill internal security requirements for policies compliance. Enterprise customers require a solution that allows them to integrate easily with their existing solutions. Common scenarios include role-based access, multi-tenancy, external user authentication and authorization, integrations with ticketing softwares, event forwarding for reporting and audits, and integrations with inventory and network management solutions.
- Lowering risk through expertise. Red Hat subscription services include Red Hat Insights to analyze automation consumption.
How do I start automating edge devices?
Automation is a long-term journey, moreover if you face the complexities that edge environments already pose. However, there are some golden rules to start:
- Standardization. Automation at any scale requires consistency; at the edge level it is simpler to identify non-compliant single nodes and out of band changes if you have configuration and software standards.
- Use cases selection for automation should include simple but business relevant use cases, and allow all stakeholders to participate. This will empower the technical teams to coordinate, communicate and learn from each other in a simpler way. It is better to have modular automation workflows working already and seeing the benefits than trying to achieve a long-term complex scenario.
- Keep automation simple. IT infrastructure already has a lot of complexities, and IT engineers have a very limited time to get trained in multiple and heterogeneous solutions. What I personally like about Ansible Automation Platform is that it allows us to develop automation in a simple and human-readable way across different domains.
- Think about future scale and consumption by choosing the tooling wisely. The same team members might end up defining use cases, as well as developing, and consuming the automation solution. You’ll want a platform that can grow and adapt to your business needs and not the other way.
 Predictions 2021: Edge Computing, Forrester Research, Inc., October 27, 2020.