Fornax is an open source edge-computing framework for managing compute resources on the edge environment. As one of the pillar projects of Centaurus, Fornax is designed to solve some of the key edge computing challenges such as limited computing resources, heterogeneous resource types, layered topology, unreliable network, and long latency. With Fornax, end-user's edge application workloads could be easily deployed in a distributed hierarchical edge environment with topologies that best matches the physical and logical structure. Fornax also offers high performance virtualized networking for workload communication within and between edge clusters.
Here are some of the distinguishing features of Fornax:
- Computing nodes and clusters on the edge: Both computing nodes and clusters can run on the edge.
- Hierarchical topology: Edge clusters can be structured in multi-layer tree-like topologies, providing best mapping to end-user scenarios.
- Flexible flavors: Supports multiple flavors of clusters on the edge, e.g. Arktos, K8s and K3s.
- Edge networking: Multi-tenant edge cluster networking (Supporting concepts like VPC, Subnet) and high performance inter-cluster communication.
Fornax models edge as an m-ary tree where an Arktos control plane sits at the root of the tree in the cloud, and leaf tree nodes represent computing nodes on the edge. The sub-trees in the m-ary tree are standalone clusters, and the roots of the sub-trees are control planes for edge clusters. As usual with Arktos clusters, there are also compute nodes in the cloud managed by the root level Arktos control plane.
The following graph is an example of such an edge model.
For detailed design please see the design doc
Fornax is targeting its first release in the later summer of 2021. Release plan can be found in the release plan.
Resources:
If you're interested in being a contributor and want to get involved in the Fornax code, please see CONTRIBUTING for details on submitting patches and the contribution workflow.
Fornax is under the Apache 2.0 license. See the LICENSE file for details.