Skip to content

datum-cloud/datum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 

Repository files navigation

Datum

Datum is a network cloud you can take anywhere, backed by open source.

The Datum control plane is a collection of multiple projects developed with Kubernetes control plane technology, most of which can be installed into native Kubernetes clusters.

Get started

  • Quick Start with GCP - Coming Soon!
  • Development Guide - Coming Soon!

Documentation

Our documentation is available at docs.datum.net. If you want to learn more about what's under development or suggest features, please visit our feedback site.

Key Components

API Server

The Datum API server leverages Kubernetes API server libraries to enable compatibility with existing Kubernetes ecosystems tooling such as kubectl, helm, kustomize, Terraform, Pulumi, Ansible, kubebuilder, operator-sdk, and more.

While the Datum API server exposes a handful of existing Kubernetes API types such as Secrets and ConfigMaps, you will not find definitions for Pods, Deployments, Services, etc. This approach takes advantage of recent developments in the Kubernetes project to build a generic control plane, exposing libraries that external software can depend on and build upon.

Kubernetes Operators

Datum leverages the operator pattern to define APIs and implement controllers via the use of kubebuilder. Each Datum operator can be deployed into any native Kubernetes cluster that meets minimum API version requirements, and does not rely on specific functionality provided by the Datum API server.

APIs:

  • Networks, NetworkContexts, NetworkBindings, and NetworkPolicies
  • SubnetClaims and Subnets
  • IP Address Management (IPAM)

Controller responsibilities:

  • Creating NetworkContexts as required by NetworkBindings.
  • Allocating Subnets to SubnetClaims

APIs:

  • Workloads, WorkloadDeployments, and Instances

Controller responsibilities:

  • Creating one or more WorkloadDeployments for candidate locations based on Workload placement intent.
  • Scheduling WorkloadDeployments onto Locations.

The Workloads RFC is recommended reading for those interested in the design goals of this system.

Integrates with the Network Services and Workload Operators to provision resources within Google Cloud Platform (GCP). This operator connects to:

  • An upstream control plane hosting Datum entities
  • An infrastructure control plane running GCP Config Connector

Controller responsibilities:

  • Maintaining instances as Virtual Machines in GCP.
  • Maintaining VPC related entities such as networks and subnets.
  • Discovering instances provisioned by GCP controllers, such as managed instance groups.

Get involved

If you choose to contribute to any of our projects, we would love to work with you to ensure a great experience.

About

A network cloud you can take anywhere, backed by open source.

Topics

Resources

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 3

  •  
  •  
  •