Edge Computing Group/Edge Reference Architectures
- 1 Objective
- 2 Overview
- 3 User Stories
- 4 Deployment Scenarios
- 5 Links
Define a reference architecture for edge and far edge deployments including OpenStack services and other open source components as building blocks.
"Edge" is a term with varying definitions depending on the particular problem a deployer is attempting to solve. These permutations of perspectives drive a paucity of aligned user stories to share with the OpenStack and StarlingX communities.
"The most mature view of edge computing is that it is offering application developers and service providers cloud computing capabilities, as well as an IT service environment at the edge of a network." - Cloud Edge Computing: Beyond the Data Center by the OSF Edge Computing Group
"We define Edge computing as an infrastructure deployment focused on reducing latency between an application and its consumer by increasing geographical proximity to the consumer." - Denver PTG (2018) definition
Tiers of computing sites
The below table captures the discussions at the PTG and refers to the definitions we created earlier in collaboration with the OPNFV Edge Cloud Project as they are described in their whitepaper.
|OpenStack Denver PTG (2018)||OPNFV Edge Cloud Project|
| Central Datacenter
| Edge Site
||Medium Edge/Large Edge|
| Far Edge Site/Cloudlet
| Fog computing
There isn't a one size fits all solution to infrastructure. One must select a design pattern which best addresses their needs.
The following patterns have been developed to address specific user stories in edge compute architecture. They assume the deployer has tens of regional datacenters, 50+ edge sites, and hundreds or thousands of far edge cloudlets.
User Story 1
- As a deployer of OpenStack I want to minimize the number of control planes I need to manage across a large geographical region. -- Rather centralize control with the downside of losing functionality on the edge site in case of a connection loss? (Gergely Cs)
User Story 2
- As a user of OpenStack I want to manage all of my instances in a region (from regional DC to far edge cloudlets) via a single API endpoint.
User Story 3
- As a user of OpenStack I expect instance autoscale continues to function in an edge site if connectivity is lost to the main datacenter.
- I think an optional requirement related to this requirement, is the ability for a normal (non-service) user to be able to login to an edge site for operational and configuration purposes, if connectivity is lost to the main datacenter. -- The use case here is perhaps a non-telecom use case ... e.g. a Walmart scenario ... where edge sites (i.e. stores) have lost connectivity to central Walmart site, but still need to be able to manage their local applications running on their local cloud. (Greg W)
User Story 4
- As a user of OpenStack, if an edge site loses external connectivity, I expect to still be able to manage my deployment within an edge site either via local edge users or via alternate remote access paths.
User Story 5
- As a deployer of OpenStack I want disk images to be pulled to a cluster on demand, without needing to sync every disk image everywhere.
User Story 6
- As a user of OpenStack I want persistent storage available within my far edge location, so my instance storage minimizes latency.
User Story 7
- As a deployer of OpenStack I want to be able to upgrade my edge cloud infrastructure with service continuity. -- It may not be in scope for MVP
Distributed Control Plane Scenario
This design describes an architecture in which an independent control plane is placed within each edge site. A deployment of this type will benefit from greater autonomy in the event of a network partition between the edge site and the main datacenter. This comes at the cost of greater effort in maintaining a large quantity of independent control planes
While we defined multiple layers of edge sites in a hierarchical structure we don't require all of them present in order to apply the MVP reference architecture. In a distributed control plane scenario we consider a deployment without the 'small edge' nodes present to be a valid architecture option as well as it is depicted below.
Note: An optional IdP node at the edge site is required if full autonomy is required at the edge site in the event of network isolation; i.e. such that local users at the edge site can locally authenticate with their normal userid and credentials in order to manage the edge site and the workloads on the edge site.
Centralized Control Plane Scenario
This design describes an architecture in which edge and far edge cloudlets are managed from a control plane in a Main datacenter. A deployment of this type will enjoy simplified management of compute resources across regions. This comes at the cost of losing the ability to manage instances in an edge or far edge cloudlets during a network partition between the Regional data center and Edge.
While we defined multiple layers of edge sites in a hierarchical structure we don't require all of them present in order to apply the MVP reference architecture. In a centralized control plane scenario we consider a deployment without the 'large/medium edge' nodes present to be a valid architecture option as well as it is illustrated below.
In this case the centralized DC has all the required control plane services which doesn't require the large/medium edge site present if the use case doesn't demand it in order to have the expected functionality available on the small edge site.