Constellation is the first Confidential Kubernetes. Constellation shields entire Kubernetes clusters from the (cloud) infrastructure using confidential computing.
Find a file
2025-03-29 21:51:49 +00:00
.github ci: bump slsa verifier (#3718) 2025-03-26 21:53:32 +01:00
3rdparty terraform: update AWS LB permissions (#3681) 2025-03-06 16:44:49 +01:00
bazel ci: exclude go vulns that don't affect library usage (#3721) 2025-03-27 10:23:30 +01:00
bootstrapper deps: update Go dependencies (#3676) 2025-03-05 14:01:53 +01:00
cli gcp: support projects with no default permissions (#3656) 2025-03-25 14:13:38 +01:00
csi deps: update bazel (core) (#3531) 2024-12-10 07:13:44 +01:00
debugd deps: update Go dependencies (#3676) 2025-03-05 14:01:53 +01:00
dev-docs deps: update Terraform dependencies (#3716) 2025-03-27 21:34:15 +01:00
disk-mapper deps: update Go dependencies (#3676) 2025-03-05 14:01:53 +01:00
docs gcp: support projects with no default permissions (#3656) 2025-03-25 14:13:38 +01:00
e2e deps: update Terraform dependencies (#3716) 2025-03-27 21:34:15 +01:00
hack deps: update Go dependencies (#3676) 2025-03-05 14:01:53 +01:00
image feat: implement RFC 16 to allow emergency node access (#3557) 2025-03-25 11:28:48 +00:00
internal attestation: hardcode measurements for v2.22.0 2025-03-29 21:51:49 +00:00
joinservice deps: update Go dependencies (#3676) 2025-03-05 14:01:53 +01:00
keyservice deps: update Go dependencies (#3676) 2025-03-05 14:01:53 +01:00
measurement-reader Support SEV-SNP on GCP (#3011) 2024-04-16 18:13:47 +02:00
nix docs: how to reproduce released artifacts (#3451) 2024-10-29 14:04:59 +01:00
operators/constellation-node-operator gcp: support projects with no default permissions (#3656) 2025-03-25 14:13:38 +01:00
rfc feat: implement RFC 16 to allow emergency node access (#3557) 2025-03-25 11:28:48 +00:00
s3proxy deps: update versions to v2.22.0 2025-03-29 21:16:31 +00:00
terraform deps: update Terraform dependencies (#3716) 2025-03-27 21:34:15 +01:00
terraform-provider-constellation deps: update Terraform dependencies (#3716) 2025-03-27 21:34:15 +01:00
tools bazel: remove bazeldnf and pinned rpms 2023-12-01 09:35:33 +01:00
upgrade-agent deps: update Go dependencies (#3676) 2025-03-05 14:01:53 +01:00
verify deps: update Go dependencies (#3676) 2025-03-05 14:01:53 +01:00
.bazelignore bazel: add directories to ignore (#2805) 2024-01-09 21:46:53 +01:00
.bazelrc bazel: enable bzlmod 2024-05-23 09:48:04 +02:00
.bazelversion deps: update bazel (core) (#3531) 2024-12-10 07:13:44 +01:00
.dockerignore ci: run versionsapi as docker action 2023-01-13 10:23:43 +01:00
.envrc nix: allow dev setup via direnv 2024-01-08 10:44:38 +01:00
.gitignore nix: allow dev setup via direnv 2024-01-08 10:44:38 +01:00
.golangci.yml deps: update golangci/golangci-lint to v2 (major) (#3709) 2025-03-25 11:30:13 +01:00
.grype.yaml ci: ignore replaced ghsa (#1392) 2023-03-10 11:13:05 +01:00
.lychee.toml link-checker: add ignored sites 2024-05-23 09:48:04 +02:00
.nixversion deps: update dependency DeterminateSystems/nix-installer to v0.38.1 (#3640) 2025-03-06 12:32:56 +01:00
.shellcheckrc Fix shellcheck warnings 2022-11-11 13:40:13 +01:00
.vale.ini ci: update vale 2024-01-24 09:07:19 +01:00
BUILD.bazel bazel: enable bzlmod 2024-05-23 09:48:04 +02:00
CODE_OF_CONDUCT.md Ref/readme (#375) 2022-08-19 14:54:11 +02:00
CODEOWNERS CODEOWNERS: move ownership of Helm charts to burgerdev (#3400) 2024-10-11 17:04:35 +02:00
CONTRIBUTING.md dev-docs: refactor and add information for newbies (#1912) 2023-06-19 17:39:43 +02:00
flake.lock image: use uplosi from nixpkgs-unstable (#3543) 2024-12-11 11:51:58 +01:00
flake.nix image: use uplosi from nixpkgs-unstable (#3543) 2024-12-11 11:51:58 +01:00
go.mod deps: bump github.com/containerd/containerd to v1.7.27 (#3707) 2025-03-24 14:23:21 +01:00
go.sum deps: bump github.com/containerd/containerd to v1.7.27 (#3707) 2025-03-24 14:23:21 +01:00
go.work deps: bump Go to v1.23.6 (#3642) 2025-02-07 10:15:14 +01:00
LICENSE add license 2022-09-05 09:17:25 +02:00
MODULE.bazel deps: update dependency rules_pkg to v1.1.0 (#3705) 2025-03-24 15:41:05 +01:00
MODULE.bazel.lock deps: update dependency rules_pkg to v1.1.0 (#3705) 2025-03-24 15:41:05 +01:00
netlify.toml Add docs to repo (#38) 2022-09-02 11:52:42 +02:00
README.md readme: remove demo references (#3393) 2024-10-07 15:16:54 +02:00
renovate.json5 deps: update public.ecr.aws/eks/aws-load-balancer-controller Docker tag to v2.12.0 (#3706) 2025-03-24 17:46:41 +01:00
SECURITY.md promote new github security reporting feature 2022-11-10 16:31:13 +01:00
version.txt chore: update version.txt to v2.22.0 2025-03-29 21:16:19 +00:00
WORKSPACE.bzlmod terraform: update AWS LB permissions (#3681) 2025-03-06 16:44:49 +01:00

Constellation

Always Encrypted Kubernetes

Constellation License Govulncheck Go Report Discord Twitter

Constellation is a Kubernetes engine that aims to provide the best possible data security. It wraps your K8s cluster into a single confidential context that is shielded from the underlying cloud infrastructure. Everything inside is always encrypted, including at runtime in memory. For this, Constellation leverages confidential computing (see the whitepaper) and more specifically Confidential VMs.

Concept

Goals

From a security perspective, Constellation is designed to keep all data always encrypted and to prevent access from the infrastructure layer (i.e., remove the infrastructure from the TCB). This includes access from datacenter employees, privileged cloud admins, and attackers coming through the infrastructure (e.g., malicious co-tenants escalating their privileges).

From a DevOps perspective, Constellation is designed to work just like what you would expect from a modern K8s engine.

Use cases

Encrypting your K8s is good for:

  • Increasing the overall security of your clusters
  • Increasing the trustworthiness of your SaaS offerings
  • Moving sensitive workloads from on-prem to the cloud
  • Meeting regulatory requirements

Features

🔒 Everything always encrypted

🔍 Everything verifiable

🚀 Performance and scale

  • High availability with multi-master architecture and stacked etcd topology
  • Dynamic cluster autoscaling with verification and secure bootstrapping of new nodes
  • Competitive performance

🧩 Easy to use and integrate

Getting started

If you're already familiar with Kubernetes, it's easy to get started with Constellation:

  1. 📦 Install the CLI or use the Terraform provider
  2. ⌨️ Create a Constellation cluster in the cloud or locally
  3. 🏎️ Run your app

Constellation Shell

Learn more: "Getting started with Constellation" videos series.

Documentation

To learn more, see the documentation. You may want to start with one of the following sections.

Support

Contributing

Refer to CONTRIBUTING.md on how to contribute. The most important points:

Warning

Please report any security issue via a private GitHub vulnerability report or write to security@edgeless.systems.

License

The Constellation source code is licensed under the GNU Affero General Public License v3.0. Edgeless Systems provides pre-built and signed binaries and images for Constellation. You may use these free of charge to create and run services for internal consumption, evaluation purposes, or non-commercial use. You can find more information in the license section of the docs.