Keeping Tabs on Your Arm-based Homelab
A logbook of work with temperature sensors, Prometheus, Grafana and…
Two factors are growing at an exponential rate in Enterprise IT: Kubernetes is quickly becoming the de facto solution for managing containerized workloads and most — if not all — network roads, it would seem, are leading to the edge.
Kubernetes is well on its way to becoming the industry norm for orchestrating hybrid and multi-cloud workloads. A stunning 70% of enterprises report they intend to standardize on Kubernetes for managing containerized applications in the next three years. And with the booming growth of IoT, the move to 5G, and the surge in edge computing, it’s estimated that there will be 29 billion connected devices in the world by 2022.
So what happens when containers meet all these devices at the edge? Kubernetes management platform Rancher Labs set out to make sure it’s not your average cluster.
“We don’t want to take the cloud or datacenter and just map it to the edge. That would be a huge mistake,” says Rancher Labs field engineer Mark Abrams. “We recognize that the landscape is different, so we wanted to build the right solution for container orchestration at the edge.”
Which is why last fall, Rancher Labs released a new open source project called K3s, a certified Kubernetes distribution designed for production workloads in unattended, resource-constrained remote locations — including inside IoT devices.
Packaged in a single <40MB binary, K3s is just half the size and heft of the upstream Kubernetes project. In fact, the size inspired the product’s name: Kubernetes is a 10-letter word that’s frequently (and affectionately) abbreviated to K8s. Something half as big as Kubernetes, the Rancher team reasoned, should be a five-letter word, styled as K3s.
No matter what you call the platform, it’s what K3s can do that continues to catch the attention of both developers and enterprises. Lightweight and highly available, K3s is designed to accelerate edge solutions, transforming small devices that previously functioned independently into an orchestrated cluster capable of communicating across devices, as well as processing data in place.
The result is that K3s makes it easier for site reliability engineering (SRE) teams and embedded systems developers to deploy software in remote areas where limited connectivity — or other factors — are obstacles to performing updates and maintenance. Even if machines suffer from spotty connectivity, K3s helps engineers to manage nodes remotely without interruptions to the workflow.
Cost-efficiency is also an attractive part of the package; with K3s’ smaller footprint, operational costs can be drastically reduced. Before Rancher introduced K8s’ “mini-me,” enterprises with offices in far-flung destinations had little choice but to deploy a full-scale, not-inexpensive Kubernetes cluster — even if they didn’t need consistent access to the cloud or other networks.
“Within a few months after launching, the number of stars spiked on GitHub, to the point that K3s was rivaling our core Rancher product in terms of popularity and downloads,” says Abrams. “It took 4 years for the Rancher project to achieve as many stars. The community has been really drawn to it — and not just hobbyists, but also enterprises that are looking for a better way to deliver these small devices.”
For the Rancher Labs team, there was no question that K3s needed to be compatible with both x86 and Arm — a decision that turned out to be fortuitous.
“With its long history of leadership in the mobile and device space, Arm was an early adopter of edge computing, embracing its promise to enable innovation at scale, and amassing a diverse ecosystem of more than 1,000 technology partners to help bridge the gap between hardware design and software development.
They don’t actually make chips, but instead partner with hundreds of companies to help them design custom solutions based on Arm technology,” says Abrams.
In 2019, Rancher and Arm launched a partnership of their own, collaborating on a white paper that brands the combination of Arm and K3s as an “ideal, inclusive solution for current and next-generation edge compute,” says Abrams, who co-authored the paper along with Bhumik Patel, director of software ecosystems for Arm.
“The combination of edge-optimized hardware running Arm processors and container orchestration delivers a strong value proposition that should not be overlooked when developing the current and next generation edge. Together this combination of hardware and software delivers robust, scalable, reliable and highly available solutions,” the report’s summary conclusion reads.
Software is decoupled from the device and simultaneously has the ability to take advantage of each hardware component as if it were purpose built for the task. This combined hardware / software strategy is also beneficial for long term usage. Containers provide isolation and security in a purpose-built package and the underlying container orchestration gives physical devices fungibility to handle scenarios on the edge which have not yet been conceived.”
The edge goes from the gateways, where data gets transferred to the cloud all the way out to the far edge, which can include devices on windmills, cars or even rockets. And then there’s everything in between.
Chick-fil-A for instance, deploys bare metal clustering for Kubernetes on-the-fly at the edge to better enable its growing chain of restaurants dish up not only deep-fried chicken sammies and waffle fries, but also the gold star customer services for which the franchise is well known.
Because of its sheer popularity, many Chick-fil-A restaurants typically see as much as three times the customer traffic as the location was designed to support. Smarter kitchen equipment that allows the franchise to collect more data on fryer-to-table times can be used to inform more intelligent systems and build out more accurate forecasts. With Rancher’s help and the magic of Kubernetes on bare metal, that increases Chick-Fil-A’s scalability to the tune of some 6,000 devices at more than 2,000 different locations.
“Use cases at the edge vary a lot,” says Abrams. “And as such, so does the hardware.”
With an edge-driven data tsunami hurtling upstream toward the cloud, the increasing hardware trend is moving toward high-performance, low-touch, Kubernetes-supported solutions like Hivecell, which runs distributed frameworks outside the data closet, where the data is created, at scale.
“We’ve seen rapidly increasing demand from businesses seeking to deploy distributed, Kubernetes-based applications to the edge. K3s, supported on Hivecell hardware, will enable production workloads in unattended, resource-constrained, remote IoT environments,” says Jeffrey Ricker, CEO of Ricker Lyman Robotic, the New York company that developed Hivecell.
The application of K3s also cuts across different industries. “It’s exciting to see what the world is doing with K3s and how it can help solve new problems,” says Abrams. “We’re seeing use cases emerge across retail, energy, defense, and aerospace.”
One potential use case involves Amalgamated Banks of South Africa (ABSA), an existing Rancher customer that has expressed interest in deploying K3s to more than 8,000 branch locations in 12 countries across Africa, including some of its most remote sites.
With K3s, the Johannesburg-based institution can centralize the setup and software management of their branch offices, eliminating the need for maintaining robust servers at each location. K3s will also increase ABSA’s ability to service their customers in areas with little to no telecommunications infrastructure to ensure that they can access their accounts.
Another use case is about to hit the open road as well. “There are a lot of cases where devices are using cell networks or satellites, and as such may suffer from intermittent connectivity,” says Abrams. But with Arm and K3s, there is the ability to build small radios on devices that can then talk to each other across long distances and send short messages.
“We’re working with a company that is installing AI-enabling infrastructure on a highway,” says Abrams. “Using rugged, low-powered Arm devices and K3s, they can deploy small Kubernetes clusters that can transmit data to toll operators, the police, or emergency services along the entire route.”
Along with better connectivity, the cost efficiency that comes with leveraging Arm at the edge is hard to beat.
“We talk to customers that have tens of thousands of sites with multiple edge devices at each location,” says Abrams. “When you’re working at that scale, the cost implications of having two devices versus three devices in each location, or leveraging a $35 server versus a $2,000 server is huge. Efficiency really matters at the edge.”
And the number of devices is only growing. That’s why Rancher Labs also launched Fleet, a new open source project focused on managing large numbers of Kubernetes clusters. “Based on feedback from customers and the community, we expect enterprises will soon need to manage tens of thousands of clusters,” says Abrams. “That’s why we’ve set a goal of being able to manage a million clusters or more with Fleet.”
And Arm will play a big part of that. Looking forward, “we would like to see K3s widely adopted as container orchestration on the edge,” says Abrams. “We already see Arm as the leader on the edge—and we don’t see that changing anytime soon.”