Unfurling StarlingX: OpenStack’s distributed cloud for the edge
Thu 6 Dec 2018A Starling mumeration capture in Gretna. Copyright PA
Inspired by mumuration – the majestic self-organising, self-directed movement of flocks of starling birds – StarlingX backs itself as the open source software solution for the edge. The Stack spoke to two key pillars of the project – Wind River and Intel – to understand why they are pushing the edge open source
The stage was set for StarlingX when Intel announced it was selling off Wind River in May this year. Not long after the pair announced they would be contributing code from Wind River’s Titanium cloud product to the OpenStack Foundation. StarlingX v1 arrived a few months later: a fully integrated software stack that provides edge cloud infrastructure using OpenStack, with Kubernetes support expected in time for the next update in March 2019.
Several services from Wind River’s proprietary Titanium Cloud product form the backbone of StarlingX. In line the with the avian theme, these services are named “flock” services. They include host, software, service, fault and configuration management – services vital for industrial and telco edge use cases that demand easy deployment, low touch manageability, low-latency response and fast recovery.
Glenn Seiler, Wind River’s VP of marketing and product management, says that the ultimate goal is to provide a single pane of glass for management of distributed edge nodes and device workloads.
“Think control at the edge, control between IoT and Cloud, control over the virtual machines that deliver workloads to the IoT devices.”
Seiler says that while Wind River had good success with Titanium Cloud (it almost always won in competitive bake-offs), it found that a key stakeholder in the transition to the edge – the Telcos – wanted an open source solution.
“There was a big inflexion point over the last few years the other in particular thanks to OPNFV. That was more of integration project but it showed the viability of building a complete cloud stack from multiple open source components. Between OpenStack and OPNFV these initiatives have really validated open source in the Telco market.”
After two to three years ruminating over open source, and increased pressure from customers and Telcos alike, Wind River decided to pull the trigger and shift Titaniums licenses open source.
“We felt that we would get more mindshare and more exposure for the product,” he says, adding that Wind River still uses the StarlingX as the basis for Titanium Cloud and will continue to offer customers lifecycle management services.
Another cornerstone of the software project is Intel – the IT giant more widely known for its hardware. I asked Melissa Evers-Hood, senior director of edge and cloud orchestration at Intel’s open source technology centre, about the level of Intel’s collaboration with Wind River for the first StarlingX release:
“Intel’s collaboration with Wind River is deep and on-going. Intel’s contribution to the initial project release was to ensure that the code would be available, usable and acceptable to the open source community,” she said.
“Our contributions since the initial release have spanned all aspects of the project, working with Wind River as part of the StarlingX community.”
StarlingX’s flight path
StarlingX is not the only open source edge project or initiative, on what – on first inspection – looks like a crowded block, including the likes of Akraino and EdgeX Foundry. What distinguishes StarlingX from these other open source initiatives is that is a wholly open-source software project: there is no membership – anyone can download and contribute to the code regardless of who they work for.
Akraino is more of a consortia of member companies, and sees itself as a sort of open source edge steward, having released a charter to define declarative blueprints for the entire stack including the type of hardware needed, APIs required as well as applications and middleware if required. As part of the Akraino community, Intel and Wind River are working to define a StarlingX-based Akraino blueprint.
“Akraino does not necessarily provide [blueprints], but instead leverages upstream projects such as StarlingX. StarlingX is one ‘block’ in the bag of lego blocks that make up the different components an Akraino blueprint might use,” says Seiler.
EdgeX Foundry is a project more focused on the IoT or Edge device itself. It provides standardised APIs for applications to access devices such as cameras, sensors and actuators, meaning EdgeX applications can be run within a StarlingX edge cloud instance.
Defining the edge
StarlingX self-identifies as a distributed cloud project for the edge, but given the myriad definitions of edge floating around the enterprise IT space, it is worth establishing precisely what definition of edge it utilises. In true open source vein, the project follows the definitions used in the Open Glossary of Edge Computing – an official project under the stewardship of The Linux Foundation. Its lengthy definition of Edge computing can be found here, covering the usual bases of latency, bandwidth, and proximity.
In practice StarlingX’s “edge” is what Seiler calls an “aggregation” of the most important edge verticals: the telco edge (which includes the RAN e.g. base stations back to central office); the “Last Mile” (e.g., campus business complexes, hospitals and shopping malls; and the on-prem edge (think industrial IoT, trains and airports).
If stakeholders in all these vertical show interest – and Seiler says they have – StarlingX could be the comprehensive software stack the edge has been waiting for.
“The one thing that most of these verticals have in common is that acceptable latency between the device and edge computing capability is ~<50 milliseconds. Usually more like 20ms. This is horizontal enough to encapsulate all of these definitions,” says Glenn.
“While telecommunications, industrial, and emerging technologies such as autonomous vehicles and smart cities may have different edge architectures, they share many common requirements for performance, reliability and security,” adds Evers-Hood.
Open source: necessary for the edge to deliver on its hype?
The laundry list of potential edge applications makes the open development model – which affords a high degree of flexibility – ideal for Edge and IoT development. Going open source means the StarlingX code can be easily adapted, added or modified according to all these different needs and use-cases.
“This freedom coupled with permissive licensing fuels the rapid innovation and customisation that is key to meeting the demand for Edge and IoT solutions,” says Evers-Hood.
Evers-Hood also points out that open-sourcing could be the secret to quickly solving the unique security vulnerabilities of edge architecture when they are discovered:
“Open source makes it easy for developers to update features and implement security fixes quickly and to ensure products continue to meet customer expectations.”
Evers-Hood is realistic about the unique difficulties open-sourcing the project brings to the table, namely the often lengthy process of the whole community reaching consensus, but reemphasises open source’s unique capacity to enable the most user-focused solutions.
“Because these markets are so broad, it’s virtually impossible for any single company to go it alone. Shared development is a hallmark of open source, leading to faster design and enhanced product quality.”