From 1031167b84101a4b911497429add405793e56dc8 Mon Sep 17 00:00:00 2001 From: kfox1111 Date: Wed, 3 Jun 2026 12:15:28 -0700 Subject: [PATCH] Implement easy Bottom Turtle HA support in the charts (#816) * Implement easy Bottom Turtle HA support in the charts Signed-off-by: Kevin Fox * Add diagram Signed-off-by: Kevin Fox * Update docs Signed-off-by: Kevin Fox * Some fixes and tightened defaults Signed-off-by: Kevin Fox * More diagrams Signed-off-by: Kevin Fox * More instructions Signed-off-by: Kevin Fox * More instructions Signed-off-by: Kevin Fox * More instructions Signed-off-by: Kevin Fox * More instructions Signed-off-by: Kevin Fox * More instructions Signed-off-by: Kevin Fox * Install some bottom turtle spire bits Signed-off-by: Kevin Fox * Trigger in github Signed-off-by: Kevin Fox * Fix path Signed-off-by: Kevin Fox * Fix path Signed-off-by: Kevin Fox * Fix path Signed-off-by: Kevin Fox * Fix path Signed-off-by: Kevin Fox * Fix path Signed-off-by: Kevin Fox * Fix path Signed-off-by: Kevin Fox * Fix shell code Signed-off-by: Kevin Fox * Add some more testing Signed-off-by: Kevin Fox * Add some more testing Signed-off-by: Kevin Fox * Add some more testing Signed-off-by: Kevin Fox * Add some more debug logging Signed-off-by: Kevin Fox * More logging Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * Some fixes Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * Add x509POP support and more testing Signed-off-by: Kevin Fox * x509pop attestor support and more tests Signed-off-by: Kevin Fox * More updates Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Update docs Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Fix pages artifact upload Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Test some more bits Signed-off-by: Kevin Fox * Initial stab at dynamic registration Signed-off-by: Kevin Fox * Dynamic registration working but not integrated with test Signed-off-by: Kevin Fox * Wire in dynamic registration into the test Signed-off-by: Kevin Fox * Fix missing props Signed-off-by: Kevin Fox * Update the svids to align Signed-off-by: Kevin Fox * Update the svids to align Signed-off-by: Kevin Fox * Fix service name Signed-off-by: Kevin Fox * Look at data Signed-off-by: Kevin Fox * Look at data Signed-off-by: Kevin Fox * Look at data Signed-off-by: Kevin Fox * Fix ca type Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Test out new packages Signed-off-by: Kevin Fox * Update ports Signed-off-by: Kevin Fox * Update ports Signed-off-by: Kevin Fox * Work on debugging dynamic registration some more Signed-off-by: Kevin Fox * Fix service account name Signed-off-by: Kevin Fox * Fix service account name Signed-off-by: Kevin Fox * Working... Cleanup. Signed-off-by: Kevin Fox * Working... Cleanup. Signed-off-by: Kevin Fox * Fix broken ssh test Signed-off-by: Kevin Fox * Fix broken ssh test Signed-off-by: Kevin Fox * Simplify a bit Signed-off-by: Kevin Fox * Update to use the released images Signed-off-by: Kevin Fox * Allow x509POP cluster name adding Signed-off-by: Kevin Fox * Restrict cluster registration Signed-off-by: Kevin Fox * Fix var name Signed-off-by: Kevin Fox * Fix missing slash Signed-off-by: Kevin Fox * Make defaults work better Signed-off-by: Kevin Fox * Make defaults work better Signed-off-by: Kevin Fox * Fix readme Signed-off-by: Kevin Fox * updated diagram Signed-off-by: Kevin Fox * Regenerate image Signed-off-by: Kevin Fox * Bump spire versions Signed-off-by: Kevin Fox * Fix issues identified during review Signed-off-by: Kevin Fox * Update docs Signed-off-by: Kevin Fox --------- Signed-off-by: Kevin Fox Signed-off-by: kfox1111 --- .github/kind/conf/kind-config.yaml | 32 + .github/workflows/helm-chart-ci.yaml | 2 +- .../spire-ha-agent/templates/daemonset.yaml | 2 +- charts/spire-nested/Chart.yaml | 58 +- charts/spire-nested/README.md | 137 ++- charts/spire-nested/values.yaml | 345 +++++++- charts/spire/README.md | 2 +- .../spiffe-oidc-discovery-provider/Chart.yaml | 2 +- charts/spire/charts/spire-agent/Chart.yaml | 2 +- charts/spire/charts/spire-agent/README.md | 276 +++--- .../charts/spire-agent/templates/_helpers.tpl | 12 + .../spire-agent/templates/configmap.yaml | 26 +- .../spire-agent/templates/daemonset.yaml | 56 +- charts/spire/charts/spire-agent/values.yaml | 37 + charts/spire/charts/spire-server/Chart.yaml | 2 +- charts/spire/charts/spire-server/README.md | 821 +++++++++--------- .../spire-server/templates/_helpers.tpl | 6 + .../spire-server/templates/configmap.yaml | 24 +- .../controller-manager-cluster-ids.yaml | 10 +- .../charts/spire-server/templates/roles.yaml | 4 +- .../templates/server-resource.yaml | 63 ++ .../spire-server/templates/service.yaml | 8 + charts/spire/charts/spire-server/values.yaml | 99 ++- examples/bottom-turtle-ha/README.md | 138 +++ examples/bottom-turtle-ha/diagram-cp.dot | 136 +++ examples/bottom-turtle-ha/diagram-cp.png | Bin 0 -> 172163 bytes examples/bottom-turtle-ha/diagram-worker.dot | 150 ++++ examples/bottom-turtle-ha/diagram-worker.png | Bin 0 -> 181352 bytes .../node1-k8s-spire-server.yaml | 12 + .../node1-spire-trust-sync-a.yaml | 9 + .../node1-spire-trust-sync-b.yaml | 9 + .../node2-k8s-spire-agent.yaml | 9 + .../node3-k8s-spire-agent.yaml | 9 + .../node4-k8s-spire-agent.yaml | 9 + examples/bottom-turtle-ha/final-pi5.jpg | Bin 0 -> 339897 bytes examples/bottom-turtle-ha/run-tests.sh | 293 +++++++ examples/bottom-turtle-ha/spire-values.yaml | 13 + .../integration/spiffe-step-ssh/run-tests.sh | 15 +- 38 files changed, 2274 insertions(+), 554 deletions(-) create mode 100644 examples/bottom-turtle-ha/README.md create mode 100644 examples/bottom-turtle-ha/diagram-cp.dot create mode 100644 examples/bottom-turtle-ha/diagram-cp.png create mode 100644 examples/bottom-turtle-ha/diagram-worker.dot create mode 100644 examples/bottom-turtle-ha/diagram-worker.png create mode 100644 examples/bottom-turtle-ha/example-manifests/node1-k8s-spire-server.yaml create mode 100644 examples/bottom-turtle-ha/example-manifests/node1-spire-trust-sync-a.yaml create mode 100644 examples/bottom-turtle-ha/example-manifests/node1-spire-trust-sync-b.yaml create mode 100644 examples/bottom-turtle-ha/example-manifests/node2-k8s-spire-agent.yaml create mode 100644 examples/bottom-turtle-ha/example-manifests/node3-k8s-spire-agent.yaml create mode 100644 examples/bottom-turtle-ha/example-manifests/node4-k8s-spire-agent.yaml create mode 100644 examples/bottom-turtle-ha/final-pi5.jpg create mode 100755 examples/bottom-turtle-ha/run-tests.sh create mode 100644 examples/bottom-turtle-ha/spire-values.yaml diff --git a/.github/kind/conf/kind-config.yaml b/.github/kind/conf/kind-config.yaml index 536dbcb..d98b5c6 100644 --- a/.github/kind/conf/kind-config.yaml +++ b/.github/kind/conf/kind-config.yaml @@ -15,6 +15,38 @@ kubeadmConfigPatches: # admission-control-config-file: /etc/kubernetes/pki/admctrl/admission-control.yaml nodes: - role: control-plane + extraMounts: + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public - role: worker + extraMounts: + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-agent-2-a/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-agent-a/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-agent-2-b/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-agent-b/public - role: worker + extraMounts: + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-agent-3-a/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-agent-a/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-agent-3-b/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-agent-b/public - role: worker + extraMounts: + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-agent-4-a/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-agent-a/public + - hostPath: /var/run/spiffe/socat/unix/k8s-spire-agent-4-b/public + containerPath: /var/run/spiffe/socat/unix/k8s-spire-agent-b/public diff --git a/.github/workflows/helm-chart-ci.yaml b/.github/workflows/helm-chart-ci.yaml index 15b6810..19de962 100644 --- a/.github/workflows/helm-chart-ci.yaml +++ b/.github/workflows/helm-chart-ci.yaml @@ -268,7 +268,7 @@ jobs: - name: Install and test example run: | - if [ "${{ matrix.example }}" = "examples/federation" -o "${{ matrix.example }}" = "examples/nested-full" -o "${{ matrix.example }}" = "examples/nested-security" ]; then + if [ "${{ matrix.example }}" = "examples/federation" -o "${{ matrix.example }}" = "examples/nested-full" -o "${{ matrix.example }}" = "examples/nested-security" -o "${{ matrix.example }}" = "examples/bottom-turtle-ha" ]; then kubectl create namespace spire-mgmt helm install -n spire-mgmt spire-crds charts/spire-crds else diff --git a/charts/spire-ha-agent/templates/daemonset.yaml b/charts/spire-ha-agent/templates/daemonset.yaml index b693d78..0708792 100644 --- a/charts/spire-ha-agent/templates/daemonset.yaml +++ b/charts/spire-ha-agent/templates/daemonset.yaml @@ -210,7 +210,7 @@ spec: hostPath: path: /dev - name: cid2pid - emtpyDir: {} + emptyDir: {} {{- if gt (len .Values.extraVolumes) 0 }} {{- toYaml .Values.extraVolumes | nindent 8 }} {{- end }} diff --git a/charts/spire-nested/Chart.yaml b/charts/spire-nested/Chart.yaml index fe7c203..e12c36a 100644 --- a/charts/spire-nested/Chart.yaml +++ b/charts/spire-nested/Chart.yaml @@ -4,7 +4,7 @@ description: > A Helm chart for deploying the complete Spire stack including: spire-server, spire-agent, spiffe-csi-driver, spiffe-oidc-discovery-provider and spire-controller-manager. type: application version: 0.28.5 -appVersion: "1.14.5" +appVersion: "1.15.1" keywords: ["spiffe", "spire", "spire-server", "spire-agent", "oidc", "spire-controller-manager"] home: https://github.com/spiffe/helm-charts-hardened/tree/main/charts/spire sources: @@ -124,6 +124,62 @@ dependencies: condition: spire-ha-agent.enabled tags: - haAgentCommon + - name: spire-server + alias: internal-spire-server-bottom-turtle-ha-a + condition: internal-spire-server-bottom-turtle-ha-a.enabled + tags: + - bottomTurtleHAA + repository: file://../spire/charts/spire-server + version: 0.1.0 + - name: spire-agent + alias: downstream-spire-agent-bottom-turtle-ha-a + condition: downstream-spire-agent-bottom-turtle-ha-a.enabled + tags: + - bottomTurtleHAA + repository: file://../spire/charts/spire-agent + version: 0.1.0 + - name: spiffe-csi-driver + alias: downstream-spiffe-csi-driver-bottom-turtle-ha-a + condition: downstream-spiffe-csi-driver-bottom-turtle-ha-a.enabled + tags: + - bottomTurtleHAA + repository: file://../spire/charts/spiffe-csi-driver + version: 0.1.0 + - name: spiffe-csi-driver + alias: upstream-spiffe-csi-driver-bottom-turtle-ha-a + condition: upstream-spiffe-csi-driver-bottom-turtle-ha-a.enabled + tags: + - bottomTurtleHAA + repository: file://../spire/charts/spiffe-csi-driver + version: 0.1.0 + - name: spire-server + alias: internal-spire-server-bottom-turtle-ha-b + condition: internal-spire-server-bottom-turtle-ha-b.enabled + tags: + - bottomTurtleHAB + repository: file://../spire/charts/spire-server + version: 0.1.0 + - name: spire-agent + alias: downstream-spire-agent-bottom-turtle-ha-b + condition: downstream-spire-agent-bottom-turtle-ha-b.enabled + tags: + - bottomTurtleHAB + repository: file://../spire/charts/spire-agent + version: 0.1.0 + - name: spiffe-csi-driver + alias: downstream-spiffe-csi-driver-bottom-turtle-ha-b + condition: downstream-spiffe-csi-driver-bottom-turtle-ha-b.enabled + tags: + - bottomTurtleHAB + repository: file://../spire/charts/spiffe-csi-driver + version: 0.1.0 + - name: spiffe-csi-driver + alias: upstream-spiffe-csi-driver-bottom-turtle-ha-b + condition: upstream-spiffe-csi-driver-bottom-turtle-ha-b.enabled + tags: + - bottomTurtleHAB + repository: file://../spire/charts/spiffe-csi-driver + version: 0.1.0 annotations: artifacthub.io/category: security artifacthub.io/license: Apache-2.0 diff --git a/charts/spire-nested/README.md b/charts/spire-nested/README.md index 41679f0..2405d23 100644 --- a/charts/spire-nested/README.md +++ b/charts/spire-nested/README.md @@ -1,6 +1,6 @@ # spire -![Version: 0.28.5](https://img.shields.io/badge/Version-0.28.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.14.5](https://img.shields.io/badge/AppVersion-1.14.5-informational?style=flat-square) +![Version: 0.28.5](https://img.shields.io/badge/Version-0.28.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.15.1](https://img.shields.io/badge/AppVersion-1.15.1-informational?style=flat-square) [![Development Phase](https://github.com/spiffe/spiffe/blob/main/.img/maturity/dev.svg)](https://github.com/spiffe/spiffe/blob/main/MATURITY.md#development) A Helm chart for deploying the complete Spire stack including: spire-server, spire-agent, spiffe-csi-driver, spiffe-oidc-discovery-provider and spire-controller-manager. @@ -234,6 +234,8 @@ Now you can interact with the Spire agent socket from your own application. The | `tags.nestedChildFull` | Set the chart mode to a child cluster with its own nested server | `false` | | `tags.nestedChildSecurity` | Set the chart mode to a child cluster for use with a security cluster | `false` | | `tags.haAgentCommon` | Set the chart mode to deploy the common portion of a spire-ha-agent setup | `false` | +| `tags.bottomTurtleHAA` | Setup HA side A for use with a Bottom Turtle architecture | `false` | +| `tags.bottomTurtleHAB` | Setup HA side B for use with a Bottom Turtle architecture | `false` | ### Spire agent parameters @@ -354,6 +356,137 @@ Now you can interact with the Spire agent socket from your own application. The | `external-spire-server.bundlePublisher.k8sConfigMap.enabled` | Enable local k8s bundle uploader | `false` | | `external-spire-server.nodeAttestor.k8sPSAT.enabled` | Enable PSAT k8s nodeattestor | `false` | | `external-spire-server.nodeAttestor.joinToken.enabled` | Enable the join_token nodeattestor | `true` | +| `spiffe-csi-driver.fullnameOverride` | Fullname override | `spiffe-csi-driver` | | `spiffe-csi-driver.agentSocketPath` | The socket path where Spiffe CSI driver mounts agent socket | `/var/run/spire/agent-sockets/spire-agent.sock` | | `spiffe-csi-driver.healthChecks.port` | Health check port number for upstream Spire agent | `9814` | -| `spire-ha-agent` | The configuration overrides for a spire-ha-agent | `{}` | +| `spire-ha-agent.fullnameOverride` | Fullname override | `spire-ha-agent` | + +### Upstream SPIFFE CSI Driver for Bottom Turtle HA A parameters + +| Name | Description | Value | +| --------------------------------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------------------- | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-a.fullnameOverride` | Fullname override | `spiffe-csi-driver-upstream-a` | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-a.pluginName` | The plugin name for configuring upstream Spiffe CSI driver | `upstream-a.csi.spiffe.io` | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-a.agentSocketPath` | The socket path where Spiffe CSI driver mounts agent socket | `/var/run/spiffe/socat/unix/k8s-spire-server-a/public/spire-agent.sock` | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-a.healthChecks.port` | The port where Spiffe CSI driver health checks are exposed | `9810` | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-a.validatingAdmissionPolicy.enabled` | Flag to enable validating policy | `true` | + +### Upstream SPIFFE CSI Driver for Bottom Turtle HA B parameters + +| Name | Description | Value | +| --------------------------------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------------------- | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-b.fullnameOverride` | Fullname override | `spiffe-csi-driver-upstream-b` | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-b.pluginName` | The plugin name for configuring upstream Spiffe CSI driver | `upstream-b.csi.spiffe.io` | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-b.agentSocketPath` | The socket path where Spiffe CSI driver mounts agent socket | `/var/run/spiffe/socat/unix/k8s-spire-server-b/public/spire-agent.sock` | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-b.healthChecks.port` | The port where Spiffe CSI driver health checks are exposed | `9812` | +| `upstream-spiffe-csi-driver-bottom-turtle-ha-b.validatingAdmissionPolicy.enabled` | Flag to enable validating policy | `true` | + +### Spire server parameters + +| Name | Description | Value | +| ------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `internal-spire-server-bottom-turtle-ha-a.nameOverride` | Overrides the name of Spire server pods | `internal-server` | +| `internal-spire-server-bottom-turtle-ha-a.caKeyType` | Key type to use for the ca | `ec-p256` | +| `internal-spire-server-bottom-turtle-ha-a.experimental.enabled` | enable experimental features | `true` | +| `internal-spire-server-bottom-turtle-ha-a.experimental.agentSPIFFEIDAsSelector` | enable adding spiffe_id selectors to all agents | `true` | +| `internal-spire-server-bottom-turtle-ha-a.dynamicRegistration.enabled` | Enable dynamic registration | `true` | +| `internal-spire-server-bottom-turtle-ha-a.dynamicRegistration.allowedIDPrefix` | The allowed ID prefix | `spire/agent/x509pop/k8s` | +| `internal-spire-server-bottom-turtle-ha-a.dynamicRegistration.serviceAccount` | The service account to allow in for dynamic registration | `spire-a-agent` | +| `internal-spire-server-bottom-turtle-ha-a.controllerManager.enabled` | Enable controller manager and provision CRD's | `true` | +| `internal-spire-server-bottom-turtle-ha-a.controllerManager.parentIDTemplate` | parent id template | `spiffe://{{ .TrustDomain }}/k8s_psat/{{ .ClusterName }}/{{ .NodeMeta.UID }}` | +| `internal-spire-server-bottom-turtle-ha-a.controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.autoPopulateDNSNames` | Auto populate dns entries | `false` | +| `internal-spire-server-bottom-turtle-ha-a.controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.type` | The type of the entry | `oidc-discovery-provider-common` | +| `internal-spire-server-bottom-turtle-ha-a.controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.enabled` | Enables the spire-ha-agent identity | `true` | +| `internal-spire-server-bottom-turtle-ha-a.persistence.type` | What type to use for peristence | `emptyDir` | +| `internal-spire-server-bottom-turtle-ha-a.nodeAttestor.k8sPSAT.enabled` | Enable the k8s projected access token node attestor | `false` | +| `internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.enabled` | Enable the x509 pop node attestor | `true` | +| `internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.svidPrefix` | What prefix to use when mode is spiffe | `/spire-exchange/k8s` | +| `internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.agentPathTemplate` | Override the default agent path template | `/{{ .PluginName }}/{{ .SVIDPathTrimmed }}/k8s` | +| `internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.addClusterName.svidPrefix` | Suffix the cluster name onto the svidPrefix | `true` | +| `internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.addClusterName.agentPathTemplate` | Suffix the cluster name onto the agentPathTemplate | `true` | +| `internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.enabled` | Enable upstream SPIRE server | `true` | +| `internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.upstreamDriver` | Use an upstream driver for authentication | `upstream-a.csi.spiffe.io` | +| `internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.server.nameOverride` | The name override setting of the root SPIRE server | `root-server` | +| `internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.server.address` | Address for upstream Spire server | `spire-server-a` | +| `internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.server.port` | The port setting of the root SPIRE server | `8081` | +| `internal-spire-server-bottom-turtle-ha-a.bundleConfigMap` | The name of the configmap to store the downstream bundle | `spire-server-a-bundle` | +| `internal-spire-server-bottom-turtle-ha-a.trustSync.enabled` | Enable trust syncing | `true` | +| `internal-spire-server-bottom-turtle-ha-a.trustSync.domains` | the trust domains to sync | `["spire-ha"]` | + +### Spire server parameters + +| Name | Description | Value | +| ------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `internal-spire-server-bottom-turtle-ha-b.nameOverride` | Overrides the name of Spire server pods | `internal-server` | +| `internal-spire-server-bottom-turtle-ha-b.caKeyType` | Key type to use for the ca | `ec-p256` | +| `internal-spire-server-bottom-turtle-ha-b.experimental.enabled` | enable experimental features | `true` | +| `internal-spire-server-bottom-turtle-ha-b.experimental.agentSPIFFEIDAsSelector` | enable adding spiffe_id selectors to all agents | `true` | +| `internal-spire-server-bottom-turtle-ha-b.dynamicRegistration.enabled` | Enable dynamic registration | `true` | +| `internal-spire-server-bottom-turtle-ha-b.dynamicRegistration.allowedIDPrefix` | The allowed ID prefix | `spire/agent/x509pop/k8s` | +| `internal-spire-server-bottom-turtle-ha-b.dynamicRegistration.serviceAccount` | The service account to allow in for dynamic registration | `spire-b-agent` | +| `internal-spire-server-bottom-turtle-ha-b.controllerManager.enabled` | Enable controller manager and provision CRD's | `true` | +| `internal-spire-server-bottom-turtle-ha-b.controllerManager.parentIDTemplate` | parent id template | `spiffe://{{ .TrustDomain }}/k8s_psat/{{ .ClusterName }}/{{ .NodeMeta.UID }}` | +| `internal-spire-server-bottom-turtle-ha-b.controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.autoPopulateDNSNames` | Auto populate dns entries | `false` | +| `internal-spire-server-bottom-turtle-ha-b.controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.type` | The type of the entry | `oidc-discovery-provider-common` | +| `internal-spire-server-bottom-turtle-ha-b.controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.enabled` | Enables the spire-ha-agent identity | `true` | +| `internal-spire-server-bottom-turtle-ha-b.persistence.type` | What type to use for peristence | `emptyDir` | +| `internal-spire-server-bottom-turtle-ha-b.nodeAttestor.k8sPSAT.enabled` | Enable the k8s projected access token node attestor | `false` | +| `internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.enabled` | Enable the x509 pop node attestor | `true` | +| `internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.svidPrefix` | What prefix to use when mode is spiffe | `/spire-exchange/k8s` | +| `internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.agentPathTemplate` | Override the default agent path template | `/{{ .PluginName }}/{{ .SVIDPathTrimmed }}/k8s` | +| `internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.addClusterName.svidPrefix` | Suffix the cluster name onto the svidPrefix | `true` | +| `internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.addClusterName.agentPathTemplate` | Suffix the cluster name onto the agentPathTemplate | `true` | +| `internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.enabled` | Enable upstream SPIRE server | `true` | +| `internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.upstreamDriver` | Use an upstream driver for authentication | `upstream-b.csi.spiffe.io` | +| `internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.server.nameOverride` | The name override setting of the root SPIRE server | `root-server` | +| `internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.server.address` | Address for upstream Spire server | `spire-server-b` | +| `internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.server.port` | The port setting of the root SPIRE server | `8081` | +| `internal-spire-server-bottom-turtle-ha-b.bundleConfigMap` | The name of the configmap to store the downstream bundle | `spire-server-b-bundle` | +| `internal-spire-server-bottom-turtle-ha-b.trustSync.enabled` | Enable trust syncing | `true` | +| `internal-spire-server-bottom-turtle-ha-b.trustSync.domains` | the trust domains to sync | `["spire-ha"]` | +| `downstream-spire-agent-bottom-turtle-ha-a.nameOverride` | Overrides the name of Spire agent pods | `agent-downstream` | +| `downstream-spire-agent-bottom-turtle-ha-a.server.nameOverride` | The name override setting of the internal SPIRE server | `internal-server` | +| `downstream-spire-agent-bottom-turtle-ha-a.bundleConfigMap` | The name of the configmap that contains the downstream bundle | `spire-server-a-bundle` | +| `downstream-spire-agent-bottom-turtle-ha-a.persistence.hostPath` | Which path to use on the host when persistence.type = hostPath | `/var/lib/spire/k8s/downstream-agent-a` | +| `downstream-spire-agent-bottom-turtle-ha-a.dynamicRegistration.enabled` | Enable dynamic registration | `true` | +| `downstream-spire-agent-bottom-turtle-ha-a.dynamicRegistration.nameOverride` | The name override to use to contact the server | `internal-server` | +| `downstream-spire-agent-bottom-turtle-ha-a.nodeAttestor.k8sPSAT.enabled` | Enable the k8s projected access token node attestor | `false` | +| `downstream-spire-agent-bottom-turtle-ha-a.nodeAttestor.x509POP.enabled` | Enable the x509 pop node attestor | `true` | +| `downstream-spire-agent-bottom-turtle-ha-a.nodeAttestor.x509POP.spiffeEndpointSocket` | Where the socket is to use for mode spiffe | `/var/run/spiffe/socat/unix/k8s-spire-agent-a/public/api.sock` | +| `downstream-spire-agent-bottom-turtle-ha-a.keyManager.memory.enabled` | Enable the memory based Key Manager | `false` | +| `downstream-spire-agent-bottom-turtle-ha-a.keyManager.disk.enabled` | Enable the disk key manager | `true` | +| `downstream-spire-agent-bottom-turtle-ha-a.keyManager.disk.mode` | Where the disk plugin will write out its data | `emptyDir` | +| `downstream-spire-agent-bottom-turtle-ha-a.healthChecks.port` | Health check port | `9981` | +| `downstream-spire-agent-bottom-turtle-ha-a.telemetry.prometheus.port` | Prometheus port to use | `9989` | +| `downstream-spire-agent-bottom-turtle-ha-a.socketPath` | Socket path to use | `/var/run/spire/agent/sockets/a/csi.spiffe.io/public/spire-agent.sock` | +| `downstream-spire-agent-bottom-turtle-ha-a.sockets.hostBasePath` | Path on the host to place sockets | `/var/run/spire/agent/sockets/a` | +| `downstream-spire-agent-bottom-turtle-ha-a.sockets.admin.enabled` | Enable admin socket | `true` | +| `downstream-spire-agent-bottom-turtle-ha-a.sockets.admin.mountOnHost` | Mount admin socket on host | `true` | +| `downstream-spire-agent-bottom-turtle-ha-a.authorizedDelegates` | List of workloads able to use the delegation api | `["/spire-ha-agent"]` | +| `downstream-spire-agent-bottom-turtle-ha-b.nameOverride` | Overrides the name of Spire agent pods | `agent-downstream` | +| `downstream-spire-agent-bottom-turtle-ha-b.server.nameOverride` | The name override setting of the internal SPIRE server | `internal-server` | +| `downstream-spire-agent-bottom-turtle-ha-b.bundleConfigMap` | The name of the configmap that contains the downstream bundle | `spire-server-b-bundle` | +| `downstream-spire-agent-bottom-turtle-ha-b.persistence.hostPath` | Which path to use on the host when persistence.type = hostPath | `/var/lib/spire/k8s/downstream-agent-b` | +| `downstream-spire-agent-bottom-turtle-ha-b.dynamicRegistration.enabled` | Enable dynamic registration | `true` | +| `downstream-spire-agent-bottom-turtle-ha-b.dynamicRegistration.nameOverride` | The name override to use to contact the server | `internal-server` | +| `downstream-spire-agent-bottom-turtle-ha-b.nodeAttestor.k8sPSAT.enabled` | Enable the k8s projected access token node attestor | `false` | +| `downstream-spire-agent-bottom-turtle-ha-b.nodeAttestor.x509POP.enabled` | Enable the x509 pop node attestor | `true` | +| `downstream-spire-agent-bottom-turtle-ha-b.nodeAttestor.x509POP.spiffeEndpointSocket` | Where the socket is to use for mode spiffe | `/var/run/spiffe/socat/unix/k8s-spire-agent-b/public/api.sock` | +| `downstream-spire-agent-bottom-turtle-ha-b.keyManager.memory.enabled` | Enable the memory based Key Manager | `false` | +| `downstream-spire-agent-bottom-turtle-ha-b.keyManager.disk.enabled` | Enable the disk key manager | `true` | +| `downstream-spire-agent-bottom-turtle-ha-b.keyManager.disk.mode` | Where the disk plugin will write out its data | `emptyDir` | +| `downstream-spire-agent-bottom-turtle-ha-b.healthChecks.port` | Health check port | `9982` | +| `downstream-spire-agent-bottom-turtle-ha-b.telemetry.prometheus.port` | Prometheus port to use | `9990` | +| `downstream-spire-agent-bottom-turtle-ha-b.socketPath` | Socket path to use | `/var/run/spire/agent/sockets/b/csi.spiffe.io/public/spire-agent.sock` | +| `downstream-spire-agent-bottom-turtle-ha-b.sockets.hostBasePath` | Path on the host to place sockets | `/var/run/spire/agent/sockets/b` | +| `downstream-spire-agent-bottom-turtle-ha-b.sockets.admin.enabled` | Enable admin socket | `true` | +| `downstream-spire-agent-bottom-turtle-ha-b.sockets.admin.mountOnHost` | Mount admin socket on host | `true` | +| `downstream-spire-agent-bottom-turtle-ha-b.authorizedDelegates` | List of workloads able to use the delegation api | `["/spire-ha-agent"]` | +| `downstream-spiffe-csi-driver-bottom-turtle-ha-a.fullnameOverride` | Fullname override | `spiffe-csi-driver-downstream-a` | +| `downstream-spiffe-csi-driver-bottom-turtle-ha-a.agentSocketPath` | path to agent socket | `/var/run/spire/agent/sockets/a/csi.spiffe.io/public/spire-agent.sock` | +| `downstream-spiffe-csi-driver-bottom-turtle-ha-a.pluginName` | The name of the plugin instance | `a.csi.spiffe.io` | +| `downstream-spiffe-csi-driver-bottom-turtle-ha-a.healthChecks.port` | The health check port | `9814` | +| `downstream-spiffe-csi-driver-bottom-turtle-ha-b.fullnameOverride` | Fullname override | `spiffe-csi-driver-downstream-b` | +| `downstream-spiffe-csi-driver-bottom-turtle-ha-b.agentSocketPath` | path to agent socket | `/var/run/spire/agent/sockets/b/csi.spiffe.io/public/spire-agent.sock` | +| `downstream-spiffe-csi-driver-bottom-turtle-ha-b.pluginName` | The name of the plugin instance | `b.csi.spiffe.io` | +| `downstream-spiffe-csi-driver-bottom-turtle-ha-b.healthChecks.port` | The health check port | `9816` | diff --git a/charts/spire-nested/values.yaml b/charts/spire-nested/values.yaml index 4644702..f380094 100644 --- a/charts/spire-nested/values.yaml +++ b/charts/spire-nested/values.yaml @@ -103,6 +103,10 @@ tags: nestedChildSecurity: false ## @param tags.haAgentCommon Set the chart mode to deploy the common portion of a spire-ha-agent setup haAgentCommon: false + ## @param tags.bottomTurtleHAA Setup HA side A for use with a Bottom Turtle architecture + bottomTurtleHAA: false + ## @param tags.bottomTurtleHAB Setup HA side B for use with a Bottom Turtle architecture + bottomTurtleHAB: false ## subcharts @@ -401,13 +405,350 @@ external-spire-server: # Used with tags [haAgentCommon] spiffe-csi-driver: # enabled: true + ## @param spiffe-csi-driver.fullnameOverride Fullname override + fullnameOverride: spiffe-csi-driver ## @param spiffe-csi-driver.agentSocketPath The socket path where Spiffe CSI driver mounts agent socket agentSocketPath: /var/run/spire/agent-sockets/spire-agent.sock healthChecks: ## @param spiffe-csi-driver.healthChecks.port Health check port number for upstream Spire agent port: 9814 -## @param spire-ha-agent The configuration overrides for a spire-ha-agent # Used with tags [haAgentCommon] -spire-ha-agent: {} +spire-ha-agent: # enabled: true + ## @param spire-ha-agent.fullnameOverride Fullname override + fullnameOverride: spire-ha-agent + +## @section Upstream SPIFFE CSI Driver for Bottom Turtle HA A parameters +## Parameter values for upstream spiffe-csi-driver-bottom-turtle-ha-a +## +# Used with tags [bottomTurtleHAA] +upstream-spiffe-csi-driver-bottom-turtle-ha-a: + # enabled: true + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-a.fullnameOverride Fullname override + fullnameOverride: spiffe-csi-driver-upstream-a + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-a.pluginName The plugin name for configuring upstream Spiffe CSI driver + pluginName: upstream-a.csi.spiffe.io + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-a.agentSocketPath The socket path where Spiffe CSI driver mounts agent socket + agentSocketPath: /var/run/spiffe/socat/unix/k8s-spire-server-a/public/spire-agent.sock + healthChecks: + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-a.healthChecks.port The port where Spiffe CSI driver health checks are exposed + port: 9810 + validatingAdmissionPolicy: + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-a.validatingAdmissionPolicy.enabled Flag to enable validating policy + enabled: true + +## @section Upstream SPIFFE CSI Driver for Bottom Turtle HA B parameters +## Parameter values for upstream spiffe-csi-driver-bottom-turtle-ha-b +## +# Used with tags [bottomTurtleHAB] +upstream-spiffe-csi-driver-bottom-turtle-ha-b: + # enabled: true + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-b.fullnameOverride Fullname override + fullnameOverride: spiffe-csi-driver-upstream-b + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-b.pluginName The plugin name for configuring upstream Spiffe CSI driver + pluginName: upstream-b.csi.spiffe.io + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-b.agentSocketPath The socket path where Spiffe CSI driver mounts agent socket + agentSocketPath: /var/run/spiffe/socat/unix/k8s-spire-server-b/public/spire-agent.sock + healthChecks: + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-b.healthChecks.port The port where Spiffe CSI driver health checks are exposed + port: 9812 + validatingAdmissionPolicy: + ## @param upstream-spiffe-csi-driver-bottom-turtle-ha-b.validatingAdmissionPolicy.enabled Flag to enable validating policy + enabled: true + +## @section Spire server parameters +## Parameter values for Spire server +## +# Used with tags [bottomTurtleHAA] +internal-spire-server-bottom-turtle-ha-a: + # enabled: true + ## @param internal-spire-server-bottom-turtle-ha-a.nameOverride Overrides the name of Spire server pods + nameOverride: internal-server + ## @param internal-spire-server-bottom-turtle-ha-a.caKeyType Key type to use for the ca + caKeyType: ec-p256 + experimental: + ## @param internal-spire-server-bottom-turtle-ha-a.experimental.enabled enable experimental features + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-a.experimental.agentSPIFFEIDAsSelector enable adding spiffe_id selectors to all agents + agentSPIFFEIDAsSelector: true + dynamicRegistration: + ## @param internal-spire-server-bottom-turtle-ha-a.dynamicRegistration.enabled Enable dynamic registration + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-a.dynamicRegistration.allowedIDPrefix The allowed ID prefix + allowedIDPrefix: "spire/agent/x509pop/k8s" + ## @param internal-spire-server-bottom-turtle-ha-a.dynamicRegistration.serviceAccount The service account to allow in for dynamic registration + serviceAccount: spire-a-agent + controllerManager: + ## @param internal-spire-server-bottom-turtle-ha-a.controllerManager.enabled Enable controller manager and provision CRD's + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-a.controllerManager.parentIDTemplate parent id template + parentIDTemplate: "spiffe://{{ .TrustDomain }}/k8s_psat/{{ .ClusterName }}/{{ .NodeMeta.UID }}" + identities: + clusterSPIFFEIDs: + oidc-discovery-provider: + ## @param internal-spire-server-bottom-turtle-ha-a.controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.autoPopulateDNSNames Auto populate dns entries + autoPopulateDNSNames: false + ## @param internal-spire-server-bottom-turtle-ha-a.controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.type The type of the entry + type: oidc-discovery-provider-common + spire-ha-agent: + ## @param internal-spire-server-bottom-turtle-ha-a.controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.enabled Enables the spire-ha-agent identity + enabled: true + persistence: + ## @param internal-spire-server-bottom-turtle-ha-a.persistence.type What type to use for peristence + type: emptyDir + nodeAttestor: + k8sPSAT: + ## @param internal-spire-server-bottom-turtle-ha-a.nodeAttestor.k8sPSAT.enabled Enable the k8s projected access token node attestor + enabled: false + x509POP: + ## @param internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.enabled Enable the x509 pop node attestor + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.svidPrefix What prefix to use when mode is spiffe + svidPrefix: /spire-exchange/k8s + ## @param internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.agentPathTemplate Override the default agent path template + agentPathTemplate: "/{{ .PluginName }}/{{ .SVIDPathTrimmed }}/k8s" + addClusterName: + ## @param internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.addClusterName.svidPrefix Suffix the cluster name onto the svidPrefix + svidPrefix: true + ## @param internal-spire-server-bottom-turtle-ha-a.nodeAttestor.x509POP.addClusterName.agentPathTemplate Suffix the cluster name onto the agentPathTemplate + agentPathTemplate: true + upstreamAuthority: + spire: + ## @param internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.enabled Enable upstream SPIRE server + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.upstreamDriver Use an upstream driver for authentication + upstreamDriver: upstream-a.csi.spiffe.io + server: + ## @param internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.server.nameOverride The name override setting of the root SPIRE server + nameOverride: root-server + ## @param internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.server.address Address for upstream Spire server + address: "spire-server-a" + ## @param internal-spire-server-bottom-turtle-ha-a.upstreamAuthority.spire.server.port The port setting of the root SPIRE server + port: 8081 + ## @param internal-spire-server-bottom-turtle-ha-a.bundleConfigMap The name of the configmap to store the downstream bundle + bundleConfigMap: spire-server-a-bundle + trustSync: + ## @param internal-spire-server-bottom-turtle-ha-a.trustSync.enabled Enable trust syncing + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-a.trustSync.domains the trust domains to sync + domains: + - spire-ha + +## @section Spire server parameters +## Parameter values for Spire server +## +# Used with tags [bottomTurtleHAB] +internal-spire-server-bottom-turtle-ha-b: + # enabled: true + ## @param internal-spire-server-bottom-turtle-ha-b.nameOverride Overrides the name of Spire server pods + nameOverride: internal-server + ## @param internal-spire-server-bottom-turtle-ha-b.caKeyType Key type to use for the ca + caKeyType: ec-p256 + experimental: + ## @param internal-spire-server-bottom-turtle-ha-b.experimental.enabled enable experimental features + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-b.experimental.agentSPIFFEIDAsSelector enable adding spiffe_id selectors to all agents + agentSPIFFEIDAsSelector: true + dynamicRegistration: + ## @param internal-spire-server-bottom-turtle-ha-b.dynamicRegistration.enabled Enable dynamic registration + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-b.dynamicRegistration.allowedIDPrefix The allowed ID prefix + allowedIDPrefix: "spire/agent/x509pop/k8s" + ## @param internal-spire-server-bottom-turtle-ha-b.dynamicRegistration.serviceAccount The service account to allow in for dynamic registration + serviceAccount: spire-b-agent + controllerManager: + ## @param internal-spire-server-bottom-turtle-ha-b.controllerManager.enabled Enable controller manager and provision CRD's + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-b.controllerManager.parentIDTemplate parent id template + parentIDTemplate: "spiffe://{{ .TrustDomain }}/k8s_psat/{{ .ClusterName }}/{{ .NodeMeta.UID }}" + identities: + clusterSPIFFEIDs: + oidc-discovery-provider: + ## @param internal-spire-server-bottom-turtle-ha-b.controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.autoPopulateDNSNames Auto populate dns entries + autoPopulateDNSNames: false + ## @param internal-spire-server-bottom-turtle-ha-b.controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.type The type of the entry + type: oidc-discovery-provider-common + spire-ha-agent: + ## @param internal-spire-server-bottom-turtle-ha-b.controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.enabled Enables the spire-ha-agent identity + enabled: true + persistence: + ## @param internal-spire-server-bottom-turtle-ha-b.persistence.type What type to use for peristence + type: emptyDir + nodeAttestor: + k8sPSAT: + ## @param internal-spire-server-bottom-turtle-ha-b.nodeAttestor.k8sPSAT.enabled Enable the k8s projected access token node attestor + enabled: false + x509POP: + ## @param internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.enabled Enable the x509 pop node attestor + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.svidPrefix What prefix to use when mode is spiffe + svidPrefix: /spire-exchange/k8s + ## @param internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.agentPathTemplate Override the default agent path template + agentPathTemplate: "/{{ .PluginName }}/{{ .SVIDPathTrimmed }}/k8s" + addClusterName: + ## @param internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.addClusterName.svidPrefix Suffix the cluster name onto the svidPrefix + svidPrefix: true + ## @param internal-spire-server-bottom-turtle-ha-b.nodeAttestor.x509POP.addClusterName.agentPathTemplate Suffix the cluster name onto the agentPathTemplate + agentPathTemplate: true + upstreamAuthority: + spire: + ## @param internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.enabled Enable upstream SPIRE server + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.upstreamDriver Use an upstream driver for authentication + upstreamDriver: upstream-b.csi.spiffe.io + server: + ## @param internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.server.nameOverride The name override setting of the root SPIRE server + nameOverride: root-server + ## @param internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.server.address Address for upstream Spire server + address: "spire-server-b" + ## @param internal-spire-server-bottom-turtle-ha-b.upstreamAuthority.spire.server.port The port setting of the root SPIRE server + port: 8081 + ## @param internal-spire-server-bottom-turtle-ha-b.bundleConfigMap The name of the configmap to store the downstream bundle + bundleConfigMap: spire-server-b-bundle + trustSync: + ## @param internal-spire-server-bottom-turtle-ha-b.trustSync.enabled Enable trust syncing + enabled: true + ## @param internal-spire-server-bottom-turtle-ha-b.trustSync.domains the trust domains to sync + domains: + - spire-ha + +# Used with tags [bottomTurtleHAA] +downstream-spire-agent-bottom-turtle-ha-a: + # enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-a.nameOverride Overrides the name of Spire agent pods + nameOverride: agent-downstream + server: + ## @param downstream-spire-agent-bottom-turtle-ha-a.server.nameOverride The name override setting of the internal SPIRE server + nameOverride: internal-server + ## @param downstream-spire-agent-bottom-turtle-ha-a.bundleConfigMap The name of the configmap that contains the downstream bundle + bundleConfigMap: spire-server-a-bundle + ## @param downstream-spire-agent-bottom-turtle-ha-a.persistence.hostPath Which path to use on the host when persistence.type = hostPath + persistence: + hostPath: /var/lib/spire/k8s/downstream-agent-a + dynamicRegistration: + ## @param downstream-spire-agent-bottom-turtle-ha-a.dynamicRegistration.enabled Enable dynamic registration + enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-a.dynamicRegistration.nameOverride The name override to use to contact the server + nameOverride: internal-server + nodeAttestor: + k8sPSAT: + ## @param downstream-spire-agent-bottom-turtle-ha-a.nodeAttestor.k8sPSAT.enabled Enable the k8s projected access token node attestor + enabled: false + x509POP: + ## @param downstream-spire-agent-bottom-turtle-ha-a.nodeAttestor.x509POP.enabled Enable the x509 pop node attestor + enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-a.nodeAttestor.x509POP.spiffeEndpointSocket Where the socket is to use for mode spiffe + spiffeEndpointSocket: /var/run/spiffe/socat/unix/k8s-spire-agent-a/public/api.sock + keyManager: + memory: + ## @param downstream-spire-agent-bottom-turtle-ha-a.keyManager.memory.enabled Enable the memory based Key Manager + enabled: false + disk: + ## @param downstream-spire-agent-bottom-turtle-ha-a.keyManager.disk.enabled Enable the disk key manager + enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-a.keyManager.disk.mode Where the disk plugin will write out its data + mode: emptyDir + healthChecks: + ## @param downstream-spire-agent-bottom-turtle-ha-a.healthChecks.port Health check port + port: 9981 + telemetry: + prometheus: + ## @param downstream-spire-agent-bottom-turtle-ha-a.telemetry.prometheus.port Prometheus port to use + port: 9989 + ## @param downstream-spire-agent-bottom-turtle-ha-a.socketPath Socket path to use + socketPath: /var/run/spire/agent/sockets/a/csi.spiffe.io/public/spire-agent.sock + sockets: + ## @param downstream-spire-agent-bottom-turtle-ha-a.sockets.hostBasePath Path on the host to place sockets + hostBasePath: /var/run/spire/agent/sockets/a + admin: + ## @param downstream-spire-agent-bottom-turtle-ha-a.sockets.admin.enabled Enable admin socket + enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-a.sockets.admin.mountOnHost Mount admin socket on host + mountOnHost: true + ## @param downstream-spire-agent-bottom-turtle-ha-a.authorizedDelegates List of workloads able to use the delegation api + authorizedDelegates: + - /spire-ha-agent + +# Used with tags [bottomTurtleHAB] +downstream-spire-agent-bottom-turtle-ha-b: + # enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-b.nameOverride Overrides the name of Spire agent pods + nameOverride: agent-downstream + server: + ## @param downstream-spire-agent-bottom-turtle-ha-b.server.nameOverride The name override setting of the internal SPIRE server + nameOverride: internal-server + ## @param downstream-spire-agent-bottom-turtle-ha-b.bundleConfigMap The name of the configmap that contains the downstream bundle + bundleConfigMap: spire-server-b-bundle + ## @param downstream-spire-agent-bottom-turtle-ha-b.persistence.hostPath Which path to use on the host when persistence.type = hostPath + persistence: + hostPath: /var/lib/spire/k8s/downstream-agent-b + dynamicRegistration: + ## @param downstream-spire-agent-bottom-turtle-ha-b.dynamicRegistration.enabled Enable dynamic registration + enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-b.dynamicRegistration.nameOverride The name override to use to contact the server + nameOverride: internal-server + nodeAttestor: + k8sPSAT: + ## @param downstream-spire-agent-bottom-turtle-ha-b.nodeAttestor.k8sPSAT.enabled Enable the k8s projected access token node attestor + enabled: false + x509POP: + ## @param downstream-spire-agent-bottom-turtle-ha-b.nodeAttestor.x509POP.enabled Enable the x509 pop node attestor + enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-b.nodeAttestor.x509POP.spiffeEndpointSocket Where the socket is to use for mode spiffe + spiffeEndpointSocket: /var/run/spiffe/socat/unix/k8s-spire-agent-b/public/api.sock + keyManager: + memory: + ## @param downstream-spire-agent-bottom-turtle-ha-b.keyManager.memory.enabled Enable the memory based Key Manager + enabled: false + disk: + ## @param downstream-spire-agent-bottom-turtle-ha-b.keyManager.disk.enabled Enable the disk key manager + enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-b.keyManager.disk.mode Where the disk plugin will write out its data + mode: emptyDir + healthChecks: + ## @param downstream-spire-agent-bottom-turtle-ha-b.healthChecks.port Health check port + port: 9982 + telemetry: + prometheus: + ## @param downstream-spire-agent-bottom-turtle-ha-b.telemetry.prometheus.port Prometheus port to use + port: 9990 + ## @param downstream-spire-agent-bottom-turtle-ha-b.socketPath Socket path to use + socketPath: /var/run/spire/agent/sockets/b/csi.spiffe.io/public/spire-agent.sock + sockets: + ## @param downstream-spire-agent-bottom-turtle-ha-b.sockets.hostBasePath Path on the host to place sockets + hostBasePath: /var/run/spire/agent/sockets/b + admin: + ## @param downstream-spire-agent-bottom-turtle-ha-b.sockets.admin.enabled Enable admin socket + enabled: true + ## @param downstream-spire-agent-bottom-turtle-ha-b.sockets.admin.mountOnHost Mount admin socket on host + mountOnHost: true + ## @param downstream-spire-agent-bottom-turtle-ha-b.authorizedDelegates List of workloads able to use the delegation api + authorizedDelegates: + - /spire-ha-agent + +# Used with tags [bottomTurtleHAA] +downstream-spiffe-csi-driver-bottom-turtle-ha-a: + # enabled: true + ## @param downstream-spiffe-csi-driver-bottom-turtle-ha-a.fullnameOverride Fullname override + fullnameOverride: spiffe-csi-driver-downstream-a + ## @param downstream-spiffe-csi-driver-bottom-turtle-ha-a.agentSocketPath path to agent socket + agentSocketPath: /var/run/spire/agent/sockets/a/csi.spiffe.io/public/spire-agent.sock + ## @param downstream-spiffe-csi-driver-bottom-turtle-ha-a.pluginName The name of the plugin instance + pluginName: a.csi.spiffe.io + healthChecks: + ## @param downstream-spiffe-csi-driver-bottom-turtle-ha-a.healthChecks.port The health check port + port: 9814 + +# Used with tags [bottomTurtleHAB] +downstream-spiffe-csi-driver-bottom-turtle-ha-b: + # enabled: true + ## @param downstream-spiffe-csi-driver-bottom-turtle-ha-b.fullnameOverride Fullname override + fullnameOverride: spiffe-csi-driver-downstream-b + ## @param downstream-spiffe-csi-driver-bottom-turtle-ha-b.agentSocketPath path to agent socket + agentSocketPath: /var/run/spire/agent/sockets/b/csi.spiffe.io/public/spire-agent.sock + ## @param downstream-spiffe-csi-driver-bottom-turtle-ha-b.pluginName The name of the plugin instance + pluginName: b.csi.spiffe.io + healthChecks: + ## @param downstream-spiffe-csi-driver-bottom-turtle-ha-b.healthChecks.port The health check port + port: 9816 diff --git a/charts/spire/README.md b/charts/spire/README.md index c45fd11..5716fa7 100644 --- a/charts/spire/README.md +++ b/charts/spire/README.md @@ -1,6 +1,6 @@ # spire -![Version: 0.28.5](https://img.shields.io/badge/Version-0.28.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.14.5](https://img.shields.io/badge/AppVersion-1.14.5-informational?style=flat-square) +![Version: 0.28.5](https://img.shields.io/badge/Version-0.28.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.15.1](https://img.shields.io/badge/AppVersion-1.15.1-informational?style=flat-square) [![Development Phase](https://github.com/spiffe/spiffe/blob/main/.img/maturity/dev.svg)](https://github.com/spiffe/spiffe/blob/main/MATURITY.md#development) A Helm chart for deploying the complete Spire stack including: spire-server, spire-agent, spiffe-csi-driver, spiffe-oidc-discovery-provider and spire-controller-manager. diff --git a/charts/spire/charts/spiffe-oidc-discovery-provider/Chart.yaml b/charts/spire/charts/spiffe-oidc-discovery-provider/Chart.yaml index a246ae5..cbcc808 100644 --- a/charts/spire/charts/spiffe-oidc-discovery-provider/Chart.yaml +++ b/charts/spire/charts/spiffe-oidc-discovery-provider/Chart.yaml @@ -3,7 +3,7 @@ name: spiffe-oidc-discovery-provider description: A Helm chart to install the SPIFFE OIDC discovery provider. type: application version: 0.1.0 -appVersion: "1.14.5" +appVersion: "1.15.1" keywords: ["spiffe", "oidc"] home: https://github.com/spiffe/helm-charts-hardened/tree/main/charts/spire sources: diff --git a/charts/spire/charts/spire-agent/Chart.yaml b/charts/spire/charts/spire-agent/Chart.yaml index 32255f5..004c3dd 100644 --- a/charts/spire/charts/spire-agent/Chart.yaml +++ b/charts/spire/charts/spire-agent/Chart.yaml @@ -3,7 +3,7 @@ name: spire-agent description: A Helm chart to install the SPIRE agent. type: application version: 0.1.0 -appVersion: "1.14.5" +appVersion: "1.15.1" keywords: ["spiffe", "spire-agent"] home: https://github.com/spiffe/helm-charts-hardened/tree/main/charts/spire sources: diff --git a/charts/spire/charts/spire-agent/README.md b/charts/spire/charts/spire-agent/README.md index 0d6103b..bac3e38 100644 --- a/charts/spire/charts/spire-agent/README.md +++ b/charts/spire/charts/spire-agent/README.md @@ -25,134 +25,148 @@ A Helm chart to install the SPIRE agent. ### Chart parameters -| Name | Description | Value | -| ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `image.registry` | The OCI registry to pull the image from | `ghcr.io` | -| `image.repository` | The repository within the registry | `spiffe/spire-agent` | -| `image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `image.tag` | Overrides the image tag whose default is the chart appVersion | `""` | -| `imagePullSecrets` | Pull secrets for images | `[]` | -| `nameOverride` | Name override | `""` | -| `namespaceOverride` | Namespace override | `""` | -| `fullnameOverride` | Fullname override | `""` | -| `serviceAccount.create` | Specifies whether a service account should be created | `true` | -| `serviceAccount.annotations` | Annotations to add to the service account | `{}` | -| `serviceAccount.name` | The name of the service account to use. | `""` | -| `configMap.annotations` | Annotations to add to the SPIRE Agent ConfigMap | `{}` | -| `podAnnotations` | Annotations to add to pods | `{}` | -| `podLabels` | Labels to add to pods | `{}` | -| `podSecurityContext` | Pod security context | `{}` | -| `securityContext` | Security context | `{}` | -| `resources` | Resource requests and limits for the spire-agent container and all its initContainers | `{}` | -| `nodeSelector` | Node selector | `{}` | -| `tolerations` | List of tolerations | `[]` | -| `affinity` | Node affinity | `{}` | -| `authorizedDelegates` | A list of the authorized delegates SPIFFE IDs. See Delegated Identity API for more information. | `[]` | -| `logLevel` | The log level, valid values are "debug", "info", "warn", and "error" | `info` | -| `logFormat` | The log format, valid values are "text" and "json" | `text` | -| `clusterName` | The name of the Kubernetes cluster (`kubeadm init --service-dns-domain`) | `example-cluster` | -| `trustDomain` | The trust domain to be used for the SPIFFE identifiers | `example.org` | -| `trustBundleURL` | If set, obtain trust bundle from url instead of Kubernetes ConfigMap | `""` | -| `trustBundleFormat` | If using trustBundleURL, what format is the url. Choices are "pem" and "spiffe" | `spiffe` | -| `trustBundleHostPath` | If set, obtain trust bundle from a file on the host instead of from the ConfigMap | `""` | -| `bundleConfigMap` | Configmap name for Spire bundle | `spire-bundle` | -| `availabilityTarget` | The minimum amount of time desired to gracefully handle SPIRE Server or Agent downtime. This configurable influences how aggressively X509 SVIDs should be rotated. If set, must be at least 24h. | `""` | -| `rebootstrapMode` | How the agent will behave when seeing an unknown x509 cert from the server. It can be set to never, auto, or always | `always` | -| `rebootstrapDelay` | The agent will rebootstrap after configured amount of time on unknown x509 cert from the server | `10m` | -| `server.address` | Address for Spire server | `""` | -| `server.port` | Port number for Spire server | `443` | -| `server.namespaceOverride` | Override the namespace for Spire server | `""` | -| `server.nameOverride` | Override the name for Spire server. Should only be changed when building your own nested chart to ensure names align. | `""` | -| `healthChecks.port` | override the host port used for health checking | `9982` | -| `updateStrategy.type` | The update strategy to use to replace existing DaemonSet pods with new pods. Can be RollingUpdate or OnDelete. | `RollingUpdate` | -| `updateStrategy.rollingUpdate.maxUnavailable` | Max unavailable pods during update. Can be a number or a percentage. | `1` | -| `livenessProbe.initialDelaySeconds` | Initial delay seconds for probe | `15` | -| `livenessProbe.periodSeconds` | Period seconds for probe | `60` | -| `readinessProbe.initialDelaySeconds` | Initial delay seconds for probe | `10` | -| `readinessProbe.periodSeconds` | Period seconds for probe | `30` | -| `fsGroupFix.image.registry` | The OCI registry to pull the image from | `cgr.dev` | -| `fsGroupFix.image.repository` | The repository within the registry | `chainguard/bash` | -| `fsGroupFix.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `fsGroupFix.image.tag` | Overrides the image tag whose default is the chart appVersion | `latest@sha256:90041f375e30f41aa7e0390075d8a69dc61900771d52fa98d63ee5d03d866a58` | -| `keyManager.memory.enabled` | Enable the memory based Key Manager | `true` | -| `keyManager.disk.enabled` | Enable the disk based Key Manager (must have persistence.type set to hostPath when enabled) | `false` | -| `nodeAttestor.k8sPSAT.enabled` | Enable PSAT k8s Node Attestor | `true` | -| `nodeAttestor.httpChallenge.enabled` | Enable the http challenge Node Attestor | `false` | -| `nodeAttestor.httpChallenge.agentname` | Name of this agent. Useful if you have multiple agents bound to different spire servers on the same host and sharing the same port. | `default` | -| `nodeAttestor.httpChallenge.port` | The port to listen on. If 0, a random value will be used. | `0` | -| `nodeAttestor.httpChallenge.advertisedPort` | The port to tell the server to call back on. Set only if your using an http proxy on the hosts. If 0, will use the port setting. | `0` | -| `nodeAttestor.tpmDirect.enabled` | Enable the direct TPM node attestor, a 3rd party plugin by Boxboat. This plugin is experimental. | `false` | -| `nodeAttestor.tpmDirect.plugin.image.registry` | The OCI registry to pull the image from | `ghcr.io` | -| `nodeAttestor.tpmDirect.plugin.image.repository` | The repository within the registry | `spiffe/spire-tpm-plugin-tpm-attestor-agent` | -| `nodeAttestor.tpmDirect.plugin.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `nodeAttestor.tpmDirect.plugin.image.tag` | Overrides the image tag | `v1.9.0` | -| `nodeAttestor.tpmDirect.plugin.checksum` | The sha256 checksum of the plugin binary | `22f67063f1699330e70cdedc9b923e517688f5ae71085a26bd9b83b3060ee86e` | -| `nodeAttestor.tpmDirect.plugin.path` | The filename in the container of the plugin | `/app/tpm_attestor_agent` | -| `nodeAttestor.tpmDirect.pubHash.enabled` | Display pubhash in logs | `true` | -| `nodeAttestor.tpmDirect.pubHash.image.registry` | The OCI registry to pull the image from | `ghcr.io` | -| `nodeAttestor.tpmDirect.pubHash.image.repository` | The repository within the registry | `spiffe/spire-tpm-plugin-get-tpm-pubhash` | -| `nodeAttestor.tpmDirect.pubHash.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `nodeAttestor.tpmDirect.pubHash.image.tag` | Overrides the image tag | `v1.9.0` | -| `nodeAttestor.awsIID.enabled` | Enable the aws_iid Node Attestor | `false` | -| `nodeAttestor.gcpIIT.enabled` | Enable the gcp_iit Node Attestor | `false` | -| `workloadAttestors.unix.enabled` | Enables the Unix workload attestor | `false` | -| `workloadAttestors.k8s.enabled` | Enables the Kubernetes workload attestor | `true` | -| `workloadAttestors.k8s.verification.type` | What kind of verification to do against kubelet. auto will first attempt to use hostCert, and then fall back to apiServerCA. Valid options are [auto, hostCert, apiServerCA, skip] | `skip` | -| `workloadAttestors.k8s.verification.hostCert.basePath` | Path where kubelet places its certificates | `/var/lib/kubelet/pki` | -| `workloadAttestors.k8s.verification.hostCert.fileName` | File name where kubelet places its certificates. If blank, it will be auto detected. | `""` | -| `workloadAttestors.k8s.disableContainerSelectors` | Set to true if using holdApplicationUntilProxyStarts in Istio | `false` | -| `workloadAttestors.k8s.useNewContainerLocator` | If true, enables the new container locator algorithm that has support for cgroups v2. Defaults to true | `true` | -| `workloadAttestors.k8s.verboseContainerLocatorLogs` | If true, enables verbose logging of mountinfo and cgroup information used to locate containers. Defaults to false | `false` | -| `sds.enabled` | Enables Envoy SDS configuration | `false` | -| `sds.defaultSVIDName` | The TLS Certificate resource name to use for the default X509-SVID with Envoy SDS | `default` | -| `sds.defaultBundleName` | The Validation Context resource name to use for the default X.509 bundle with Envoy SDS | `ROOTCA` | -| `sds.defaultAllBundlesName` | The Validation Context resource name to use for all bundles (including federated) with Envoy SDS | `ALL` | -| `sds.disableSPIFFECertValidation` | Disable Envoy SDS custom validation | `false` | -| `telemetry.prometheus.enabled` | Flag to enable prometheus monitoring | `false` | -| `telemetry.prometheus.port` | Port for prometheus metrics | `9988` | -| `telemetry.prometheus.host` | Host for prometheus metrics | `0.0.0.0` | -| `telemetry.prometheus.podMonitor.enabled` | Enable podMonitor for prometheus | `false` | -| `telemetry.prometheus.podMonitor.namespace` | Override where to install the podMonitor, if not set will use the same namespace as the spire-agent | `""` | -| `telemetry.prometheus.podMonitor.labels` | Pod labels to filter for prometheus monitoring | `{}` | -| `telemetry.datadog.enabled` | Flag to enable datadog monitoring | `false` | -| `telemetry.datadog.address` | The address of the datadog service to send metrics to. The default URL for services are `..svc` | `datadog.kube-system.svc` | -| `telemetry.datadog.port` | The port of the datadog service to send metrics to | `8125` | -| `kubeletConnectByHostname` | (DEPRECATED) Use kubeletAddress.mode instead. If true, connect to kubelet using the nodes hostname. If false, uses localhost. If unset, defaults to true on OpenShift and false otherwise. | `""` | -| `kubeletAddress.mode` | How to connect to kubelet for workload attestation | `auto` | -| `hostNetwork` | Enable hostNetwork for the DaemonSet. If auto or empty, auto-disables when kubeletAddress.mode is hostname/hostip. Set true/false to override. | `""` | -| `dnsPolicy` | DNS policy for the DaemonSet. If empty, uses ClusterFirstWithHostNet when hostNetwork is enabled. See https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy | `""` | -| `socketPath` | The unix socket path to the spire-agent | `/run/spire/agent-sockets/spire-agent.sock` | -| `socketAlternate.names` | List of alternate names for the socket that workloads might expect to be able to access in the driver mount. | `["socket","spire-agent.sock","api.sock"]` | -| `socketAlternate.image.registry` | The OCI registry to pull the image from | `cgr.dev` | -| `socketAlternate.image.repository` | The repository within the registry | `chainguard/bash` | -| `socketAlternate.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `socketAlternate.image.tag` | Overrides the image tag whose default is the chart appVersion | `latest@sha256:90041f375e30f41aa7e0390075d8a69dc61900771d52fa98d63ee5d03d866a58` | -| `hostCert.image.registry` | The OCI registry to pull the image from | `cgr.dev` | -| `hostCert.image.repository` | The repository within the registry | `chainguard/min-toolkit-debug` | -| `hostCert.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `hostCert.image.tag` | Overrides the image tag whose default is the chart appVersion | `latest@sha256:9e45e6836c28489a6e57ca1210ec66927e88eca2409e403616a1278e210e86c9` | -| `priorityClassName` | Priority class assigned to daemonset pods. Can be auto set with global.recommendations.priorityClassName. | `""` | -| `extraEnvVars` | Extra environment variables to be added to the Spire Agent container and init containers | `[]` | -| `extraVolumes` | Extra volumes to be mounted on Spire Agent pods | `[]` | -| `extraVolumeMounts` | Extra volume mounts for Spire Agent pods | `[]` | -| `extraContainers` | Additional containers to create with Spire Agent pods | `[]` | -| `initContainers` | Additional init containers to create with Spire Agent pods | `[]` | -| `hostAliases` | Customize /etc/hosts file as described here https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/ | `[]` | -| `customPlugins.keyManager` | Custom plugins of type KeyManager are configured here | `{}` | -| `customPlugins.nodeAttestor` | Custom plugins of type NodeAttestor are configured here | `{}` | -| `customPlugins.svidStore` | Custom plugins of type SVIDStore are configured here | `{}` | -| `customPlugins.workloadAttestor` | Custom plugins of type WorkloadAttestor are configured here | `{}` | -| `experimental.enabled` | Allow configuration of experimental features | `false` | -| `experimental.syncInterval` | Sync interval with SPIRE server with exponential backoff | `5s` | -| `experimental.requirePQKEM` | Require use of a post-quantum-safe key exchange method for TLS handshakes. | `false` | -| `experimental.featureFlags` | List of developer feature flags | `[]` | -| `agents` | Configure multiple agent DaemonSets. Useful when you have different node types and nodeAttestors | `{}` | -| `tools.kubectl.image.registry` | The OCI registry to pull the image from | `registry.k8s.io` | -| `tools.kubectl.image.repository` | The repository within the registry | `kubectl` | -| `tools.kubectl.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `tools.kubectl.image.tag` | Overrides the image tag whose default is the chart appVersion | `""` | -| `sockets.hostBasePath` | Path on which the agent socket is made available when admin.mountOnHost is true | `/run/spire/agent/sockets` | -| `sockets.admin.enabled` | Enable the admin socket. Useful for admin tasks or the Delegated Identity API. | `false` | -| `sockets.admin.mountOnHost` | Enable the admin socket to be visible on the host. | `false` | -| `persistence.type` | What type of volume to use for persistence. Valid options emptyDir (reattestable node attestors) or hostPath (nonr-reattestable node attestors) | `emptyDir` | -| `persistence.hostPath` | Which path to use on the host when persistence.type = hostPath | `/var/lib/spire/k8s/agent` | +| Name | Description | Value | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | +| `image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `image.repository` | The repository within the registry | `spiffe/spire-agent` | +| `image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `image.tag` | Overrides the image tag whose default is the chart appVersion | `""` | +| `imagePullSecrets` | Pull secrets for images | `[]` | +| `nameOverride` | Name override | `""` | +| `namespaceOverride` | Namespace override | `""` | +| `fullnameOverride` | Fullname override | `""` | +| `serviceAccount.create` | Specifies whether a service account should be created | `true` | +| `serviceAccount.annotations` | Annotations to add to the service account | `{}` | +| `serviceAccount.name` | The name of the service account to use. | `""` | +| `configMap.annotations` | Annotations to add to the SPIRE Agent ConfigMap | `{}` | +| `podAnnotations` | Annotations to add to pods | `{}` | +| `podLabels` | Labels to add to pods | `{}` | +| `podSecurityContext` | Pod security context | `{}` | +| `securityContext` | Security context | `{}` | +| `resources` | Resource requests and limits for the spire-agent container and all its initContainers | `{}` | +| `nodeSelector` | Node selector | `{}` | +| `tolerations` | List of tolerations | `[]` | +| `affinity` | Node affinity | `{}` | +| `authorizedDelegates` | A list of the authorized delegates SPIFFE IDs. See Delegated Identity API for more information. | `[]` | +| `logLevel` | The log level, valid values are "debug", "info", "warn", and "error" | `info` | +| `logFormat` | The log format, valid values are "text" and "json" | `text` | +| `clusterName` | The name of the Kubernetes cluster (`kubeadm init --service-dns-domain`) | `example-cluster` | +| `trustDomain` | The trust domain to be used for the SPIFFE identifiers | `example.org` | +| `trustBundleURL` | If set, obtain trust bundle from url instead of Kubernetes ConfigMap | `""` | +| `trustBundleFormat` | If using trustBundleURL, what format is the url. Choices are "pem" and "spiffe" | `spiffe` | +| `trustBundleHostPath` | If set, obtain trust bundle from a file on the host instead of from the ConfigMap | `""` | +| `bundleConfigMap` | Configmap name for Spire bundle | `spire-bundle` | +| `availabilityTarget` | The minimum amount of time desired to gracefully handle SPIRE Server or Agent downtime. This configurable influences how aggressively X509 SVIDs should be rotated. If set, must be at least 24h. | `""` | +| `rebootstrapMode` | How the agent will behave when seeing an unknown x509 cert from the server. It can be set to never, auto, or always | `always` | +| `rebootstrapDelay` | The agent will rebootstrap after configured amount of time on unknown x509 cert from the server | `10m` | +| `server.address` | Address for Spire server | `""` | +| `server.port` | Port number for Spire server | `443` | +| `server.namespaceOverride` | Override the namespace for Spire server | `""` | +| `server.nameOverride` | Override the name for Spire server. Should only be changed when building your own nested chart to ensure names align. | `""` | +| `healthChecks.port` | override the host port used for health checking | `9982` | +| `updateStrategy.type` | The update strategy to use to replace existing DaemonSet pods with new pods. Can be RollingUpdate or OnDelete. | `RollingUpdate` | +| `updateStrategy.rollingUpdate.maxUnavailable` | Max unavailable pods during update. Can be a number or a percentage. | `1` | +| `livenessProbe.initialDelaySeconds` | Initial delay seconds for probe | `15` | +| `livenessProbe.periodSeconds` | Period seconds for probe | `60` | +| `readinessProbe.initialDelaySeconds` | Initial delay seconds for probe | `10` | +| `readinessProbe.periodSeconds` | Period seconds for probe | `30` | +| `fsGroupFix.image.registry` | The OCI registry to pull the image from | `cgr.dev` | +| `fsGroupFix.image.repository` | The repository within the registry | `chainguard/bash` | +| `fsGroupFix.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `fsGroupFix.image.tag` | Overrides the image tag whose default is the chart appVersion | `latest@sha256:90041f375e30f41aa7e0390075d8a69dc61900771d52fa98d63ee5d03d866a58` | +| `keyManager.memory.enabled` | Enable the memory based Key Manager | `true` | +| `keyManager.disk.enabled` | Enable the disk based Key Manager (must have persistence.type set to hostPath when enabled) | `false` | +| `keyManager.disk.mode` | Where to store the data. Supported options are hostPath and emptyDir | `hostPath` | +| `nodeAttestor.k8sPSAT.enabled` | Enable PSAT k8s Node Attestor | `true` | +| `nodeAttestor.httpChallenge.enabled` | Enable the http challenge Node Attestor | `false` | +| `nodeAttestor.httpChallenge.agentname` | Name of this agent. Useful if you have multiple agents bound to different spire servers on the same host and sharing the same port. | `default` | +| `nodeAttestor.httpChallenge.port` | The port to listen on. If 0, a random value will be used. | `0` | +| `nodeAttestor.httpChallenge.advertisedPort` | The port to tell the server to call back on. Set only if your using an http proxy on the hosts. If 0, will use the port setting. | `0` | +| `nodeAttestor.tpmDirect.enabled` | Enable the direct TPM node attestor, a 3rd party plugin by Boxboat. This plugin is experimental. | `false` | +| `nodeAttestor.tpmDirect.plugin.image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `nodeAttestor.tpmDirect.plugin.image.repository` | The repository within the registry | `spiffe/spire-tpm-plugin-tpm-attestor-agent` | +| `nodeAttestor.tpmDirect.plugin.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `nodeAttestor.tpmDirect.plugin.image.tag` | Overrides the image tag | `v1.9.0` | +| `nodeAttestor.tpmDirect.plugin.checksum` | The sha256 checksum of the plugin binary | `22f67063f1699330e70cdedc9b923e517688f5ae71085a26bd9b83b3060ee86e` | +| `nodeAttestor.tpmDirect.plugin.path` | The filename in the container of the plugin | `/app/tpm_attestor_agent` | +| `nodeAttestor.tpmDirect.pubHash.enabled` | Display pubhash in logs | `true` | +| `nodeAttestor.tpmDirect.pubHash.image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `nodeAttestor.tpmDirect.pubHash.image.repository` | The repository within the registry | `spiffe/spire-tpm-plugin-get-tpm-pubhash` | +| `nodeAttestor.tpmDirect.pubHash.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `nodeAttestor.tpmDirect.pubHash.image.tag` | Overrides the image tag | `v1.9.0` | +| `nodeAttestor.awsIID.enabled` | Enable the aws_iid Node Attestor | `false` | +| `nodeAttestor.gcpIIT.enabled` | Enable the gcp_iit Node Attestor | `false` | +| `nodeAttestor.x509POP.enabled` | Enable the x509_pop Node Attestor | `false` | +| `nodeAttestor.x509POP.mode` | Which mode to use. Currently only spiffe is supported | `spiffe` | +| `nodeAttestor.x509POP.spiffeEndpointSocket` | Where the socket is to use for mode spiffe | `/var/run/spiffe/socat/unix/k8s-spire-agent/public/api.sock` | +| `workloadAttestors.unix.enabled` | Enables the Unix workload attestor | `false` | +| `workloadAttestors.k8s.enabled` | Enables the Kubernetes workload attestor | `true` | +| `workloadAttestors.k8s.verification.type` | What kind of verification to do against kubelet. auto will first attempt to use hostCert, and then fall back to apiServerCA. Valid options are [auto, hostCert, apiServerCA, skip] | `skip` | +| `workloadAttestors.k8s.verification.hostCert.basePath` | Path where kubelet places its certificates | `/var/lib/kubelet/pki` | +| `workloadAttestors.k8s.verification.hostCert.fileName` | File name where kubelet places its certificates. If blank, it will be auto detected. | `""` | +| `workloadAttestors.k8s.disableContainerSelectors` | Set to true if using holdApplicationUntilProxyStarts in Istio | `false` | +| `workloadAttestors.k8s.useNewContainerLocator` | If true, enables the new container locator algorithm that has support for cgroups v2. Defaults to true | `true` | +| `workloadAttestors.k8s.verboseContainerLocatorLogs` | If true, enables verbose logging of mountinfo and cgroup information used to locate containers. Defaults to false | `false` | +| `dynamicRegistration.enabled` | Deploys the sidecar helper for dynamic registration | `false` | +| `dynamicRegistration.image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `dynamicRegistration.image.repository` | The repository within the registry | `spiffe/spire-controller-manager-dynamic-registration/spire-controller-manager-dynamic-registration-agent` | +| `dynamicRegistration.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `dynamicRegistration.image.tag` | Overrides the image tag to be whatever you need it to be. It will always be the flag you set without modifications | `0.1.0` | +| `dynamicRegistration.audience` | The audience to get the k8s psat for | `spire-controller-manager-dynamic-registration` | +| `dynamicRegistration.serverSPIFFEID` | Expected SPIFFE ID of the server. If blank, it will use a sane default. | `""` | +| `dynamicRegistration.address` | Address for Spire server | `""` | +| `dynamicRegistration.nameOverride` | Override the name for Spire server. Should only be changed when building your own nested chart to ensure names align. | `""` | +| `dynamicRegistration.securityContext` | Security context | `{}` | +| `sds.enabled` | Enables Envoy SDS configuration | `false` | +| `sds.defaultSVIDName` | The TLS Certificate resource name to use for the default X509-SVID with Envoy SDS | `default` | +| `sds.defaultBundleName` | The Validation Context resource name to use for the default X.509 bundle with Envoy SDS | `ROOTCA` | +| `sds.defaultAllBundlesName` | The Validation Context resource name to use for all bundles (including federated) with Envoy SDS | `ALL` | +| `sds.disableSPIFFECertValidation` | Disable Envoy SDS custom validation | `false` | +| `telemetry.prometheus.enabled` | Flag to enable prometheus monitoring | `false` | +| `telemetry.prometheus.port` | Port for prometheus metrics | `9988` | +| `telemetry.prometheus.host` | Host for prometheus metrics | `0.0.0.0` | +| `telemetry.prometheus.podMonitor.enabled` | Enable podMonitor for prometheus | `false` | +| `telemetry.prometheus.podMonitor.namespace` | Override where to install the podMonitor, if not set will use the same namespace as the spire-agent | `""` | +| `telemetry.prometheus.podMonitor.labels` | Pod labels to filter for prometheus monitoring | `{}` | +| `telemetry.datadog.enabled` | Flag to enable datadog monitoring | `false` | +| `telemetry.datadog.address` | The address of the datadog service to send metrics to. The default URL for services are `..svc` | `datadog.kube-system.svc` | +| `telemetry.datadog.port` | The port of the datadog service to send metrics to | `8125` | +| `kubeletConnectByHostname` | (DEPRECATED) Use kubeletAddress.mode instead. If true, connect to kubelet using the nodes hostname. If false, uses localhost. If unset, defaults to true on OpenShift and false otherwise. | `""` | +| `kubeletAddress.mode` | How to connect to kubelet for workload attestation | `auto` | +| `hostNetwork` | Enable hostNetwork for the DaemonSet. If auto or empty, auto-disables when kubeletAddress.mode is hostname/hostip. Set true/false to override. | `""` | +| `dnsPolicy` | DNS policy for the DaemonSet. If empty, uses ClusterFirstWithHostNet when hostNetwork is enabled. See https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy | `""` | +| `socketPath` | The unix socket path to the spire-agent | `/run/spire/agent-sockets/spire-agent.sock` | +| `socketAlternate.names` | List of alternate names for the socket that workloads might expect to be able to access in the driver mount. | `["socket","spire-agent.sock","api.sock"]` | +| `socketAlternate.image.registry` | The OCI registry to pull the image from | `cgr.dev` | +| `socketAlternate.image.repository` | The repository within the registry | `chainguard/bash` | +| `socketAlternate.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `socketAlternate.image.tag` | Overrides the image tag whose default is the chart appVersion | `latest@sha256:90041f375e30f41aa7e0390075d8a69dc61900771d52fa98d63ee5d03d866a58` | +| `hostCert.image.registry` | The OCI registry to pull the image from | `cgr.dev` | +| `hostCert.image.repository` | The repository within the registry | `chainguard/min-toolkit-debug` | +| `hostCert.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `hostCert.image.tag` | Overrides the image tag whose default is the chart appVersion | `latest@sha256:9e45e6836c28489a6e57ca1210ec66927e88eca2409e403616a1278e210e86c9` | +| `priorityClassName` | Priority class assigned to daemonset pods. Can be auto set with global.recommendations.priorityClassName. | `""` | +| `extraEnvVars` | Extra environment variables to be added to the Spire Agent container and init containers | `[]` | +| `extraVolumes` | Extra volumes to be mounted on Spire Agent pods | `[]` | +| `extraVolumeMounts` | Extra volume mounts for Spire Agent pods | `[]` | +| `extraContainers` | Additional containers to create with Spire Agent pods | `[]` | +| `initContainers` | Additional init containers to create with Spire Agent pods | `[]` | +| `hostAliases` | Customize /etc/hosts file as described here https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/ | `[]` | +| `customPlugins.keyManager` | Custom plugins of type KeyManager are configured here | `{}` | +| `customPlugins.nodeAttestor` | Custom plugins of type NodeAttestor are configured here | `{}` | +| `customPlugins.svidStore` | Custom plugins of type SVIDStore are configured here | `{}` | +| `customPlugins.workloadAttestor` | Custom plugins of type WorkloadAttestor are configured here | `{}` | +| `experimental.enabled` | Allow configuration of experimental features | `false` | +| `experimental.syncInterval` | Sync interval with SPIRE server with exponential backoff | `5s` | +| `experimental.requirePQKEM` | Require use of a post-quantum-safe key exchange method for TLS handshakes. | `false` | +| `experimental.featureFlags` | List of developer feature flags | `[]` | +| `agents` | Configure multiple agent DaemonSets. Useful when you have different node types and nodeAttestors | `{}` | +| `tools.kubectl.image.registry` | The OCI registry to pull the image from | `registry.k8s.io` | +| `tools.kubectl.image.repository` | The repository within the registry | `kubectl` | +| `tools.kubectl.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `tools.kubectl.image.tag` | Overrides the image tag whose default is the chart appVersion | `""` | +| `sockets.hostBasePath` | Path on which the agent socket is made available when admin.mountOnHost is true | `/run/spire/agent/sockets` | +| `sockets.admin.enabled` | Enable the admin socket. Useful for admin tasks or the Delegated Identity API. | `false` | +| `sockets.admin.mountOnHost` | Enable the admin socket to be visible on the host. | `false` | +| `persistence.type` | What type of volume to use for persistence. Valid options emptyDir (reattestable node attestors) or hostPath (nonr-reattestable node attestors) | `emptyDir` | +| `persistence.hostPath` | Which path to use on the host when persistence.type = hostPath | `/var/lib/spire/k8s/agent` | diff --git a/charts/spire/charts/spire-agent/templates/_helpers.tpl b/charts/spire/charts/spire-agent/templates/_helpers.tpl index 5b5efd6..ef4c272 100644 --- a/charts/spire/charts/spire-agent/templates/_helpers.tpl +++ b/charts/spire/charts/spire-agent/templates/_helpers.tpl @@ -110,6 +110,18 @@ Create the name of the service account to use {{- end }} {{- end }} +{{- define "spire-agent.dynamic-registration-address" }} +{{- if and (ne (len (dig "spire" "upstreamDynamicRegistrationAddress" "" .Values.global)) 0) .Values.upstream }} +{{- print .Values.global.spire.upstreamDynamicRegistrationAddress }} +{{- else if .Values.dynamicRegistration.address }} +{{- .Values.dynamicRegistration.address }} +{{- else if .Values.dynamicRegistration.nameOverride }} +{{- .Release.Name }}-{{ .Values.dynamicRegistration.nameOverride }}.{{ include "spire-agent.server.namespace" . }} +{{- else }} +{{- .Release.Name }}-server.{{ include "spire-agent.server.namespace" . }} +{{- end }} +{{- end }} + {{- define "spire-agent.socket-path" -}} {{- print .Values.socketPath }} {{- end }} diff --git a/charts/spire/charts/spire-agent/templates/configmap.yaml b/charts/spire/charts/spire-agent/templates/configmap.yaml index 9a5e922..7ff8a6b 100644 --- a/charts/spire/charts/spire-agent/templates/configmap.yaml +++ b/charts/spire/charts/spire-agent/templates/configmap.yaml @@ -1,6 +1,7 @@ {{- define "spire-agent.check-config-values" -}} {{- include "spire-lib.check-strict-mode" (list . "clusterName must be set" (eq (include "spire-lib.cluster-name" .) "example-cluster"))}} -{{- include "spire-lib.check-strict-mode" (list . "trustDomain must be set" (eq (include "spire-lib.trust-domain" .) "example.org"))}} +{{- $trustDomain := include "spire-lib.trust-domain" . }} +{{- include "spire-lib.check-strict-mode" (list . "trustDomain must be set" (eq $trustDomain "example.org"))}} {{- range $type, $tvals := .Values.customPlugins }} {{- if not (has $type (list "keyManager" "nodeAttestor" "svidStore" "workloadAttestor")) }} {{- fail (printf "Unknown plugin type specified: %s" $type) }} @@ -19,7 +20,7 @@ {{- end }} {{- end }} {{- end }} -{{- if and .Values.keyManager.disk.enabled (ne .Values.persistence.type "hostPath") }} +{{- if and .Values.keyManager.disk.enabled (ne .Values.persistence.type "hostPath") (eq .Values.keyManager.disk.mode "hostPath") }} {{- fail "keyManager.disk.enabled is true but persistence.type is not hostPath. Ensure persistence.type is hostPath when keyManager.disk.enabled is true." }} {{- end }} {{- if hasPrefix (.Values.socketPath | dir | clean) (.Values.sockets.hostBasePath | clean) }} @@ -37,13 +38,20 @@ {{- end }} {{- end }} {{- define "spire-agent.yaml-config" -}} +{{- $trustDomain := include "spire-lib.trust-domain" . }} agent: {{- if .Values.sockets.admin.enabled }} admin_socket_path: /tmp/spire-agent/private/admin.sock {{- end }} {{- with .Values.authorizedDelegates }} authorized_delegates: - {{- toYaml . | nindent 4 }} + {{- range . }} + {{- if hasPrefix "/" . }} + - spiffe://{{ $trustDomain }}{{ . }} + {{- else }} + - {{ . }} + {{- end }} + {{- end }} {{- end }} data_dir: "/var/lib/spire" log_level: {{ .Values.logLevel | quote }} @@ -120,6 +128,14 @@ plugins: {{- $nodeAttestorUsed = add1 $nodeAttestorUsed }} {{- end }} {{- end }} + {{- with .Values.nodeAttestor.x509POP }} + {{- if eq (.enabled | toString) "true" }} + x509pop: + plugin_data: + spiffe_endpoint_socket: unix://{{ .spiffeEndpointSocket }} + {{- $nodeAttestorUsed = add1 $nodeAttestorUsed }} + {{- end }} + {{- end }} {{- with .Values.nodeAttestor.awsIID }} {{- if eq (.enabled | toString) "true" }} aws_iid: @@ -147,7 +163,11 @@ plugins: {{- if .Values.keyManager.disk.enabled }} disk: plugin_data: + {{- if eq .Values.keyManager.disk.mode "hostPath" }} directory: {{ .Values.persistence.hostPath }} + {{- else if eq .Values.keyManager.disk.mode "emptyDir" }} + directory: /key-manager + {{- end }} {{- $keyManagerUsed = add1 $keyManagerUsed }} {{- end }} {{- if ne $keyManagerUsed 1 }} diff --git a/charts/spire/charts/spire-agent/templates/daemonset.yaml b/charts/spire/charts/spire-agent/templates/daemonset.yaml index b1455d8..477c05b 100644 --- a/charts/spire/charts/spire-agent/templates/daemonset.yaml +++ b/charts/spire/charts/spire-agent/templates/daemonset.yaml @@ -9,7 +9,7 @@ {{- if hasKey .Values.sds "disableSpiffeCertValidation" }} {{- fail "disableSpiffeCertValidation was renamed to disableSPIFFECertValidation. Please update your config." }} {{- end }} -{{- if and .Values.keyManager.disk.enabled (ne .Values.persistence.type "hostPath") }} +{{- if and .Values.keyManager.disk.enabled (ne .Values.persistence.type "hostPath") (eq .Values.keyManager.disk.mode "hostPath") }} {{- fail "keyManager.disk.enabled is true but persistence.type is not hostPath. Ensure persistence.type is hostPath when keyManager.disk.enabled is true." }} {{- end }} {{- range $name := (concat (list "default") (keys .Values.agents)) | uniq }} @@ -303,7 +303,11 @@ spec: readOnly: true {{- if .Values.keyManager.disk.enabled }} - name: spire-key-manager + {{- if eq .Values.keyManager.disk.mode "emptyDir" }} + mountPath: /key-manager + {{- else }} mountPath: {{ .Values.persistence.hostPath }} + {{- end }} readOnly: false {{- end }} - name: spire-agent-persistence @@ -340,6 +344,10 @@ spec: mountPath: /hostCert readOnly: true {{- end }} + {{- if .Values.nodeAttestor.x509POP.enabled }} + - name: x509pop-upstream + mountPath: {{ .Values.nodeAttestor.x509POP.spiffeEndpointSocket | dir }} + {{- end }} {{- if gt (len .Values.extraVolumeMounts) 0 }} {{- toYaml .Values.extraVolumeMounts | nindent 12 }} {{- end }} @@ -355,6 +363,33 @@ spec: {{- toYaml .Values.readinessProbe | nindent 12 }} resources: {{- toYaml .Values.resources | nindent 12 }} + {{- if eq (.Values.dynamicRegistration.enabled | toString) "true" }} + - name: dynamic-registration + securityContext: + {{- include "spire-lib.securitycontext-extended" (dict "root" . "securityContext" .Values.dynamicRegistration.securityContext) | nindent 12 }} + image: {{ template "spire-lib.image" (dict "appVersion" .Values.dynamicRegistration.image.tag "image" .Values.dynamicRegistration.image "global" .Values.global "ubi" false) }} + imagePullPolicy: {{ .Values.dynamicRegistration.image.pullPolicy }} + env: + - name: TOKENFILE + value: /var/run/secrets/tokens/dynamic-registration-agent + - name: SPIFFE_TRUST_DOMAIN + value: {{ include "spire-lib.trust-domain" . | quote }} + - name: SERVERSPIFFEID + value: {{ .Values.dynamicRegistration.serverSPIFFEID | quote }} + - name: APIURL + value: {{ include "spire-agent.dynamic-registration-address" . | quote }} + - name: KEYFILE + value: /key-manager/keys.json + - name: APIPORT + value: "8931" + volumeMounts: + - name: spire-agent-persistence + mountPath: /var/lib/spire + - name: dynamic-registration-psat + mountPath: /var/run/secrets/tokens + - name: spire-key-manager + mountPath: /key-manager + {{- end }} {{- if gt (len .Values.extraContainers) 0 }} {{- toYaml .Values.extraContainers | nindent 8 }} {{- end }} @@ -376,9 +411,13 @@ spec: name: {{ include "spire-agent.fullname" . }} {{- if .Values.keyManager.disk.enabled }} - name: spire-key-manager + {{- if eq .Values.keyManager.disk.mode "hostPath" }} hostPath: path: {{ .Values.persistence.hostPath }} type: DirectoryOrCreate + {{- else }} + emptyDir: {} + {{- end }} {{- end }} {{- if .Values.sockets.admin.mountOnHost }} - name: spire-agent-admin-socket-dir @@ -420,6 +459,21 @@ spec: - name: tpm-direct emptyDir: {} {{- end }} + {{- if .Values.nodeAttestor.x509POP.enabled }} + - name: x509pop-upstream + hostPath: + path: {{ .Values.nodeAttestor.x509POP.spiffeEndpointSocket | dir }} + type: DirectoryOrCreate + {{- end }} + {{- if eq (.Values.dynamicRegistration.enabled | toString) "true" }} + - name: dynamic-registration-psat + projected: + sources: + - serviceAccountToken: + path: dynamic-registration-agent + expirationSeconds: 7200 + audience: {{ .Values.dynamicRegistration.audience | quote }} + {{- end }} - name: spire-token projected: sources: diff --git a/charts/spire/charts/spire-agent/values.yaml b/charts/spire/charts/spire-agent/values.yaml index f2b7402..2f82e29 100644 --- a/charts/spire/charts/spire-agent/values.yaml +++ b/charts/spire/charts/spire-agent/values.yaml @@ -168,6 +168,8 @@ keyManager: disk: ## @param keyManager.disk.enabled Enable the disk based Key Manager (must have persistence.type set to hostPath when enabled) enabled: false + ## @param keyManager.disk.mode Where to store the data. Supported options are hostPath and emptyDir + mode: hostPath nodeAttestor: k8sPSAT: @@ -219,6 +221,13 @@ nodeAttestor: gcpIIT: ## @param nodeAttestor.gcpIIT.enabled Enable the gcp_iit Node Attestor enabled: false + x509POP: + ## @param nodeAttestor.x509POP.enabled Enable the x509_pop Node Attestor + enabled: false + ## @param nodeAttestor.x509POP.mode Which mode to use. Currently only spiffe is supported + mode: spiffe + ## @param nodeAttestor.x509POP.spiffeEndpointSocket Where the socket is to use for mode spiffe + spiffeEndpointSocket: "/var/run/spiffe/socat/unix/k8s-spire-agent/public/api.sock" # workloadAttestors determine a workload's properties and then generate a set of selectors associated with it. workloadAttestors: @@ -244,6 +253,34 @@ workloadAttestors: ## @param workloadAttestors.k8s.verboseContainerLocatorLogs If true, enables verbose logging of mountinfo and cgroup information used to locate containers. Defaults to false verboseContainerLocatorLogs: false +dynamicRegistration: + ## @param dynamicRegistration.enabled Deploys the sidecar helper for dynamic registration + enabled: false + ## @param dynamicRegistration.image.registry The OCI registry to pull the image from + ## @param dynamicRegistration.image.repository The repository within the registry + ## @param dynamicRegistration.image.pullPolicy The image pull policy + ## @param dynamicRegistration.image.tag Overrides the image tag to be whatever you need it to be. It will always be the flag you set without modifications + ## + image: + registry: ghcr.io + repository: spiffe/spire-controller-manager-dynamic-registration/spire-controller-manager-dynamic-registration-agent + pullPolicy: IfNotPresent + tag: "0.1.0" + + ## @param dynamicRegistration.audience The audience to get the k8s psat for + audience: spire-controller-manager-dynamic-registration + + ## @param dynamicRegistration.serverSPIFFEID Expected SPIFFE ID of the server. If blank, it will use a sane default. + serverSPIFFEID: "" + + ## @param dynamicRegistration.address Address for Spire server + address: "" + ## @param dynamicRegistration.nameOverride Override the name for Spire server. Should only be changed when building your own nested chart to ensure names align. + nameOverride: "" + + ## @param dynamicRegistration.securityContext [object] Security context + securityContext: {} + sds: ## @param sds.enabled Enables Envoy SDS configuration enabled: false diff --git a/charts/spire/charts/spire-server/Chart.yaml b/charts/spire/charts/spire-server/Chart.yaml index 788986d..6620cd8 100644 --- a/charts/spire/charts/spire-server/Chart.yaml +++ b/charts/spire/charts/spire-server/Chart.yaml @@ -3,7 +3,7 @@ name: spire-server description: A Helm chart to install the SPIRE server. type: application version: 0.1.0 -appVersion: "1.14.5" +appVersion: "1.15.1" keywords: ["spiffe", "spire-server", "spire-controller-manager"] home: https://github.com/spiffe/helm-charts-hardened/tree/main/charts/spire sources: diff --git a/charts/spire/charts/spire-server/README.md b/charts/spire/charts/spire-server/README.md index c1b6133..13b1f7c 100644 --- a/charts/spire/charts/spire-server/README.md +++ b/charts/spire/charts/spire-server/README.md @@ -79,400 +79,425 @@ In order to run Tornjak with simple HTTP Connection only, make sure you don't cr ### Chart parameters -| Name | Description | Value | -| -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `replicaCount` | SPIRE server currently runs with a sqlite database. Scaling to multiple instances will not work until we use an external database. | `1` | -| `image.registry` | The OCI registry to pull the image from | `ghcr.io` | -| `image.repository` | The repository within the registry | `spiffe/spire-server` | -| `image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `image.tag` | Overrides the image tag whose default is the chart appVersion | `""` | -| `kind` | Define SPIRE server deployment type. Can be statefulset/deployment. Defaults to statefulset if not set. This feature is experimental. | `statefulset` | -| `externalServer` | Deploy only the bundle ConfigMap, RBAC rules, and identity documents but not the server. Use in a nested setup where the server is external. | `false` | -| `imagePullSecrets` | Pull secrets for images | `[]` | -| `nameOverride` | Name override | `""` | -| `crNameOverride` | Name override for any custom resources | `""` | -| `namespaceOverride` | Namespace override | `""` | -| `fullnameOverride` | Fullname override | `""` | -| `serviceAccount.create` | Specifies whether a service account should be created | `true` | -| `serviceAccount.annotations` | Annotations to add to the service account | `{}` | -| `serviceAccount.name` | The name of the service account to use. If not set and create is true, a name is generated. | `""` | -| `podAnnotations` | Annotations to add to pods | `{}` | -| `podLabels` | Labels to add to pods | `{}` | -| `podSecurityContext` | Pod security context | `{}` | -| `securityContext` | Security context | `{}` | -| `priorityClassName` | Priority class assigned to statefulset pods. Can be auto set with global.recommendations.priorityClassName. | `""` | -| `service.type` | Type of the Spire server service created | `ClusterIP` | -| `service.port` | Port for the created service | `443` | -| `service.annotations` | Annotations to add to the service object | `{}` | -| `service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `""` | -| `configMap.annotations` | Annotations to add to the SPIRE Server ConfigMap | `{}` | -| `resources` | Resource requests and limits | `{}` | -| `autoscaling.enabled` | Flag to enable autoscaling | `false` | -| `autoscaling.minReplicas` | Minimum replicas for autoscaling | `1` | -| `autoscaling.maxReplicas` | Maximum replicas for autoscaling | `100` | -| `autoscaling.scaleOnSPIREServerOnly` | Flag to only consider the main SPIRE container for autoscaling purposes | `false` | -| `autoscaling.targetCPUUtilizationPercentage` | Target CPU utilization that triggers autoscaling | `80` | -| `nodeSelector` | Select specific nodes to run on (currently only amd64 is supported by Tornjak) | `{}` | -| `tolerations` | List of tolerations | `[]` | -| `affinity` | List of node affinities | `{}` | -| `topologySpreadConstraints` | Topology spread constraints for resilience | `[]` | -| `livenessProbe.failureThreshold` | Failure threshold count for livenessProbe | `2` | -| `livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `15` | -| `livenessProbe.periodSeconds` | Period seconds for livenessProbe | `60` | -| `livenessProbe.timeoutSeconds` | Timeout in seconds for livenessProbe | `3` | -| `readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `5` | -| `readinessProbe.periodSeconds` | Period seconds for readinessProbe | `5` | -| `persistence.type` | What type of volume to use for persistence. Valid options pvc (recommended), hostPath, emptyDir (testing only) | `pvc` | -| `persistence.size` | What size volume to use for persistence | `1Gi` | -| `persistence.accessMode` | What access mode to use for persistence. Valid options are ReadWriteOnce (recommended), ReadWriteOncePod, ReadWriteMany (not recommended) | `ReadWriteOnce` | -| `persistence.storageClass` | What storage class to use for persistence | `nil` | -| `persistence.hostPath` | Which path to use on the host when persistence.type = hostPath | `""` | -| `dataStore.sql.databaseType` | Other supported databases are ["postgres", "mysql", "aws_postgresql", "aws_mysql", "gcp_mysql_sa_iam"]. Note: aws type databases are still experimental. gcp_mysql_sa_iam uses IAM authentication by default. | `sqlite3` | -| `dataStore.sql.databaseName` | Only used when type != "sqlite3" | `spire` | -| `dataStore.sql.host` | Only used when type != "sqlite3" | `""` | -| `dataStore.sql.port` | If 0 (default), it will auto set to 5432 for postgres and 3306 for mysql. Only used by those databases. | `0` | -| `dataStore.sql.username` | Only used when type != "sqlite3" | `spire` | -| `dataStore.sql.password` | Only used when type != "sqlite3" | `""` | -| `dataStore.sql.file` | Data source file. Only used when type == "sqlite3" | `/run/spire/data/datastore.sqlite3` | -| `dataStore.sql.options` | takes an array of objects of form {: } to use when building the database connection string | `[]` | -| `dataStore.sql.rootCAPath` | Path to Root CA bundle (MySQL only) | `""` | -| `dataStore.sql.clientCertPath` | Path to client certificate (MySQL only) | `""` | -| `dataStore.sql.clientKeyPath` | Path to private key for client certificate (MySQL only) | `""` | -| `dataStore.sql.externalSecret.enabled` | Enable external secret for datastore creds | `false` | -| `dataStore.sql.externalSecret.name` | The name of the secret object | `""` | -| `dataStore.sql.externalSecret.key` | The key of the secret object whose value is the dataStore.sql password | `""` | -| `dataStore.sql.maxOpenConns` | The maximum number of open db connections | `100` | -| `dataStore.sql.maxIdleConns` | The maximum number of idle connections in the pool | `2` | -| `dataStore.sql.connMaxLifetime` | The maximum amount of time a connection may be reused. Supports duration strings (e.g., "1h", "30m", "3600s") or 0 for unlimited. Duration strings are recommended to prevent connection accumulation. | `0` | -| `dataStore.sql.disableMigration` | True to disable auto-migration functionality | `false` | -| `dataStore.sql.region` | Region to use when database type is either aws_mysql or aws_postgresql | `""` | -| `dataStore.sql.readOnly.enabled` | Set to true to configure a readOnly dartabase connection | `false` | -| `dataStore.sql.readOnly.host` | Only used when type != "sqlite3" | `""` | -| `dataStore.sql.readOnly.port` | If 0 (default), it will auto set to 5432 for postgres and 3306 for mysql. Only used by those databases. | `0` | -| `dataStore.sql.readOnly.username` | Only used when type != "sqlite3" | `spire` | -| `dataStore.sql.readOnly.password` | Only used when type != "sqlite3" | `""` | -| `dataStore.sql.readOnly.options` | Only used when type != "sqlite3" | `[]` | -| `dataStore.sql.readOnly.externalSecret.enabled` | Enable external secret for datastore creds | `false` | -| `dataStore.sql.readOnly.externalSecret.name` | The name of the secret object | `""` | -| `dataStore.sql.readOnly.externalSecret.key` | The key of the secret object whose value is the dataStore.sql password | `""` | -| `adminIDs` | SPIFFE IDs that, when present in a caller’s X509-SVID, grant that caller admin privileges. | `[]` | -| `auditLogEnabled` | If true, enables audit logging | `false` | -| `logLevel` | The log level, valid values are "debug", "info", "warn", and "error" | `info` | -| `logFormat` | The log format, valid values are "text" and "json" | `text` | -| `jwtIssuer` | The JWT issuer domain. Defaults to oidc-discovery.$trustDomain if unset | `""` | -| `clusterName` | Set the name of the Kubernetes cluster. (`kubeadm init --service-dns-domain`) | `example-cluster` | -| `trustDomain` | Set the trust domain to be used for the SPIFFE identifiers | `example.org` | -| `bundleConfigMap` | Set the Configmap name for SPIRE bundle | `spire-bundle` | -| `clusterDomain` | This is the value of your clusters `kubeadm init --service-dns-domain` flag | `cluster.local` | -| `federation.enabled` | Flag to enable federation | `false` | -| `federation.bundleEndpoint.port` | Port value for trust bundle federation | `8443` | -| `federation.bundleEndpoint.address` | Address for trust bundle federation | `0.0.0.0` | -| `federation.bundleEndpoint.refreshHint` | Hint used by federated servers on how often to refresh the bundle. CA TTL must be 3-5x the duration of this value to ensure public keys are loaded on federated servers prior to private key rotation on remote server. | `5m` | -| `federation.bundleEndpoint.profile.httpWeb.fileSyncInterval` | Interval on which to reload the certificate/key from disk | `1h` | -| `federation.tls.spire.enabled` | Use spire to secure the federation bundle endpoint | `true` | -| `federation.tls.externalSecret.enabled` | Provide your own certificate/key via tls style Kubernetes Secret | `false` | -| `federation.tls.externalSecret.secretName` | Specify which Secret to use | `""` | -| `federation.tls.certManager.enabled` | Use certificateManager to create the certificate | `false` | -| `federation.tls.certManager.issuer.create` | Create an issuer to use to issue the certificate | `true` | -| `federation.tls.certManager.issuer.acme.email` | Must be set in order to register with LetsEncrypt. By setting, you agree to their Terms of Service | `""` | -| `federation.tls.certManager.issuer.acme.server` | Server to use to get certificate. Defaults to LetsEncrypt | `https://acme-v02.api.letsencrypt.org/directory` | -| `federation.tls.certManager.issuer.acme.solvers` | Configure the issuer solvers. Defaults to http01 via ingress. | `{}` | -| `federation.tls.certManager.certificate.dnsNames` | Override the dnsNames on the certificate request. Defaults to the same settings as Ingress | `[]` | -| `federation.tls.certManager.certificate.issuerRef.group` | If you are using an external plugin, specify the group for it here | `""` | -| `federation.tls.certManager.certificate.issuerRef.kind` | Kind of the issuer reference. Override if you want to use a ClusterIssuer | `Issuer` | -| `federation.tls.certManager.certificate.issuerRef.name` | Name of the issuer to use. If unset, it will use the name of the built in issuer | `""` | -| `federation.ingress.enabled` | Flag to enable ingress for federation | `false` | -| `federation.ingress.className` | Ingress class name for federation | `""` | -| `federation.ingress.controllerType` | Specify what type of ingress controller you're using to add the necessary annotations accordingly. If blank, autodetection is attempted. If other, no annotations will be added. Must be one of [ingress-nginx, openshift, other, ""]. | `""` | -| `federation.ingress.annotations` | Annotations for the ingress object | `{}` | -| `federation.ingress.host` | Host name for the ingress. If no '.' in host, trustDomain is automatically appended. The rest of the rules will be autogenerated. For more customizability, use hosts[] instead. | `spire-server-federation` | -| `federation.ingress.tlsSecret` | Secret that has the certs. If blank will use default certs. Used with host var. | `""` | -| `federation.ingress.hosts` | Host paths for ingress object. If empty, rules will be built based on the host var. | `[]` | -| `federation.ingress.tls` | Secrets containing TLS certs to enable https on ingress. If empty, rules will be built based on the host and tlsSecret vars. | `[]` | -| `caSubject.country` | Country for Spire server CA | `ARPA` | -| `caSubject.organization` | Organization for Spire server CA | `Example` | -| `caSubject.commonName` | Common Name for Spire server CA | `example.org` | -| `credentialComposer.cel.enabled` | Enable the cel based credential composer | `false` | -| `credentialComposer.cel.image.registry` | The OCI registry to pull the image from | `ghcr.io` | -| `credentialComposer.cel.image.repository` | The repository within the registry | `spiffe/spire-credentialcomposer-cel` | -| `credentialComposer.cel.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `credentialComposer.cel.image.tag` | Overrides the image tag | `0.0.2` | -| `credentialComposer.cel.checksum` | The sha256 checksum of the plugin binary | `23fa1d10f15ad5d5c555930cf82289c664801d7d5609bfd8847f95a0a667e4e4` | -| `credentialComposer.cel.pluginPath` | The filename in the container of the plugin | `/ko-app/cmd` | -| `credentialComposer.cel.jwt.expression` | The expression to use for jwt token composing | `""` | -| `credentialComposer.uniqueID.enabled` | Add the x509UniqueIdentifier attribute to workload X509-SVIDs | `false` | -| `keyManager.disk.enabled` | Flag to enable keyManager on disk | `true` | -| `keyManager.memory.enabled` | Flag to enable keyManager in memory | `false` | -| `keyManager.awsKMS.enabled` | Flag to enable keyManager in memory | `false` | -| `keyManager.awsKMS.region` | Specify the region for AWS KMS | `""` | -| `keyManager.awsKMS.keyIdentifierFile.enabled` | Enable key identifier data to be stored in a file in persistent storage. | `false` | -| `keyManager.awsKMS.keyIdentifierValue.enabled` | Enable specifying a key identifier value for AWS KMS | `false` | -| `keyManager.awsKMS.keyIdentifierValue.identifier` | Static identifier for the SPIRE server instance | `""` | -| `keyManager.awsKMS.keyPolicy` | Policy to use when creating keys. If no policy is specified, a default policy will be used. | | -| `keyManager.awsKMS.keyPolicy.policy` | Key policy in JSON format. | `""` | -| `keyManager.awsKMS.keyPolicy.existingConfigMap` | Name of a ConfigMap that has a `policy.json` file with the key policy in JSON format. | `""` | -| `keyManager.awsKMS.keyTags` | Custom tags to apply to KMS keys created by the plugin. Tags are key-value pairs used for resource management and cost allocation. When using key tagging, you must add the `kms:TagResource` permission to your IAM policy. Constraints: keys (1-128 chars), values (0-256 chars), max 50 tags, valid chars (letters, numbers, spaces, + - = . _ : / @), keys cannot start with 'aws:' or 'spire-'. | `{}` | -| `keyManager.awsKMS.accessKeyID` | Access key ID for the AWS account. It's recommended to use an IAM role instead. See [here](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) to learn how to annotate your SPIRE Server Service Account to assume an IAM role. | `""` | -| `keyManager.awsKMS.secretAccessKey` | Secret access key for the AWS account. | `""` | -| `upstreamAuthority.disk.enabled` | Flag to enable upstream authority plugin on disk | `false` | -| `upstreamAuthority.disk.secret.create` | If disabled requires you to create a secret with the given keys (certificate, key and optional bundle) yourself. | `true` | -| `upstreamAuthority.disk.secret.name` | If secret creation is disabled, the secret with this name will be used. | `spiffe-upstream-ca` | -| `upstreamAuthority.disk.secret.data` | If secret creation is enabled, will create a secret with following certificate info | | -| `upstreamAuthority.disk.secret.data.certificate` | Certificate to store within disk upstreamAuthority. | `""` | -| `upstreamAuthority.disk.secret.data.key` | Key corresponding to the upstreamAuthority. | `""` | -| `upstreamAuthority.disk.secret.data.bundle` | Trust bundle for upstreamAuthority. | `""` | -| `upstreamAuthority.awsPCA.enabled` | Flag to enable upstream authority plugin with AWS PCA | `false` | -| `upstreamAuthority.awsPCA.region` | AWS Region to use | `""` | -| `upstreamAuthority.awsPCA.certificateAuthorityARN` | ARN of the "upstream" CA certificate | `""` | -| `upstreamAuthority.awsPCA.assumeRoleARN` | (Optional) ARN of an IAM role to assume | `""` | -| `upstreamAuthority.awsPCA.caSigningTemplateARN` | (Optional) ARN of the signing template to use for the server's CA. Defaults to a signing template for end-entity certificates only. See Using Templates (https://docs.aws.amazon.com/acm-pca/latest/userguide/UsingTemplates.html) for possible values. | `""` | -| `upstreamAuthority.awsPCA.signingAlgorithm` | (Optional) Signing algorithm to use for the server's CA. Defaults to the CA's default. See Issue Certificate (https://docs.aws.amazon.com/cli/latest/reference/acm-pca/issue-certificate.html) for possible values. | `""` | -| `upstreamAuthority.awsPCA.endpoint` | (Optional) Endpoint as hostname or fully-qualified URI that overrides the default endpoint. See AWS SDK Config docs (https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config) for more information. | `""` | -| `upstreamAuthority.awsPCA.supplementalBundlePath` | (Optional) Path to a file containing PEM-encoded CA certificates that should be additionally included in the bundle. | `""` | -| `upstreamAuthority.awsSecret.enabled` | Flag to enable upstream authority plugin with AWS Secrets Manager | `false` | -| `upstreamAuthority.awsSecret.region` | AWS Region to use | `""` | -| `upstreamAuthority.awsSecret.certFileArn` | ARN or name of the secret containing the intermediate CA certificate | `""` | -| `upstreamAuthority.awsSecret.keyFileArn` | ARN or name of the secret containing the intermediate CA private key | `""` | -| `upstreamAuthority.awsSecret.bundleFileArn` | (Optional) ARN or name of the secret containing the root CA bundle | `""` | -| `upstreamAuthority.awsSecret.assumeRoleArn` | (Optional) ARN of an IAM role to assume | `""` | -| `upstreamAuthority.certManager.enabled` | Flag to enable upstream authority plugin with cert manager | `false` | -| `upstreamAuthority.certManager.rbac.create` | Flag to create RBAC roles | `true` | -| `upstreamAuthority.certManager.issuerName` | Defaults to the release name, override if CA is provided outside of the chart | `""` | -| `upstreamAuthority.certManager.issuerKind` | Defaults to "Issuer", override if CA is provided outside of the chart | `Issuer` | -| `upstreamAuthority.certManager.issuerGroup` | Defaults to "cert-manager.io", override if CA is provided outside of the chart | `cert-manager.io` | -| `upstreamAuthority.certManager.namespace` | Specify to use a namespace other then the one the chart is installed into | `""` | -| `upstreamAuthority.certManager.kubeConfigFile` | Path to kube config file on node to setup cert manager | `""` | -| `upstreamAuthority.certManager.ca.create` | Creates a Cert-Manager CA | `false` | -| `upstreamAuthority.certManager.ca.duration` | Duration of the CA. Defaults to 10 years | `87600h` | -| `upstreamAuthority.certManager.ca.privateKey.algorithm` | Algorithm to generate private key for CA | `ECDSA` | -| `upstreamAuthority.certManager.ca.privateKey.size` | Size of generated private key for CA | `256` | -| `upstreamAuthority.certManager.ca.privateKey.rotationPolicy` | Rotation policy for generated private key | `""` | -| `upstreamAuthority.certManager.ca.renewBefore` | How long to wait before renewing the CA | `""` | -| `upstreamAuthority.spire.enabled` | Flag to use another Spire install as upstream CA | `false` | -| `upstreamAuthority.spire.upstreamDriver` | Driver for Spire as upstream CA | `""` | -| `upstreamAuthority.spire.server` | Server details for the Spire instance use as upstream CA | | -| `upstreamAuthority.spire.server.nameOverride` | Override the name for upstream Spire server. Should only be changed when building your own nested chart to ensure names align. | `""` | -| `upstreamAuthority.spire.server.address` | Address for upstream Spire server | `""` | -| `upstreamAuthority.spire.server.port` | Port for upstream Spire server | `443` | -| `upstreamAuthority.vault.enabled` | Enable Hashicorp Vault as upstream CA | `false` | -| `upstreamAuthority.vault.vaultAddr` | The URL of the Vault server. (e.g., https://vault.example.com:8443/) | `""` | -| `upstreamAuthority.vault.namespace` | Name of the Vault namespace. This is only available in the Vault Enterprise. | `""` | -| `upstreamAuthority.vault.pkiMountPoint` | Name of the mount point where PKI secret engine is mounted | `pki` | -| `upstreamAuthority.vault.insecureSkipVerify` | If true, caCert options are ignored and Spire accepts any server certificates claiming to be Vault | `false` | -| `upstreamAuthority.vault.caCert.type` | Type of resource representing the Vault server certificate, options are 'Secret' or 'Configmap', the item must be named `ca.crt` | `Secret` | -| `upstreamAuthority.vault.caCert.name` | Name of the Kubernetes resource containing the Vault server certificate | `vault-ca` | -| `upstreamAuthority.vault.k8sAuth.enabled` | Enable k8s authentication to Hashicorp Vault | `false` | -| `upstreamAuthority.vault.k8sAuth.k8sAuthMountPoint` | Name of the mount point where the Kubernetes auth method is mounted | `kubernetes` | -| `upstreamAuthority.vault.k8sAuth.k8sAuthRoleName` | Required - Name of the Vault role. The plugin authenticates against the named role | `""` | -| `upstreamAuthority.vault.k8sAuth.token.audience` | Intended audience of the PSAT, it must match one of the audiences supported by the Kubernetes API server. If no audience is specified, it defaults to the identifier of API Server. See ['Service Account Documentation'](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#serviceaccount-token-volume-projection) for more info. | `vault` | -| `upstreamAuthority.vault.k8sAuth.token.expiry` | Expiry time in seconds for the token | `7200` | -| `notifier.k8sBundle.enabled` | Enable local k8s bundle uploader | `false` | -| `notifier.k8sBundle.namespace` | Namespace to push the bundle into, if blank will default to SPIRE Server namespace | `""` | -| `notifier.k8sBundle.apiServiceLabel` | If set, rotate the CA Bundle in API services with this label set to true. | `""` | -| `notifier.k8sBundle.webhookLabel` | If set, rotate the CA Bundle in validating and mutating webhooks with this label set to true. | `""` | -| `notifier.externalK8sBundle.enabled` | Enable external k8s bundle uploader | `false` | -| `notifier.externalK8sBundle.defaults.namespace` | Namespace to push the bundle into on clusters | `spire-system` | -| `notifier.externalK8sBundle.defaults.configMap` | ConfigMap name to push the bundle into on external clusters | `spire-bundle-upstream` | -| `notifier.externalK8sBundle.defaults.configMapKey` | ConfigMap key to push the bundle into on external clusters | `bundle.crt` | -| `notifier.externalK8sBundle.clusters` | A dictionary of clusters to add with optional overrides. If empty, all clusters defined in kubeConfigs will be used. | `{}` | -| `controllerManager.enabled` | Flag to enable controller manager | `false` | -| `controllerManager.staticManifestMode` | Flag to configure static mode. Valid options off, internal, and external. If internal, the identities config options will be rendered to an included configmap | `off` | -| `controllerManager.className` | specify to use an explicit class name. If empty, it will be automatically set to Release.Namespace-Release.Name to not conflict with other installs, enabling parallel installs. | `""` | -| `controllerManager.watchClassless` | specify to process custom resources without class name specified. Useful to slowly migrate to class names from classless installs. Do not have two installs on the same k8s cluster both set to true. | `false` | -| `controllerManager.entryIDPrefixCleanup` | Sets which entry prefixes to remove for migrations. Consult the spiffe.io docs about this option before changing. Its unlikely you will need to ever change it. | `false` | -| `controllerManager.addEntryIDPrefix` | If true, prepends the clusterName to the entryID of each entry the controller manager registers. | `true` | -| `controllerManager.gcInterval` | How often the SPIRE state is reconciled when the controller is otherwise idle. This impacts how quickly SPIRE state will converge after CRDs are removed or SPIRE state is mutated underneath the controller. Values are in nanoseconds. | `10000000000` | -| `controllerManager.logLevel` | The log level for the controller manager. Supported values are info, error, warn and debug. | `info` | -| `controllerManager.logEncoding` | The log encoding for the controller manager. Supported values are console and json. | `console` | -| `controllerManager.leaderElection.leaseDuration` | Duration that non-leader candidates will wait to force acquire leadership. Increase this in high-load clusters to reduce API server pressure. | `15s` | -| `controllerManager.leaderElection.renewDeadline` | Duration the acting leader will retry refreshing leadership before giving up. Must be less than leaseDuration. | `10s` | -| `controllerManager.leaderElection.retryPeriod` | Duration the LeaderElector clients should wait between tries of actions. Must be less than renewDeadline. | `2s` | -| `controllerManager.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `5` | -| `controllerManager.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` | -| `controllerManager.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` | -| `controllerManager.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `3` | -| `controllerManager.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `5` | -| `controllerManager.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `10` | -| `controllerManager.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` | -| `controllerManager.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `3` | -| `controllerManager.parentIDTemplate` | The template that is used to register workloads. | `spiffe://{{ .TrustDomain }}/spire/agent/k8s_psat/{{ .ClusterName }}/{{ .NodeMeta.UID }}` | -| `controllerManager.expandEnv` | Set to true to enable environment variable substitution of config file options | `false` | -| `controllerManager.extraEnv` | Extra environment variables to add to the controller manager | `[]` | -| `controllerManager.installAndUpgradeHook.enabled` | Enable Helm hook to autofix common install/upgrade issues (should be disabled when using `helm template`) | `true` | -| `controllerManager.deleteHook.enabled` | Enable Helm hook to autofix common delete issues (should be disabled when using `helm template`) | `true` | -| `controllerManager.image.registry` | The OCI registry to pull the image from | `ghcr.io` | -| `controllerManager.image.repository` | The repository within the registry | `spiffe/spire-controller-manager` | -| `controllerManager.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `controllerManager.image.tag` | Overrides the image tag whose default is the chart appVersion | `0.6.4` | -| `controllerManager.resources` | Resource requests and limits for controller manager | `{}` | -| `controllerManager.securityContext` | Security context | `{}` | -| `controllerManager.service.type` | Service type for controller manager | `ClusterIP` | -| `controllerManager.service.port` | Service port for controller manager | `443` | -| `controllerManager.service.annotations` | Annotations for service resource | `{}` | -| `controllerManager.configMap.annotations` | Annotations to add to the Controller Manager ConfigMap | `{}` | -| `controllerManager.ignoreNamespaces` | These namespaces are ignored by controller manager | `[]` | -| `controllerManager.reconcile.clusterSPIFFEIDs` | Enable reconciliation of clusterSPIFFEIDs from K8s to the SPIRE server | `true` | -| `controllerManager.reconcile.clusterStaticEntries` | Enable reconciliation of clusterStaticEntries from K8s to the SPIRE server | `true` | -| `controllerManager.reconcile.clusterFederatedTrustDomains` | Enable reconciliation of clusterFederatedTrustDomains from K8s to the SPIRE server | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.default.enabled` | Enable this identity for controller manager | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.default.spiffeIDTemplate` | Spiffe ID template for identities | `spiffe://{{ .TrustDomain }}/ns/{{ .PodMeta.Namespace }}/sa/{{ .PodSpec.ServiceAccountName }}` | -| `controllerManager.identities.clusterSPIFFEIDs.default.podSelector` | Selector for pods to issue identity | `{}` | -| `controllerManager.identities.clusterSPIFFEIDs.default.namespaceSelector` | Selector for namespaces to issue identity | `{}` | -| `controllerManager.identities.clusterSPIFFEIDs.default.dnsNameTemplates` | DNS name template for issued identities | `[]` | -| `controllerManager.identities.clusterSPIFFEIDs.default.federatesWith` | Other Spire server URLs for identity federation | `[]` | -| `controllerManager.identities.clusterSPIFFEIDs.default.workloadSelectorTemplates` | Templates to produce selectors that apply to a given workload before it will receive an ID | `[]` | -| `controllerManager.identities.clusterSPIFFEIDs.default.ttl` | Indicates an upper-bound time-to-live for X509 SVIDs. If unset, the cluster default will be chosen. | `""` | -| `controllerManager.identities.clusterSPIFFEIDs.default.jwtTTL` | Indicates an upper-bound time-to-live for JWT SVIDs. If unset, the cluster default will be chosen. | `""` | -| `controllerManager.identities.clusterSPIFFEIDs.default.admin` | Indicates any pod matched by this identity will be an admin. Use this with extreme care. | `false` | -| `controllerManager.identities.clusterSPIFFEIDs.default.downstream` | Set if this spire instance is a root server and the workloads are downstream servers. | `false` | -| `controllerManager.identities.clusterSPIFFEIDs.default.autoPopulateDNSNames` | Auto populate DNS names from services attached to pods | `false` | -| `controllerManager.identities.clusterSPIFFEIDs.default.fallback` | Apply this ID only if there are no other matching non fallback ClusterSPIFFEIDs | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.child-servers.enabled` | Enable this identity for controller manager | `false` | -| `controllerManager.identities.clusterSPIFFEIDs.child-servers.type` | The type of rule this is. | `child-servers` | -| `controllerManager.identities.clusterSPIFFEIDs.child-servers.downstream` | Set if this spire instance is a root server and the workloads are downstream servers. | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.enabled` | Enable this identity for controller manager | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.type` | The type of rule this is. | `oidc-discovery-provider` | -| `controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.autoPopulateDNSNames` | Auto populate DNS names to the discovery provider | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.dnsNameTemplates` | DNS name template for issued identities | `[]` | -| `controllerManager.identities.clusterSPIFFEIDs.test-keys.enabled` | Enable this identity for controller manager | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.test-keys.type` | The type of rule this is. | `test-keys` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-keeper.enabled` | Enable this identity for controller manager | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-keeper.type` | The type of rule this is. | `spike-keeper` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-keeper.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spike/keeper/{{ .PodMeta.Name }}` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-nexus.enabled` | Enable this identity for controller manager | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-nexus.type` | The type of rule this is. | `spike-nexus` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-nexus.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spike/nexus/{{ .PodMeta.Name }}` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-bootstrap.enabled` | Enable this identity for controller manager | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-bootstrap.type` | The type of rule this is. | `spike-bootstrap` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-bootstrap.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spike/bootstrap/{{ .PodMeta.Name }}` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-pilot.enabled` | Enable this identity for controller manager | `true` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-pilot.type` | The type of rule this is. | `spike-pilot` | -| `controllerManager.identities.clusterSPIFFEIDs.spike-pilot.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spike/pilot/role/superuser` | -| `controllerManager.identities.clusterStaticEntries` | Specify ClusterStaticEntry objects. | `{}` | -| `controllerManager.identities.clusterFederatedTrustDomains` | Specify ClusterFederatedTrustDomain objects. | `{}` | -| `controllerManager.validatingWebhookConfiguration.enabled` | Disable only when you have another chart instance on the k8s cluster with webhooks enabled. | `true` | -| `controllerManager.validatingWebhookConfiguration.failurePolicy` | Action when identity is not issued | `Fail` | -| `controllerManager.cacheNamespaces` | If specified restricts the manager's cache to watch objects in the desired namespaces. Defaults to all namespaces. | `{}` | -| `externalControllerManagers.enabled` | Flag to enable external controller managers | `false` | -| `externalControllerManagers.defaults.reconcile.clusterSPIFFEIDs` | Enable reconciliation of clusterSPIFFEIDs from K8s to the SPIRE server | `true` | -| `externalControllerManagers.defaults.reconcile.clusterStaticEntries` | Enable reconciliation of clusterStaticEntries from K8s to the SPIRE server | `false` | -| `externalControllerManagers.defaults.reconcile.clusterFederatedTrustDomains` | Enable reconciliation of clusterFederatedTrustDomains from K8s to the SPIRE server | `false` | -| `externalControllerManagers.defaults.className` | specify to use an explicit class name. If empty, it will be automatically set to Release.Namespace-Release.Name to not conflict with other installs, enabling parallel installs. | `""` | -| `externalControllerManagers.defaults.watchClassless` | specify to process custom resources without class name specified. Useful to slowly migrate to class names from classless installs. Do not have two installs on the same k8s cluster both set to true. | `false` | -| `externalControllerManagers.defaults.entryIDPrefixCleanup` | consult the spiffe.io docs about this option before changing. Its unlikely you will need to ever change it. | `false` | -| `externalControllerManagers.defaults.parentIDTemplate` | The template that is used to register workloads. | `spiffe://{{ .TrustDomain }}/spire/agent/k8s_psat/{{ .ClusterName }}/{{ .NodeMeta.UID }}` | -| `externalControllerManagers.defaults.leaderElection.leaseDuration` | Duration that non-leader candidates will wait to force acquire leadership. Increase this in high-load clusters to reduce API server pressure. | `15s` | -| `externalControllerManagers.defaults.leaderElection.renewDeadline` | Duration the acting leader will retry refreshing leadership before giving up. Must be less than leaseDuration. | `10s` | -| `externalControllerManagers.defaults.leaderElection.retryPeriod` | Duration the LeaderElector clients should wait between tries of actions. Must be less than renewDeadline. | `2s` | -| `externalControllerManagers.defaults.expandEnv` | Set to true to enable environment variable substitution of config file options | `false` | -| `externalControllerManagers.defaults.extraEnv` | Extra environment variables to add to the controller manager | `[]` | -| `externalControllerManagers.defaults.resources` | Resource requests and limits for controller manager | `{}` | -| `externalControllerManagers.defaults.securityContext` | Security context | `{}` | -| `externalControllerManagers.defaults.configMap.annotations` | Annotations to add to the Controller Manager ConfigMap | `{}` | -| `externalControllerManagers.defaults.ignoreNamespaces` | These namespaces are ignored by controller manager | `[]` | -| `externalControllerManagers.defaults.cacheNamespaces` | If specified restricts the manager's cache to watch objects in the desired namespaces. Defaults to all namespaces. | `{}` | -| `externalControllerManagers.clusters` | A dictionary of clusters to add with optional overrides (kubeConfigName, reconcile, healthPortName, prometheusPortName). If empty, all clusters defined in kubeConfigs will be used. | `{}` | -| `tools.kubectl.image.registry` | The OCI registry to pull the image from | `registry.k8s.io` | -| `tools.kubectl.image.repository` | The repository within the registry | `kubectl` | -| `tools.kubectl.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `tools.kubectl.image.tag` | Overrides the image tag whose default is the chart appVersion | `""` | -| `tools.busybox.image.registry` | The OCI registry to pull the image from | `""` | -| `tools.busybox.image.repository` | The repository within the registry | `busybox` | -| `tools.busybox.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `tools.busybox.image.tag` | Overrides the image tag whose default is the chart appVersion | `1.37.0-uclibc` | -| `telemetry.prometheus.enabled` | Flag to enable prometheus monitoring | `false` | -| `telemetry.prometheus.podMonitor.enabled` | Enable podMonitor for prometheus | `false` | -| `telemetry.prometheus.podMonitor.namespace` | Override where to install the podMonitor, if not set will use the same namespace as the spire-agent | `""` | -| `telemetry.prometheus.podMonitor.labels` | Pod labels to filter for prometheus monitoring | `{}` | -| `telemetry.datadog.enabled` | Flag to enable datadog monitoring | `false` | -| `telemetry.datadog.address` | The address of the datadog service to send metrics to. The default URL for services are `..svc` | `datadog.kube-system.svc` | -| `telemetry.datadog.port` | The port of the datadog service to send metrics to | `8125` | -| `ingress.enabled` | Flag to enable ingress | `false` | -| `ingress.className` | Ingress class name | `""` | -| `ingress.controllerType` | Specify what type of ingress controller you're using to add the necessary annotations accordingly. If blank, autodetection is attempted. If other, no annotations will be added. Must be one of [ingress-nginx, openshift, other, ""]. | `""` | -| `ingress.annotations` | Annotations for the ingress object | `{}` | -| `ingress.host` | Host name for the ingress. If no '.' in host, trustDomain is automatically appended. The rest of the rules will be autogenerated. For more customizability, use hosts[] instead. | `spire-server` | -| `ingress.tlsSecret` | Secret that has the certs. If blank will use default certs. Used with host var. | `""` | -| `ingress.hosts` | Host paths for ingress object. If empty, rules will be built based on the host var. | `[]` | -| `ingress.tls` | Secrets containing TLS certs to enable https on ingress. If empty, rules will be built based on the host and tlsSecret vars. | `[]` | -| `extraEnv` | Extra environment variables to add to the spire server | `[]` | -| `extraVolumes` | Extra volumes to be mounted | `[]` | -| `extraVolumeMounts` | Extra volume mounts | `[]` | -| `extraContainers` | Additional containers to create | `[]` | -| `initContainers` | Additional init containers to create | `[]` | -| `caKeyType` | The CA key type to use, possible values are rsa-2048, rsa-4096, ec-p256, ec-p384 (AWS requires the use of RSA. EC cryptography is not supported) | `rsa-2048` | -| `caTTL` | TTL for CA | `24h` | -| `agentTTL` | The TTL to use for agent SVIDs. If unset, the defaultX509SvidTTL will be used. | `""` | -| `defaultX509SvidTTL` | TTL for X509 Svids | `4h` | -| `defaultJwtSvidTTL` | TTL for JWT Svids | `1h` | -| `rateLimit.attestation` | Enable rate limiting for node attestation. When true, rate limits node attestation to 1 per second globally. Set to false to disable. | `true` | -| `rateLimit.signing` | Enable rate limiting for SVID signing (BatchNewX509SVID, BatchNewJWTSVID). When true, rate limits signing to 500 requests per second per server pod. Set to false to disable. Disabling is appropriate when running many replicas or during thundering-herd recovery. | `true` | -| `pruneAttestedNodesExpiredFor` | Enables periodic pruning of attested node entries with expired SVIDs. Set to a duration (e.g. "168h" for 7 days) to prune nodes that expired longer ago than the specified duration. Set to "" (empty) to disable pruning. When enabled, expired nodes are pruned at a regular interval. | `""` | -| `pruneTOFUNodes` | If true, includes non-reattestable (TOFU) nodes in the pruning process when pruneAttestedNodesExpiredFor is set. Banned nodes are never pruned. | `false` | -| `maxAttestedNodeInfoStaleness` | How long to trust stale cache information about attested nodes. Set to "" to use the SPIRE default (0s). Increasing this can improve performance under high load by reducing datastore reads, at the cost of acting on slightly stale node state. Accepts Go duration strings (e.g. "10s", "1m"). | `""` | -| `nodeAttestor.k8sPSAT.enabled` | Enable PSAT k8s nodeattestor | `true` | -| `nodeAttestor.k8sPSAT.serviceAccountAllowList` | Allowed service accounts for PSAT nodeattestor. If namespace isn't specified, release namespace will be used. | `[]` | -| `nodeAttestor.k8sPSAT.audience` | Audience for token validation. If set to [] (empty array), Kubernetes API server audience is used | `[]` | -| `nodeAttestor.k8sPSAT.allowedNodeLabelKeys` | Node label keys considered for selectors | `[]` | -| `nodeAttestor.k8sPSAT.allowedPodLabelKeys` | Pod label keys considered for selectors | `[]` | -| `nodeAttestor.externalK8sPSAT.enabled` | Enable PSAT k8s nodeattestor for external Kubernetes clusters | `true` | -| `nodeAttestor.externalK8sPSAT.defaults.serviceAccountAllowList` | Allowed service accounts for PSAT node attestor | `[]` | -| `nodeAttestor.externalK8sPSAT.defaults.audience` | Audience for token validation. If it is set to an empty array ([]), Kubernetes API server audience is used | `[]` | -| `nodeAttestor.externalK8sPSAT.defaults.allowedNodeLabelKeys` | Node label keys considered for selectors | `[]` | -| `nodeAttestor.externalK8sPSAT.defaults.allowedPodLabelKeys` | Pod label keys considered for selectors | `[]` | -| `nodeAttestor.externalK8sPSAT.clusters` | A dictionary of clusters to add with optional overrides. If empty, all clusters defined in kubeConfigs will be used. | `{}` | -| `nodeAttestor.joinToken.enabled` | Enable the join_token nodeattestor | `false` | -| `nodeAttestor.httpChallenge.enabled` | Enable the http_challenge nodeattesto | `false` | -| `nodeAttestor.httpChallenge.allowedDNSPatterns` | A list of regular expressions to match to the hostname being attested. If none match, attestation will fail. If a blank list, all hostnames are allowed. | `[]` | -| `nodeAttestor.httpChallenge.requiredPort` | Set to a port number to require clients to listen only on that port. If 0, all port numbers are allowed | `0` | -| `nodeAttestor.httpChallenge.allowNonRootPorts` | Allow using ports >= 1024 from clients for attestation | `true` | -| `nodeAttestor.httpChallenge.tofu` | Trust on first use of the successful challenge. Can only be disabled if allowNonRootPorts=false or requiredPort < 1024 | `true` | -| `nodeAttestor.tpmDirect.enabled` | Enable the direct TPM node attestor, a 3rd party plugin by Boxboat. This plugin is experimental. | `false` | -| `nodeAttestor.tpmDirect.image.registry` | The OCI registry to pull the image from | `ghcr.io` | -| `nodeAttestor.tpmDirect.image.repository` | The repository within the registry | `spiffe/spire-tpm-plugin-tpm-attestor-server` | -| `nodeAttestor.tpmDirect.image.pullPolicy` | The image pull policy | `IfNotPresent` | -| `nodeAttestor.tpmDirect.image.tag` | Overrides the image tag | `v1.9.0` | -| `nodeAttestor.tpmDirect.checksum` | The sha256 checksum of the plugin binary | `46d0caad8c25a027dd11c93e18b58a8bc6fbd9f1fe2e36fa2a0dd440986de4dc` | -| `nodeAttestor.tpmDirect.pluginPath` | The filename in the container of the plugin | `/app/tpm_attestor_server` | -| `nodeAttestor.tpmDirect.cas` | A dictionary of TPM CA PEM or DER files that are allowed to connect. | `{}` | -| `nodeAttestor.tpmDirect.hashes` | A list of TPM hashes that are allowed to connect. | `[]` | -| `nodeAttestor.awsIID.enabled` | Enable the aws_iid node attestor | `false` | -| `nodeAttestor.awsIID.assumeRole` | AWS IAM Role NAME to use for the attestation | `""` | -| `nodeAttestor.awsIID.verifyOrganization` | When enabled, SPIRE verifies the attesting node's AWS account is a member of your AWS Organization ([SPIRE aws_iid server plugin](https://github.com/spiffe/spire/blob/main/doc/plugin_server_nodeattestor_aws_iid.md)). | | -| `nodeAttestor.awsIID.verifyOrganization.enabled` | Enable AWS Organizations membership validation (`verify_organization` in plugin config) | `false` | -| `nodeAttestor.awsIID.verifyOrganization.managementAccountId` | AWS Organizations management/root account ID (12 digits); SPIRE assumes `arn:aws:iam:::role/` for listing org accounts. | `""` | -| `nodeAttestor.awsIID.verifyOrganization.assumeOrgRole` | IAM role **name** in the management account; must allow `organizations:ListAccounts` and trust the IAM identity used by the SPIRE server. | `""` | -| `nodeAttestor.awsIID.verifyOrganization.managementAccountRegion` | Optional region SPIRE uses for org validation/cache keying (defaults in SPIRE if unset). | `""` | -| `nodeAttestor.awsIID.verifyOrganization.orgAccountMapTTL` | Optional cache TTL for the org account map (SPIRE expects a duration ≥ 1m when set; e.g. `3m`, `5m`). Defaults to 3 minutes. | `3m` | -| `nodeAttestor.gcpIIT.enabled` | Enable the gcp_iit node attestor | `false` | -| `nodeAttestor.gcpIIT.projectIDAllowList` | List of ProjectIDs from which nodes can be attested | `[]` | -| `nodeAttestor.gcpIIT.useInstanceMetadata` | If true, instance metadata is fetched from the Google Compute Engine API and used to augment the node selectors produced by the plugin | `false` | -| `nodeAttestor.gcpIIT.allowedLabelKeys` | Instance label keys considered for selectors | `[]` | -| `nodeAttestor.gcpIIT.allowedMetadataKeys` | Instance metadata keys considered for selectors | `[]` | -| `nodeAttestor.gcpIIT.metadataValueMaxSize` | Sets the maximum metadata value size considered by the plugin for selectors | `0` | -| `nodeAttestor.gcpIIT.agentPathTemplate` | A URL path portion format of Agent's SPIFFE ID. Describe in text/template format. | `""` | -| `bundlePublisher.k8sConfigMap.enabled` | Enable local k8s bundle uploader | `true` | -| `bundlePublisher.k8sConfigMap.namespace` | Namespace to push the bundle into, if blank will default to SPIRE Server namespace | `""` | -| `bundlePublisher.k8sConfigMap.format` | Format of the trust bundle. Can be pem or spiffe | `spiffe` | -| `bundlePublisher.externalK8sConfigMap.enabled` | Enable external k8s bundle uploader | `true` | -| `bundlePublisher.externalK8sConfigMap.defaults.namespace` | Namespace to push the bundle into on clusters | `spire-system` | -| `bundlePublisher.externalK8sConfigMap.defaults.configMapName` | ConfigMap name to push the bundle into on external clusters | `spire-bundle-upstream` | -| `bundlePublisher.externalK8sConfigMap.defaults.configMapKey` | ConfigMap key to push the bundle into on external clusters | `""` | -| `bundlePublisher.externalK8sConfigMap.defaults.format` | Format of the trust bundle. Can be pem or spiffe | `spiffe` | -| `bundlePublisher.externalK8sConfigMap.clusters` | A dictionary of clusters to add with optional overrides. If empty, all clusters defined in kubeConfigs will be used. | `{}` | -| `bundlePublisher.awsRolesAnywhereTrustAnchor.enabled` | Enable the AWS S3 bundle publisher | `false` | -| `bundlePublisher.awsRolesAnywhereTrustAnchor.region` | AWS region to store the trust bundle | `""` | -| `bundlePublisher.awsRolesAnywhereTrustAnchor.trustAnchorID` | AWS trust anchor ID to publish to | `""` | -| `bundlePublisher.awsS3.enabled` | Enable the AWS S3 bundle publisher | `false` | -| `bundlePublisher.awsS3.endpoint` | A custom S3 endpoint should be set when using third-party object storage providers, such as Minio. | `""` | -| `bundlePublisher.awsS3.region` | AWS region to store the trust bundle | `""` | -| `bundlePublisher.awsS3.bucket` | AWS S3 bucket name to which the trust bundle is uploaded | `""` | -| `bundlePublisher.awsS3.objectKey` | AWS S3 object key inside the bucket | `""` | -| `bundlePublisher.awsS3.format` | Format in which the trust bundle is stored. Valid options [spiffe, jwks, pem] | `""` | -| `bundlePublisher.gcpCloudStorage.enabled` | Enable the Google Cloud Storage bundle publisher | `false` | -| `bundlePublisher.gcpCloudStorage.bucketName` | Google Cloud Storage bucket name to which the trust bundle is uploaded | `""` | -| `bundlePublisher.gcpCloudStorage.objectName` | Google Cloud Storage object name | `""` | -| `bundlePublisher.gcpCloudStorage.format` | Format in which the trust bundle is stored. Valid options [spiffe, jwks, pem] | `""` | +| Name | Description | Value | +| -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | +| `replicaCount` | SPIRE server currently runs with a sqlite database. Scaling to multiple instances will not work until we use an external database. | `1` | +| `image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `image.repository` | The repository within the registry | `spiffe/spire-server` | +| `image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `image.tag` | Overrides the image tag whose default is the chart appVersion | `""` | +| `kind` | Define SPIRE server deployment type. Can be statefulset/deployment. Defaults to statefulset if not set. This feature is experimental. | `statefulset` | +| `externalServer` | Deploy only the bundle ConfigMap, RBAC rules, and identity documents but not the server. Use in a nested setup where the server is external. | `false` | +| `imagePullSecrets` | Pull secrets for images | `[]` | +| `nameOverride` | Name override | `""` | +| `crNameOverride` | Name override for any custom resources | `""` | +| `namespaceOverride` | Namespace override | `""` | +| `fullnameOverride` | Fullname override | `""` | +| `serviceAccount.create` | Specifies whether a service account should be created | `true` | +| `serviceAccount.annotations` | Annotations to add to the service account | `{}` | +| `serviceAccount.name` | The name of the service account to use. If not set and create is true, a name is generated. | `""` | +| `podAnnotations` | Annotations to add to pods | `{}` | +| `podLabels` | Labels to add to pods | `{}` | +| `podSecurityContext` | Pod security context | `{}` | +| `securityContext` | Security context | `{}` | +| `priorityClassName` | Priority class assigned to statefulset pods. Can be auto set with global.recommendations.priorityClassName. | `""` | +| `service.type` | Type of the Spire server service created | `ClusterIP` | +| `service.port` | Port for the created service | `443` | +| `service.annotations` | Annotations to add to the service object | `{}` | +| `service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `""` | +| `configMap.annotations` | Annotations to add to the SPIRE Server ConfigMap | `{}` | +| `resources` | Resource requests and limits | `{}` | +| `autoscaling.enabled` | Flag to enable autoscaling | `false` | +| `autoscaling.minReplicas` | Minimum replicas for autoscaling | `1` | +| `autoscaling.maxReplicas` | Maximum replicas for autoscaling | `100` | +| `autoscaling.scaleOnSPIREServerOnly` | Flag to only consider the main SPIRE container for autoscaling purposes | `false` | +| `autoscaling.targetCPUUtilizationPercentage` | Target CPU utilization that triggers autoscaling | `80` | +| `nodeSelector` | Select specific nodes to run on (currently only amd64 is supported by Tornjak) | `{}` | +| `tolerations` | List of tolerations | `[]` | +| `affinity` | List of node affinities | `{}` | +| `topologySpreadConstraints` | Topology spread constraints for resilience | `[]` | +| `livenessProbe.failureThreshold` | Failure threshold count for livenessProbe | `2` | +| `livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `15` | +| `livenessProbe.periodSeconds` | Period seconds for livenessProbe | `60` | +| `livenessProbe.timeoutSeconds` | Timeout in seconds for livenessProbe | `3` | +| `readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `5` | +| `readinessProbe.periodSeconds` | Period seconds for readinessProbe | `5` | +| `persistence.type` | What type of volume to use for persistence. Valid options pvc (recommended), hostPath, emptyDir (testing or nested child only) | `pvc` | +| `persistence.size` | What size volume to use for persistence | `1Gi` | +| `persistence.accessMode` | What access mode to use for persistence. Valid options are ReadWriteOnce (recommended), ReadWriteOncePod, ReadWriteMany (not recommended) | `ReadWriteOnce` | +| `persistence.storageClass` | What storage class to use for persistence | `nil` | +| `persistence.hostPath` | Which path to use on the host when persistence.type = hostPath | `""` | +| `dataStore.sql.databaseType` | Other supported databases are ["postgres", "mysql", "aws_postgresql", "aws_mysql", "gcp_mysql_sa_iam"]. Note: aws type databases are still experimental. gcp_mysql_sa_iam uses IAM authentication by default. | `sqlite3` | +| `dataStore.sql.databaseName` | Only used when type != "sqlite3" | `spire` | +| `dataStore.sql.host` | Only used when type != "sqlite3" | `""` | +| `dataStore.sql.port` | If 0 (default), it will auto set to 5432 for postgres and 3306 for mysql. Only used by those databases. | `0` | +| `dataStore.sql.username` | Only used when type != "sqlite3" | `spire` | +| `dataStore.sql.password` | Only used when type != "sqlite3" | `""` | +| `dataStore.sql.file` | Data source file. Only used when type == "sqlite3" | `/run/spire/data/datastore.sqlite3` | +| `dataStore.sql.options` | takes an array of objects of form {: } to use when building the database connection string | `[]` | +| `dataStore.sql.rootCAPath` | Path to Root CA bundle (MySQL only) | `""` | +| `dataStore.sql.clientCertPath` | Path to client certificate (MySQL only) | `""` | +| `dataStore.sql.clientKeyPath` | Path to private key for client certificate (MySQL only) | `""` | +| `dataStore.sql.externalSecret.enabled` | Enable external secret for datastore creds | `false` | +| `dataStore.sql.externalSecret.name` | The name of the secret object | `""` | +| `dataStore.sql.externalSecret.key` | The key of the secret object whose value is the dataStore.sql password | `""` | +| `dataStore.sql.maxOpenConns` | The maximum number of open db connections | `100` | +| `dataStore.sql.maxIdleConns` | The maximum number of idle connections in the pool | `2` | +| `dataStore.sql.connMaxLifetime` | The maximum amount of time a connection may be reused. Supports duration strings (e.g., "1h", "30m", "3600s") or 0 for unlimited. Duration strings are recommended to prevent connection accumulation. | `0` | +| `dataStore.sql.disableMigration` | True to disable auto-migration functionality | `false` | +| `dataStore.sql.region` | Region to use when database type is either aws_mysql or aws_postgresql | `""` | +| `dataStore.sql.readOnly.enabled` | Set to true to configure a readOnly dartabase connection | `false` | +| `dataStore.sql.readOnly.host` | Only used when type != "sqlite3" | `""` | +| `dataStore.sql.readOnly.port` | If 0 (default), it will auto set to 5432 for postgres and 3306 for mysql. Only used by those databases. | `0` | +| `dataStore.sql.readOnly.username` | Only used when type != "sqlite3" | `spire` | +| `dataStore.sql.readOnly.password` | Only used when type != "sqlite3" | `""` | +| `dataStore.sql.readOnly.options` | Only used when type != "sqlite3" | `[]` | +| `dataStore.sql.readOnly.externalSecret.enabled` | Enable external secret for datastore creds | `false` | +| `dataStore.sql.readOnly.externalSecret.name` | The name of the secret object | `""` | +| `dataStore.sql.readOnly.externalSecret.key` | The key of the secret object whose value is the dataStore.sql password | `""` | +| `adminIDs` | SPIFFE IDs that, when present in a caller’s X509-SVID, grant that caller admin privileges. | `[]` | +| `auditLogEnabled` | If true, enables audit logging | `false` | +| `logLevel` | The log level, valid values are "debug", "info", "warn", and "error" | `info` | +| `logFormat` | The log format, valid values are "text" and "json" | `text` | +| `jwtIssuer` | The JWT issuer domain. Defaults to oidc-discovery.$trustDomain if unset | `""` | +| `clusterName` | Set the name of the Kubernetes cluster. (`kubeadm init --service-dns-domain`) | `example-cluster` | +| `trustDomain` | Set the trust domain to be used for the SPIFFE identifiers | `example.org` | +| `bundleConfigMap` | Set the Configmap name for SPIRE bundle | `spire-bundle` | +| `clusterDomain` | This is the value of your clusters `kubeadm init --service-dns-domain` flag | `cluster.local` | +| `federation.enabled` | Flag to enable federation | `false` | +| `federation.bundleEndpoint.port` | Port value for trust bundle federation | `8443` | +| `federation.bundleEndpoint.address` | Address for trust bundle federation | `0.0.0.0` | +| `federation.bundleEndpoint.refreshHint` | Hint used by federated servers on how often to refresh the bundle. CA TTL must be 3-5x the duration of this value to ensure public keys are loaded on federated servers prior to private key rotation on remote server. | `5m` | +| `federation.bundleEndpoint.profile.httpWeb.fileSyncInterval` | Interval on which to reload the certificate/key from disk | `1h` | +| `federation.tls.spire.enabled` | Use spire to secure the federation bundle endpoint | `true` | +| `federation.tls.externalSecret.enabled` | Provide your own certificate/key via tls style Kubernetes Secret | `false` | +| `federation.tls.externalSecret.secretName` | Specify which Secret to use | `""` | +| `federation.tls.certManager.enabled` | Use certificateManager to create the certificate | `false` | +| `federation.tls.certManager.issuer.create` | Create an issuer to use to issue the certificate | `true` | +| `federation.tls.certManager.issuer.acme.email` | Must be set in order to register with LetsEncrypt. By setting, you agree to their Terms of Service | `""` | +| `federation.tls.certManager.issuer.acme.server` | Server to use to get certificate. Defaults to LetsEncrypt | `https://acme-v02.api.letsencrypt.org/directory` | +| `federation.tls.certManager.issuer.acme.solvers` | Configure the issuer solvers. Defaults to http01 via ingress. | `{}` | +| `federation.tls.certManager.certificate.dnsNames` | Override the dnsNames on the certificate request. Defaults to the same settings as Ingress | `[]` | +| `federation.tls.certManager.certificate.issuerRef.group` | If you are using an external plugin, specify the group for it here | `""` | +| `federation.tls.certManager.certificate.issuerRef.kind` | Kind of the issuer reference. Override if you want to use a ClusterIssuer | `Issuer` | +| `federation.tls.certManager.certificate.issuerRef.name` | Name of the issuer to use. If unset, it will use the name of the built in issuer | `""` | +| `federation.ingress.enabled` | Flag to enable ingress for federation | `false` | +| `federation.ingress.className` | Ingress class name for federation | `""` | +| `federation.ingress.controllerType` | Specify what type of ingress controller you're using to add the necessary annotations accordingly. If blank, autodetection is attempted. If other, no annotations will be added. Must be one of [ingress-nginx, openshift, other, ""]. | `""` | +| `federation.ingress.annotations` | Annotations for the ingress object | `{}` | +| `federation.ingress.host` | Host name for the ingress. If no '.' in host, trustDomain is automatically appended. The rest of the rules will be autogenerated. For more customizability, use hosts[] instead. | `spire-server-federation` | +| `federation.ingress.tlsSecret` | Secret that has the certs. If blank will use default certs. Used with host var. | `""` | +| `federation.ingress.hosts` | Host paths for ingress object. If empty, rules will be built based on the host var. | `[]` | +| `federation.ingress.tls` | Secrets containing TLS certs to enable https on ingress. If empty, rules will be built based on the host and tlsSecret vars. | `[]` | +| `caSubject.country` | Country for Spire server CA | `ARPA` | +| `caSubject.organization` | Organization for Spire server CA | `Example` | +| `caSubject.commonName` | Common Name for Spire server CA | `example.org` | +| `credentialComposer.cel.enabled` | Enable the cel based credential composer | `false` | +| `credentialComposer.cel.image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `credentialComposer.cel.image.repository` | The repository within the registry | `spiffe/spire-credentialcomposer-cel` | +| `credentialComposer.cel.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `credentialComposer.cel.image.tag` | Overrides the image tag | `0.0.2` | +| `credentialComposer.cel.checksum` | The sha256 checksum of the plugin binary | `23fa1d10f15ad5d5c555930cf82289c664801d7d5609bfd8847f95a0a667e4e4` | +| `credentialComposer.cel.pluginPath` | The filename in the container of the plugin | `/ko-app/cmd` | +| `credentialComposer.cel.jwt.expression` | The expression to use for jwt token composing | `""` | +| `credentialComposer.uniqueID.enabled` | Add the x509UniqueIdentifier attribute to workload X509-SVIDs | `false` | +| `keyManager.disk.enabled` | Flag to enable keyManager on disk | `true` | +| `keyManager.memory.enabled` | Flag to enable keyManager in memory | `false` | +| `keyManager.awsKMS.enabled` | Flag to enable keyManager in memory | `false` | +| `keyManager.awsKMS.region` | Specify the region for AWS KMS | `""` | +| `keyManager.awsKMS.keyIdentifierFile.enabled` | Enable key identifier data to be stored in a file in persistent storage. | `false` | +| `keyManager.awsKMS.keyIdentifierValue.enabled` | Enable specifying a key identifier value for AWS KMS | `false` | +| `keyManager.awsKMS.keyIdentifierValue.identifier` | Static identifier for the SPIRE server instance | `""` | +| `keyManager.awsKMS.keyPolicy` | Policy to use when creating keys. If no policy is specified, a default policy will be used. | | +| `keyManager.awsKMS.keyPolicy.policy` | Key policy in JSON format. | `""` | +| `keyManager.awsKMS.keyPolicy.existingConfigMap` | Name of a ConfigMap that has a `policy.json` file with the key policy in JSON format. | `""` | +| `keyManager.awsKMS.keyTags` | Custom tags to apply to KMS keys created by the plugin. Tags are key-value pairs used for resource management and cost allocation. When using key tagging, you must add the `kms:TagResource` permission to your IAM policy. Constraints: keys (1-128 chars), values (0-256 chars), max 50 tags, valid chars (letters, numbers, spaces, + - = . _ : / @), keys cannot start with 'aws:' or 'spire-'. | `{}` | +| `keyManager.awsKMS.accessKeyID` | Access key ID for the AWS account. It's recommended to use an IAM role instead. See [here](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) to learn how to annotate your SPIRE Server Service Account to assume an IAM role. | `""` | +| `keyManager.awsKMS.secretAccessKey` | Secret access key for the AWS account. | `""` | +| `upstreamAuthority.disk.enabled` | Flag to enable upstream authority plugin on disk | `false` | +| `upstreamAuthority.disk.secret.create` | If disabled requires you to create a secret with the given keys (certificate, key and optional bundle) yourself. | `true` | +| `upstreamAuthority.disk.secret.name` | If secret creation is disabled, the secret with this name will be used. | `spiffe-upstream-ca` | +| `upstreamAuthority.disk.secret.data` | If secret creation is enabled, will create a secret with following certificate info | | +| `upstreamAuthority.disk.secret.data.certificate` | Certificate to store within disk upstreamAuthority. | `""` | +| `upstreamAuthority.disk.secret.data.key` | Key corresponding to the upstreamAuthority. | `""` | +| `upstreamAuthority.disk.secret.data.bundle` | Trust bundle for upstreamAuthority. | `""` | +| `upstreamAuthority.awsPCA.enabled` | Flag to enable upstream authority plugin with AWS PCA | `false` | +| `upstreamAuthority.awsPCA.region` | AWS Region to use | `""` | +| `upstreamAuthority.awsPCA.certificateAuthorityARN` | ARN of the "upstream" CA certificate | `""` | +| `upstreamAuthority.awsPCA.assumeRoleARN` | (Optional) ARN of an IAM role to assume | `""` | +| `upstreamAuthority.awsPCA.caSigningTemplateARN` | (Optional) ARN of the signing template to use for the server's CA. Defaults to a signing template for end-entity certificates only. See Using Templates (https://docs.aws.amazon.com/acm-pca/latest/userguide/UsingTemplates.html) for possible values. | `""` | +| `upstreamAuthority.awsPCA.signingAlgorithm` | (Optional) Signing algorithm to use for the server's CA. Defaults to the CA's default. See Issue Certificate (https://docs.aws.amazon.com/cli/latest/reference/acm-pca/issue-certificate.html) for possible values. | `""` | +| `upstreamAuthority.awsPCA.endpoint` | (Optional) Endpoint as hostname or fully-qualified URI that overrides the default endpoint. See AWS SDK Config docs (https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config) for more information. | `""` | +| `upstreamAuthority.awsPCA.supplementalBundlePath` | (Optional) Path to a file containing PEM-encoded CA certificates that should be additionally included in the bundle. | `""` | +| `upstreamAuthority.awsSecret.enabled` | Flag to enable upstream authority plugin with AWS Secrets Manager | `false` | +| `upstreamAuthority.awsSecret.region` | AWS Region to use | `""` | +| `upstreamAuthority.awsSecret.certFileArn` | ARN or name of the secret containing the intermediate CA certificate | `""` | +| `upstreamAuthority.awsSecret.keyFileArn` | ARN or name of the secret containing the intermediate CA private key | `""` | +| `upstreamAuthority.awsSecret.bundleFileArn` | (Optional) ARN or name of the secret containing the root CA bundle | `""` | +| `upstreamAuthority.awsSecret.assumeRoleArn` | (Optional) ARN of an IAM role to assume | `""` | +| `upstreamAuthority.certManager.enabled` | Flag to enable upstream authority plugin with cert manager | `false` | +| `upstreamAuthority.certManager.rbac.create` | Flag to create RBAC roles | `true` | +| `upstreamAuthority.certManager.issuerName` | Defaults to the release name, override if CA is provided outside of the chart | `""` | +| `upstreamAuthority.certManager.issuerKind` | Defaults to "Issuer", override if CA is provided outside of the chart | `Issuer` | +| `upstreamAuthority.certManager.issuerGroup` | Defaults to "cert-manager.io", override if CA is provided outside of the chart | `cert-manager.io` | +| `upstreamAuthority.certManager.namespace` | Specify to use a namespace other then the one the chart is installed into | `""` | +| `upstreamAuthority.certManager.kubeConfigFile` | Path to kube config file on node to setup cert manager | `""` | +| `upstreamAuthority.certManager.ca.create` | Creates a Cert-Manager CA | `false` | +| `upstreamAuthority.certManager.ca.duration` | Duration of the CA. Defaults to 10 years | `87600h` | +| `upstreamAuthority.certManager.ca.privateKey.algorithm` | Algorithm to generate private key for CA | `ECDSA` | +| `upstreamAuthority.certManager.ca.privateKey.size` | Size of generated private key for CA | `256` | +| `upstreamAuthority.certManager.ca.privateKey.rotationPolicy` | Rotation policy for generated private key | `""` | +| `upstreamAuthority.certManager.ca.renewBefore` | How long to wait before renewing the CA | `""` | +| `upstreamAuthority.spire.enabled` | Flag to use another Spire install as upstream CA | `false` | +| `upstreamAuthority.spire.upstreamDriver` | Driver for Spire as upstream CA | `""` | +| `upstreamAuthority.spire.server` | Server details for the Spire instance use as upstream CA | | +| `upstreamAuthority.spire.server.nameOverride` | Override the name for upstream Spire server. Should only be changed when building your own nested chart to ensure names align. | `""` | +| `upstreamAuthority.spire.server.address` | Address for upstream Spire server | `""` | +| `upstreamAuthority.spire.server.port` | Port for upstream Spire server | `443` | +| `upstreamAuthority.vault.enabled` | Enable Hashicorp Vault as upstream CA | `false` | +| `upstreamAuthority.vault.vaultAddr` | The URL of the Vault server. (e.g., https://vault.example.com:8443/) | `""` | +| `upstreamAuthority.vault.namespace` | Name of the Vault namespace. This is only available in the Vault Enterprise. | `""` | +| `upstreamAuthority.vault.pkiMountPoint` | Name of the mount point where PKI secret engine is mounted | `pki` | +| `upstreamAuthority.vault.insecureSkipVerify` | If true, caCert options are ignored and Spire accepts any server certificates claiming to be Vault | `false` | +| `upstreamAuthority.vault.caCert.type` | Type of resource representing the Vault server certificate, options are 'Secret' or 'Configmap', the item must be named `ca.crt` | `Secret` | +| `upstreamAuthority.vault.caCert.name` | Name of the Kubernetes resource containing the Vault server certificate | `vault-ca` | +| `upstreamAuthority.vault.k8sAuth.enabled` | Enable k8s authentication to Hashicorp Vault | `false` | +| `upstreamAuthority.vault.k8sAuth.k8sAuthMountPoint` | Name of the mount point where the Kubernetes auth method is mounted | `kubernetes` | +| `upstreamAuthority.vault.k8sAuth.k8sAuthRoleName` | Required - Name of the Vault role. The plugin authenticates against the named role | `""` | +| `upstreamAuthority.vault.k8sAuth.token.audience` | Intended audience of the PSAT, it must match one of the audiences supported by the Kubernetes API server. If no audience is specified, it defaults to the identifier of API Server. See ['Service Account Documentation'](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#serviceaccount-token-volume-projection) for more info. | `vault` | +| `upstreamAuthority.vault.k8sAuth.token.expiry` | Expiry time in seconds for the token | `7200` | +| `notifier.k8sBundle.enabled` | Enable local k8s bundle uploader | `false` | +| `notifier.k8sBundle.namespace` | Namespace to push the bundle into, if blank will default to SPIRE Server namespace | `""` | +| `notifier.k8sBundle.apiServiceLabel` | If set, rotate the CA Bundle in API services with this label set to true. | `""` | +| `notifier.k8sBundle.webhookLabel` | If set, rotate the CA Bundle in validating and mutating webhooks with this label set to true. | `""` | +| `notifier.externalK8sBundle.enabled` | Enable external k8s bundle uploader | `false` | +| `notifier.externalK8sBundle.defaults.namespace` | Namespace to push the bundle into on clusters | `spire-system` | +| `notifier.externalK8sBundle.defaults.configMap` | ConfigMap name to push the bundle into on external clusters | `spire-bundle-upstream` | +| `notifier.externalK8sBundle.defaults.configMapKey` | ConfigMap key to push the bundle into on external clusters | `bundle.crt` | +| `notifier.externalK8sBundle.clusters` | A dictionary of clusters to add with optional overrides. If empty, all clusters defined in kubeConfigs will be used. | `{}` | +| `controllerManager.enabled` | Flag to enable controller manager | `false` | +| `controllerManager.staticManifestMode` | Flag to configure static mode. Valid options off, internal, and external. If internal, the identities config options will be rendered to an included configmap | `off` | +| `controllerManager.className` | specify to use an explicit class name. If empty, it will be automatically set to Release.Namespace-Release.Name to not conflict with other installs, enabling parallel installs. | `""` | +| `controllerManager.watchClassless` | specify to process custom resources without class name specified. Useful to slowly migrate to class names from classless installs. Do not have two installs on the same k8s cluster both set to true. | `false` | +| `controllerManager.entryIDPrefixCleanup` | Sets which entry prefixes to remove for migrations. Consult the spiffe.io docs about this option before changing. Its unlikely you will need to ever change it. | `false` | +| `controllerManager.addEntryIDPrefix` | If true, prepends the clusterName to the entryID of each entry the controller manager registers. | `true` | +| `controllerManager.gcInterval` | How often the SPIRE state is reconciled when the controller is otherwise idle. This impacts how quickly SPIRE state will converge after CRDs are removed or SPIRE state is mutated underneath the controller. Values are in nanoseconds. | `10000000000` | +| `controllerManager.logLevel` | The log level for the controller manager. Supported values are info, error, warn and debug. | `info` | +| `controllerManager.logEncoding` | The log encoding for the controller manager. Supported values are console and json. | `console` | +| `controllerManager.leaderElection.leaseDuration` | Duration that non-leader candidates will wait to force acquire leadership. Increase this in high-load clusters to reduce API server pressure. | `15s` | +| `controllerManager.leaderElection.renewDeadline` | Duration the acting leader will retry refreshing leadership before giving up. Must be less than leaseDuration. | `10s` | +| `controllerManager.leaderElection.retryPeriod` | Duration the LeaderElector clients should wait between tries of actions. Must be less than renewDeadline. | `2s` | +| `controllerManager.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `5` | +| `controllerManager.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` | +| `controllerManager.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` | +| `controllerManager.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `3` | +| `controllerManager.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `5` | +| `controllerManager.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `10` | +| `controllerManager.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` | +| `controllerManager.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `3` | +| `controllerManager.parentIDTemplate` | The template that is used to register workloads. | `spiffe://{{ .TrustDomain }}/spire/agent/k8s_psat/{{ .ClusterName }}/{{ .NodeMeta.UID }}` | +| `controllerManager.expandEnv` | Set to true to enable environment variable substitution of config file options | `false` | +| `controllerManager.extraEnv` | Extra environment variables to add to the controller manager | `[]` | +| `controllerManager.installAndUpgradeHook.enabled` | Enable Helm hook to autofix common install/upgrade issues (should be disabled when using `helm template`) | `true` | +| `controllerManager.deleteHook.enabled` | Enable Helm hook to autofix common delete issues (should be disabled when using `helm template`) | `true` | +| `controllerManager.image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `controllerManager.image.repository` | The repository within the registry | `spiffe/spire-controller-manager` | +| `controllerManager.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `controllerManager.image.tag` | Overrides the image tag whose default is the chart appVersion | `0.6.4` | +| `controllerManager.resources` | Resource requests and limits for controller manager | `{}` | +| `controllerManager.securityContext` | Security context | `{}` | +| `controllerManager.service.type` | Service type for controller manager | `ClusterIP` | +| `controllerManager.service.port` | Service port for controller manager | `443` | +| `controllerManager.service.annotations` | Annotations for service resource | `{}` | +| `controllerManager.configMap.annotations` | Annotations to add to the Controller Manager ConfigMap | `{}` | +| `controllerManager.ignoreNamespaces` | These namespaces are ignored by controller manager | `[]` | +| `controllerManager.reconcile.clusterSPIFFEIDs` | Enable reconciliation of clusterSPIFFEIDs from K8s to the SPIRE server | `true` | +| `controllerManager.reconcile.clusterStaticEntries` | Enable reconciliation of clusterStaticEntries from K8s to the SPIRE server | `true` | +| `controllerManager.reconcile.clusterFederatedTrustDomains` | Enable reconciliation of clusterFederatedTrustDomains from K8s to the SPIRE server | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.default.enabled` | Enable this identity for controller manager | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.default.spiffeIDTemplate` | Spiffe ID template for identities | `spiffe://{{ .TrustDomain }}/ns/{{ .PodMeta.Namespace }}/sa/{{ .PodSpec.ServiceAccountName }}` | +| `controllerManager.identities.clusterSPIFFEIDs.default.podSelector` | Selector for pods to issue identity | `{}` | +| `controllerManager.identities.clusterSPIFFEIDs.default.namespaceSelector` | Selector for namespaces to issue identity | `{}` | +| `controllerManager.identities.clusterSPIFFEIDs.default.dnsNameTemplates` | DNS name template for issued identities | `[]` | +| `controllerManager.identities.clusterSPIFFEIDs.default.federatesWith` | Other Spire server URLs for identity federation | `[]` | +| `controllerManager.identities.clusterSPIFFEIDs.default.workloadSelectorTemplates` | Templates to produce selectors that apply to a given workload before it will receive an ID | `[]` | +| `controllerManager.identities.clusterSPIFFEIDs.default.ttl` | Indicates an upper-bound time-to-live for X509 SVIDs. If unset, the cluster default will be chosen. | `""` | +| `controllerManager.identities.clusterSPIFFEIDs.default.jwtTTL` | Indicates an upper-bound time-to-live for JWT SVIDs. If unset, the cluster default will be chosen. | `""` | +| `controllerManager.identities.clusterSPIFFEIDs.default.admin` | Indicates any pod matched by this identity will be an admin. Use this with extreme care. | `false` | +| `controllerManager.identities.clusterSPIFFEIDs.default.downstream` | Set if this spire instance is a root server and the workloads are downstream servers. | `false` | +| `controllerManager.identities.clusterSPIFFEIDs.default.autoPopulateDNSNames` | Auto populate DNS names from services attached to pods | `false` | +| `controllerManager.identities.clusterSPIFFEIDs.default.fallback` | Apply this ID only if there are no other matching non fallback ClusterSPIFFEIDs | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.child-servers.enabled` | Enable this identity for controller manager | `false` | +| `controllerManager.identities.clusterSPIFFEIDs.child-servers.type` | The type of rule this is. | `child-servers` | +| `controllerManager.identities.clusterSPIFFEIDs.child-servers.downstream` | Set if this spire instance is a root server and the workloads are downstream servers. | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.enabled` | Enable this identity for controller manager | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.type` | The type of rule this is. | `oidc-discovery-provider` | +| `controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.autoPopulateDNSNames` | Auto populate DNS names to the discovery provider | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.oidc-discovery-provider.dnsNameTemplates` | DNS name template for issued identities | `[]` | +| `controllerManager.identities.clusterSPIFFEIDs.test-keys.enabled` | Enable this identity for controller manager | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.test-keys.type` | The type of rule this is. | `test-keys` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-keeper.enabled` | Enable this identity for controller manager | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-keeper.type` | The type of rule this is. | `spike-keeper` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-keeper.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spike/keeper/{{ .PodMeta.Name }}` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-nexus.enabled` | Enable this identity for controller manager | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-nexus.type` | The type of rule this is. | `spike-nexus` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-nexus.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spike/nexus/{{ .PodMeta.Name }}` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-bootstrap.enabled` | Enable this identity for controller manager | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-bootstrap.type` | The type of rule this is. | `spike-bootstrap` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-bootstrap.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spike/bootstrap/{{ .PodMeta.Name }}` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-pilot.enabled` | Enable this identity for controller manager | `true` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-pilot.type` | The type of rule this is. | `spike-pilot` | +| `controllerManager.identities.clusterSPIFFEIDs.spike-pilot.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spike/pilot/role/superuser` | +| `controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.enabled` | Enable this identity for controller manager | `false` | +| `controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.type` | The type of rule this is. | `spire-ha-agent` | +| `controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.spiffeIDTemplate` | The template to use for this rule. | `spiffe://{{ .TrustDomain }}/spire-ha-agent` | +| `controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.federatesWith` | Federated trust domains to pass to the workload | `["spire-ha"]` | +| `controllerManager.identities.clusterStaticEntries` | Specify ClusterStaticEntry objects. | `{}` | +| `controllerManager.identities.clusterFederatedTrustDomains` | Specify ClusterFederatedTrustDomain objects. | `{}` | +| `controllerManager.validatingWebhookConfiguration.enabled` | Disable only when you have another chart instance on the k8s cluster with webhooks enabled. | `true` | +| `controllerManager.validatingWebhookConfiguration.failurePolicy` | Action when identity is not issued | `Fail` | +| `controllerManager.cacheNamespaces` | If specified restricts the manager's cache to watch objects in the desired namespaces. Defaults to all namespaces. | `{}` | +| `externalControllerManagers.enabled` | Flag to enable external controller managers | `false` | +| `externalControllerManagers.defaults.reconcile.clusterSPIFFEIDs` | Enable reconciliation of clusterSPIFFEIDs from K8s to the SPIRE server | `true` | +| `externalControllerManagers.defaults.reconcile.clusterStaticEntries` | Enable reconciliation of clusterStaticEntries from K8s to the SPIRE server | `false` | +| `externalControllerManagers.defaults.reconcile.clusterFederatedTrustDomains` | Enable reconciliation of clusterFederatedTrustDomains from K8s to the SPIRE server | `false` | +| `externalControllerManagers.defaults.className` | specify to use an explicit class name. If empty, it will be automatically set to Release.Namespace-Release.Name to not conflict with other installs, enabling parallel installs. | `""` | +| `externalControllerManagers.defaults.watchClassless` | specify to process custom resources without class name specified. Useful to slowly migrate to class names from classless installs. Do not have two installs on the same k8s cluster both set to true. | `false` | +| `externalControllerManagers.defaults.entryIDPrefixCleanup` | consult the spiffe.io docs about this option before changing. Its unlikely you will need to ever change it. | `false` | +| `externalControllerManagers.defaults.parentIDTemplate` | The template that is used to register workloads. | `spiffe://{{ .TrustDomain }}/spire/agent/k8s_psat/{{ .ClusterName }}/{{ .NodeMeta.UID }}` | +| `externalControllerManagers.defaults.leaderElection.leaseDuration` | Duration that non-leader candidates will wait to force acquire leadership. Increase this in high-load clusters to reduce API server pressure. | `15s` | +| `externalControllerManagers.defaults.leaderElection.renewDeadline` | Duration the acting leader will retry refreshing leadership before giving up. Must be less than leaseDuration. | `10s` | +| `externalControllerManagers.defaults.leaderElection.retryPeriod` | Duration the LeaderElector clients should wait between tries of actions. Must be less than renewDeadline. | `2s` | +| `externalControllerManagers.defaults.expandEnv` | Set to true to enable environment variable substitution of config file options | `false` | +| `externalControllerManagers.defaults.extraEnv` | Extra environment variables to add to the controller manager | `[]` | +| `externalControllerManagers.defaults.resources` | Resource requests and limits for controller manager | `{}` | +| `externalControllerManagers.defaults.securityContext` | Security context | `{}` | +| `externalControllerManagers.defaults.configMap.annotations` | Annotations to add to the Controller Manager ConfigMap | `{}` | +| `externalControllerManagers.defaults.ignoreNamespaces` | These namespaces are ignored by controller manager | `[]` | +| `externalControllerManagers.defaults.cacheNamespaces` | If specified restricts the manager's cache to watch objects in the desired namespaces. Defaults to all namespaces. | `{}` | +| `externalControllerManagers.clusters` | A dictionary of clusters to add with optional overrides (kubeConfigName, reconcile, healthPortName, prometheusPortName). If empty, all clusters defined in kubeConfigs will be used. | `{}` | +| `tools.kubectl.image.registry` | The OCI registry to pull the image from | `registry.k8s.io` | +| `tools.kubectl.image.repository` | The repository within the registry | `kubectl` | +| `tools.kubectl.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `tools.kubectl.image.tag` | Overrides the image tag whose default is the chart appVersion | `""` | +| `tools.busybox.image.registry` | The OCI registry to pull the image from | `""` | +| `tools.busybox.image.repository` | The repository within the registry | `busybox` | +| `tools.busybox.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `tools.busybox.image.tag` | Overrides the image tag whose default is the chart appVersion | `1.37.0-uclibc` | +| `telemetry.prometheus.enabled` | Flag to enable prometheus monitoring | `false` | +| `telemetry.prometheus.podMonitor.enabled` | Enable podMonitor for prometheus | `false` | +| `telemetry.prometheus.podMonitor.namespace` | Override where to install the podMonitor, if not set will use the same namespace as the spire-agent | `""` | +| `telemetry.prometheus.podMonitor.labels` | Pod labels to filter for prometheus monitoring | `{}` | +| `telemetry.datadog.enabled` | Flag to enable datadog monitoring | `false` | +| `telemetry.datadog.address` | The address of the datadog service to send metrics to. The default URL for services are `..svc` | `datadog.kube-system.svc` | +| `telemetry.datadog.port` | The port of the datadog service to send metrics to | `8125` | +| `ingress.enabled` | Flag to enable ingress | `false` | +| `ingress.className` | Ingress class name | `""` | +| `ingress.controllerType` | Specify what type of ingress controller you're using to add the necessary annotations accordingly. If blank, autodetection is attempted. If other, no annotations will be added. Must be one of [ingress-nginx, openshift, other, ""]. | `""` | +| `ingress.annotations` | Annotations for the ingress object | `{}` | +| `ingress.host` | Host name for the ingress. If no '.' in host, trustDomain is automatically appended. The rest of the rules will be autogenerated. For more customizability, use hosts[] instead. | `spire-server` | +| `ingress.tlsSecret` | Secret that has the certs. If blank will use default certs. Used with host var. | `""` | +| `ingress.hosts` | Host paths for ingress object. If empty, rules will be built based on the host var. | `[]` | +| `ingress.tls` | Secrets containing TLS certs to enable https on ingress. If empty, rules will be built based on the host and tlsSecret vars. | `[]` | +| `extraEnv` | Extra environment variables to add to the spire server | `[]` | +| `extraVolumes` | Extra volumes to be mounted | `[]` | +| `extraVolumeMounts` | Extra volume mounts | `[]` | +| `extraContainers` | Additional containers to create | `[]` | +| `initContainers` | Additional init containers to create | `[]` | +| `caKeyType` | The CA key type to use, possible values are rsa-2048, rsa-4096, ec-p256, ec-p384 (AWS requires the use of RSA. EC cryptography is not supported) | `rsa-2048` | +| `caTTL` | TTL for CA | `24h` | +| `agentTTL` | The TTL to use for agent SVIDs. If unset, the defaultX509SvidTTL will be used. | `""` | +| `defaultX509SvidTTL` | TTL for X509 Svids | `4h` | +| `defaultJwtSvidTTL` | TTL for JWT Svids | `1h` | +| `rateLimit.attestation` | Enable rate limiting for node attestation. When true, rate limits node attestation to 1 per second globally. Set to false to disable. | `true` | +| `rateLimit.signing` | Enable rate limiting for SVID signing (BatchNewX509SVID, BatchNewJWTSVID). When true, rate limits signing to 500 requests per second per server pod. Set to false to disable. Disabling is appropriate when running many replicas or during thundering-herd recovery. | `true` | +| `pruneAttestedNodesExpiredFor` | Enables periodic pruning of attested node entries with expired SVIDs. Set to a duration (e.g. "168h" for 7 days) to prune nodes that expired longer ago than the specified duration. Set to "" (empty) to disable pruning. When enabled, expired nodes are pruned at a regular interval. | `""` | +| `pruneTOFUNodes` | If true, includes non-reattestable (TOFU) nodes in the pruning process when pruneAttestedNodesExpiredFor is set. Banned nodes are never pruned. | `false` | +| `maxAttestedNodeInfoStaleness` | How long to trust stale cache information about attested nodes. Set to "" to use the SPIRE default (0s). Increasing this can improve performance under high load by reducing datastore reads, at the cost of acting on slightly stale node state. Accepts Go duration strings (e.g. "10s", "1m"). | `""` | +| `nodeAttestor.k8sPSAT.enabled` | Enable PSAT k8s nodeattestor | `true` | +| `nodeAttestor.k8sPSAT.serviceAccountAllowList` | Allowed service accounts for PSAT nodeattestor. If namespace isn't specified, release namespace will be used. | `[]` | +| `nodeAttestor.k8sPSAT.audience` | Audience for token validation. If set to [] (empty array), Kubernetes API server audience is used | `[]` | +| `nodeAttestor.k8sPSAT.allowedNodeLabelKeys` | Node label keys considered for selectors | `[]` | +| `nodeAttestor.k8sPSAT.allowedPodLabelKeys` | Pod label keys considered for selectors | `[]` | +| `nodeAttestor.externalK8sPSAT.enabled` | Enable PSAT k8s nodeattestor for external Kubernetes clusters | `true` | +| `nodeAttestor.externalK8sPSAT.defaults.serviceAccountAllowList` | Allowed service accounts for PSAT node attestor | `[]` | +| `nodeAttestor.externalK8sPSAT.defaults.audience` | Audience for token validation. If it is set to an empty array ([]), Kubernetes API server audience is used | `[]` | +| `nodeAttestor.externalK8sPSAT.defaults.allowedNodeLabelKeys` | Node label keys considered for selectors | `[]` | +| `nodeAttestor.externalK8sPSAT.defaults.allowedPodLabelKeys` | Pod label keys considered for selectors | `[]` | +| `nodeAttestor.externalK8sPSAT.clusters` | A dictionary of clusters to add with optional overrides. If empty, all clusters defined in kubeConfigs will be used. | `{}` | +| `nodeAttestor.joinToken.enabled` | Enable the join_token nodeattestor | `false` | +| `nodeAttestor.httpChallenge.enabled` | Enable the http_challenge nodeattesto | `false` | +| `nodeAttestor.httpChallenge.allowedDNSPatterns` | A list of regular expressions to match to the hostname being attested. If none match, attestation will fail. If a blank list, all hostnames are allowed. | `[]` | +| `nodeAttestor.httpChallenge.requiredPort` | Set to a port number to require clients to listen only on that port. If 0, all port numbers are allowed | `0` | +| `nodeAttestor.httpChallenge.allowNonRootPorts` | Allow using ports >= 1024 from clients for attestation | `true` | +| `nodeAttestor.httpChallenge.tofu` | Trust on first use of the successful challenge. Can only be disabled if allowNonRootPorts=false or requiredPort < 1024 | `true` | +| `nodeAttestor.tpmDirect.enabled` | Enable the direct TPM node attestor, a 3rd party plugin by Boxboat. This plugin is experimental. | `false` | +| `nodeAttestor.tpmDirect.image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `nodeAttestor.tpmDirect.image.repository` | The repository within the registry | `spiffe/spire-tpm-plugin-tpm-attestor-server` | +| `nodeAttestor.tpmDirect.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `nodeAttestor.tpmDirect.image.tag` | Overrides the image tag | `v1.9.0` | +| `nodeAttestor.tpmDirect.checksum` | The sha256 checksum of the plugin binary | `46d0caad8c25a027dd11c93e18b58a8bc6fbd9f1fe2e36fa2a0dd440986de4dc` | +| `nodeAttestor.tpmDirect.pluginPath` | The filename in the container of the plugin | `/app/tpm_attestor_server` | +| `nodeAttestor.tpmDirect.cas` | A dictionary of TPM CA PEM or DER files that are allowed to connect. | `{}` | +| `nodeAttestor.tpmDirect.hashes` | A list of TPM hashes that are allowed to connect. | `[]` | +| `nodeAttestor.awsIID.enabled` | Enable the aws_iid node attestor | `false` | +| `nodeAttestor.awsIID.assumeRole` | AWS IAM Role NAME to use for the attestation | `""` | +| `nodeAttestor.awsIID.verifyOrganization` | When enabled, SPIRE verifies the attesting node's AWS account is a member of your AWS Organization ([SPIRE aws_iid server plugin](https://github.com/spiffe/spire/blob/main/doc/plugin_server_nodeattestor_aws_iid.md)). | | +| `nodeAttestor.awsIID.verifyOrganization.enabled` | Enable AWS Organizations membership validation (`verify_organization` in plugin config) | `false` | +| `nodeAttestor.awsIID.verifyOrganization.managementAccountId` | AWS Organizations management/root account ID (12 digits); SPIRE assumes `arn:aws:iam:::role/` for listing org accounts. | `""` | +| `nodeAttestor.awsIID.verifyOrganization.assumeOrgRole` | IAM role **name** in the management account; must allow `organizations:ListAccounts` and trust the IAM identity used by the SPIRE server. | `""` | +| `nodeAttestor.awsIID.verifyOrganization.managementAccountRegion` | Optional region SPIRE uses for org validation/cache keying (defaults in SPIRE if unset). | `""` | +| `nodeAttestor.awsIID.verifyOrganization.orgAccountMapTTL` | Optional cache TTL for the org account map (SPIRE expects a duration ≥ 1m when set; e.g. `3m`, `5m`). Defaults to 3 minutes. | `3m` | +| `nodeAttestor.gcpIIT.enabled` | Enable the gcp_iit node attestor | `false` | +| `nodeAttestor.gcpIIT.projectIDAllowList` | List of ProjectIDs from which nodes can be attested | `[]` | +| `nodeAttestor.gcpIIT.useInstanceMetadata` | If true, instance metadata is fetched from the Google Compute Engine API and used to augment the node selectors produced by the plugin | `false` | +| `nodeAttestor.gcpIIT.allowedLabelKeys` | Instance label keys considered for selectors | `[]` | +| `nodeAttestor.gcpIIT.allowedMetadataKeys` | Instance metadata keys considered for selectors | `[]` | +| `nodeAttestor.gcpIIT.metadataValueMaxSize` | Sets the maximum metadata value size considered by the plugin for selectors | `0` | +| `nodeAttestor.gcpIIT.agentPathTemplate` | A URL path portion format of Agent's SPIFFE ID. Describe in text/template format. | `""` | +| `nodeAttestor.x509POP.enabled` | Enable the x509_popg node attestor | `false` | +| `nodeAttestor.x509POP.mode` | What mode to set the plugin to. Currently only spiffe mode is supported | `spiffe` | +| `nodeAttestor.x509POP.svidPrefix` | What prefix to use when mode is spiffe | `/spire-exchange` | +| `nodeAttestor.x509POP.agentPathTemplate` | Override the default agent path template | `""` | +| `nodeAttestor.x509POP.maxIntermediates` | Maximum number of intermediate certificates allowed in the certificate chain | `4` | +| `nodeAttestor.x509POP.maxRSAKeySize` | Maximum RSA key size in bits allowed in certificates | `8192` | +| `nodeAttestor.x509POP.addClusterName.svidPrefix` | Suffix the cluster name onto the svidPrefix | `false` | +| `nodeAttestor.x509POP.addClusterName.agentPathTemplate` | Suffix the cluster name onto the agentPathTemplate | `false` | +| `bundlePublisher.k8sConfigMap.enabled` | Enable local k8s bundle uploader | `true` | +| `bundlePublisher.k8sConfigMap.namespace` | Namespace to push the bundle into, if blank will default to SPIRE Server namespace | `""` | +| `bundlePublisher.k8sConfigMap.format` | Format of the trust bundle. Can be pem or spiffe | `spiffe` | +| `bundlePublisher.externalK8sConfigMap.enabled` | Enable external k8s bundle uploader | `true` | +| `bundlePublisher.externalK8sConfigMap.defaults.namespace` | Namespace to push the bundle into on clusters | `spire-system` | +| `bundlePublisher.externalK8sConfigMap.defaults.configMapName` | ConfigMap name to push the bundle into on external clusters | `spire-bundle-upstream` | +| `bundlePublisher.externalK8sConfigMap.defaults.configMapKey` | ConfigMap key to push the bundle into on external clusters | `""` | +| `bundlePublisher.externalK8sConfigMap.defaults.format` | Format of the trust bundle. Can be pem or spiffe | `spiffe` | +| `bundlePublisher.externalK8sConfigMap.clusters` | A dictionary of clusters to add with optional overrides. If empty, all clusters defined in kubeConfigs will be used. | `{}` | +| `bundlePublisher.awsRolesAnywhereTrustAnchor.enabled` | Enable the AWS S3 bundle publisher | `false` | +| `bundlePublisher.awsRolesAnywhereTrustAnchor.region` | AWS region to store the trust bundle | `""` | +| `bundlePublisher.awsRolesAnywhereTrustAnchor.trustAnchorID` | AWS trust anchor ID to publish to | `""` | +| `bundlePublisher.awsS3.enabled` | Enable the AWS S3 bundle publisher | `false` | +| `bundlePublisher.awsS3.endpoint` | A custom S3 endpoint should be set when using third-party object storage providers, such as Minio. | `""` | +| `bundlePublisher.awsS3.region` | AWS region to store the trust bundle | `""` | +| `bundlePublisher.awsS3.bucket` | AWS S3 bucket name to which the trust bundle is uploaded | `""` | +| `bundlePublisher.awsS3.objectKey` | AWS S3 object key inside the bucket | `""` | +| `bundlePublisher.awsS3.format` | Format in which the trust bundle is stored. Valid options [spiffe, jwks, pem] | `""` | +| `bundlePublisher.gcpCloudStorage.enabled` | Enable the Google Cloud Storage bundle publisher | `false` | +| `bundlePublisher.gcpCloudStorage.bucketName` | Google Cloud Storage bucket name to which the trust bundle is uploaded | `""` | +| `bundlePublisher.gcpCloudStorage.objectName` | Google Cloud Storage object name | `""` | +| `bundlePublisher.gcpCloudStorage.format` | Format in which the trust bundle is stored. Valid options [spiffe, jwks, pem] | `""` | +| `dynamicRegistration.enabled` | Deploys the sidecar helper for dynamic registration | `false` | +| `dynamicRegistration.image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `dynamicRegistration.image.repository` | The repository within the registry | `spiffe/spire-controller-manager-dynamic-registration/spire-controller-manager-dynamic-registration-server` | +| `dynamicRegistration.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `dynamicRegistration.image.tag` | Overrides the image tag to be whatever you need it to be. It will always be the flag you set without modifications | `0.1.0` | +| `dynamicRegistration.serviceAccount` | Which service account to allow to register | `spire-agent` | +| `dynamicRegistration.audience` | The expected audience | `spire-controller-manager-dynamic-registration` | +| `dynamicRegistration.entryPrefix` | Unique prefix to bind nodes aliases to the server | `scmnr` | +| `dynamicRegistration.allowedIDPrefix` | Prefix of agents that are allowed to register | `spire/agent/k8s_psat` | +| `dynamicRegistration.registrationPrefix` | prefix to use on all new registration entries | `k8s_psat` | +| `dynamicRegistration.addClusterName.registrationPrefix` | suffix the cluster name onto the registrationPrefix | `true` | +| `dynamicRegistration.addClusterName.allowedIDPrefix` | suffix the cluster name onto the allowedIDPrefix | `true` | +| `dynamicRegistration.securityContext` | Security Context to use | `{}` | ### Tornjak @@ -515,6 +540,13 @@ In order to run Tornjak with simple HTTP Connection only, make sure you don't cr | `secrets.aws.accessKeyID` | AWS Access Key ID | `""` | | `secrets.aws.secretAccessKey` | AWS Secret Access Key | `""` | | `secrets.gcp.applicationCredentials` | Google Application Credentials | `""` | +| `trustSync.enabled` | Allow configuration of trust syncing | `false` | +| `trustSync.domains` | List of trust domains to sync from parent to child servers | `[]` | +| `trustSync.image.registry` | The OCI registry to pull the image from | `ghcr.io` | +| `trustSync.image.repository` | The repository within the registry | `spiffe/spire-ha-agent/spire-trust-sync` | +| `trustSync.image.pullPolicy` | The image pull policy | `IfNotPresent` | +| `trustSync.image.tag` | Overrides the image tag to be whatever you need it to be. It will always be the flag you set without modifications | `0.0.21` | +| `trustSync.resources` | Resource requests and limits | `{}` | | `customPlugins.bundlePublisher` | Custom plugins of type BundlePublisher are configured here | `{}` | | `customPlugins.credentialComposer` | Custom plugins of type CredentialComposer are configured here | `{}` | | `customPlugins.keyManager` | Custom plugins of type KeyManager are configured here | `{}` | @@ -527,6 +559,7 @@ In order to run Tornjak with simple HTTP Connection only, make sure you don't cr | `chown.image.tag` | Overrides the image tag whose default is the chart appVersion | `1.37.0-uclibc` | | `chown.resources` | Specify resource needs as per https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ | `{}` | | `experimental.enabled` | Allow configuration of experimental features | `false` | +| `experimental.agentSPIFFEIDAsSelector` | enable adding spiffe_id selectors to all agents | `false` | | `experimental.cacheReloadInterval` | The amount of time between two reloads of the in-memory entry cache. | `5s` | | `experimental.eventsBasedCache` | Use events to update the cache with what's changed since the last update. | `false` | | `experimental.pruneEventsOlderThan` | How old an event can be before being deleted. Used with events based cache. | `12h` | diff --git a/charts/spire/charts/spire-server/templates/_helpers.tpl b/charts/spire/charts/spire-server/templates/_helpers.tpl index f590dd6..14e1690 100644 --- a/charts/spire/charts/spire-server/templates/_helpers.tpl +++ b/charts/spire/charts/spire-server/templates/_helpers.tpl @@ -289,6 +289,12 @@ Create the name of the service account to use {{- define "spire-server.upstream-spire-address" }} {{- if ne (len (dig "spire" "upstreamSpireAddress" "" .Values.global)) 0 }} {{- print .Values.global.spire.upstreamSpireAddress }} +{{- else if .Values.upstreamAuthority.spire.server.address }} +{{- if contains "." .Values.upstreamAuthority.spire.server.address }} +{{- print .Values.upstreamAuthority.spire.server.address }} +{{- else }} +{{- printf "%s.%s" .Values.upstreamAuthority.spire.server.address (include "spire-lib.trust-domain" .) }} +{{- end }} {{- else if .Values.upstreamAuthority.spire.server.nameOverride }} {{- printf "%s-%s" .Release.Name .Values.upstreamAuthority.spire.server.nameOverride }} {{- else }} diff --git a/charts/spire/charts/spire-server/templates/configmap.yaml b/charts/spire/charts/spire-server/templates/configmap.yaml index eb5f784..c433543 100644 --- a/charts/spire/charts/spire-server/templates/configmap.yaml +++ b/charts/spire/charts/spire-server/templates/configmap.yaml @@ -105,6 +105,7 @@ server: {{- with .Values.experimental }} {{- if eq (.enabled | toString) "true" }} experimental: + agent_spiffe_id_as_selector: {{ .agentSPIFFEIDAsSelector }} cache_reload_interval: {{ .cacheReloadInterval | quote }} events_based_cache: {{ .eventsBasedCache }} prune_events_older_than: {{ .pruneEventsOlderThan | quote }} @@ -175,7 +176,7 @@ plugins: {{- end }} {{- end }} - {{- if or .Values.nodeAttestor.k8sPSAT.enabled .Values.nodeAttestor.externalK8sPSAT.enabled .Values.nodeAttestor.joinToken.enabled .Values.nodeAttestor.httpChallenge.enabled .Values.nodeAttestor.tpmDirect.enabled .Values.nodeAttestor.awsIID.enabled .Values.nodeAttestor.gcpIIT.enabled }} + {{- if or .Values.nodeAttestor.k8sPSAT.enabled .Values.nodeAttestor.externalK8sPSAT.enabled .Values.nodeAttestor.joinToken.enabled .Values.nodeAttestor.httpChallenge.enabled .Values.nodeAttestor.tpmDirect.enabled .Values.nodeAttestor.awsIID.enabled .Values.nodeAttestor.gcpIIT.enabled .Values.nodeAttestor.x509POP.enabled }} NodeAttestor: {{- $clusters := default .Values.kubeConfigs .Values.nodeAttestor.externalK8sPSAT.clusters }} {{- if or (eq (.Values.nodeAttestor.k8sPSAT.enabled | toString) "true") (and (eq (.Values.nodeAttestor.externalK8sPSAT.enabled | toString) "true") (gt (len $clusters) 0)) }} @@ -255,6 +256,27 @@ plugins: {{- end }} {{- end }} {{- end }} + {{- with .Values.nodeAttestor.x509POP }} + {{- if eq (.enabled | toString) "true" }} + x509pop: + plugin_data: + mode: {{ .mode }} + {{- if .addClusterName.svidPrefix }} + svid_prefix: {{ printf "%s/%s" .svidPrefix (include "spire-lib.cluster-name" $root) | quote }} + {{- else }} + svid_prefix: {{ .svidPrefix | quote }} + {{- end }} + max_intermediates: {{ .maxIntermediates }} + max_rsa_key_size: {{ .maxRSAKeySize }} + {{- if ne .agentPathTemplate "" }} + {{- if .addClusterName.agentPathTemplate }} + agent_path_template: {{ printf "%s/%s" .agentPathTemplate (include "spire-lib.cluster-name" $root) | quote }} + {{- else }} + agent_path_template: {{ .agentPathTemplate | quote }} + {{- end }} + {{- end }} + {{- end }} + {{- end }} {{- with .Values.nodeAttestor.awsIID }} {{- if eq (.enabled | toString) "true" }} aws_iid: diff --git a/charts/spire/charts/spire-server/templates/controller-manager-cluster-ids.yaml b/charts/spire/charts/spire-server/templates/controller-manager-cluster-ids.yaml index 7c0b553..54bdecc 100644 --- a/charts/spire/charts/spire-server/templates/controller-manager-cluster-ids.yaml +++ b/charts/spire/charts/spire-server/templates/controller-manager-cluster-ids.yaml @@ -12,6 +12,9 @@ values: {{- if eq .type "child-servers" }} matchLabels: component: server +{{- else if eq .type "oidc-discovery-provider-common" }} +matchLabels: + component: oidc-discovery-provider {{- else if eq .type "oidc-discovery-provider" }} matchLabels: release: {{ .Release.Name }} @@ -42,6 +45,9 @@ matchLabels: release: {{ .Release.Name }} release-namespace: {{ .Release.Namespace }} component: test-keys +{{- else if eq .type "spire-ha-agent" }} +matchLabels: + "app.kubernetes.io/name": spire-ha-agent {{- else }} {} {{- end }} @@ -58,8 +64,8 @@ matchLabels: {{- if eq ($root.Values.controllerManager.enabled | toString) "true" }} {{- if or (not (hasKey $value "enabled")) (eq ($value.enabled | toString) "true") }} {{- $type := dig "type" "base" $value }} -{{- if not (has $type (list "base" "raw" "child-servers" "oidc-discovery-provider" "spike-keeper" "spike-nexus" "spike-bootstrap" "spike-pilot" "test-keys")) }} -{{- fail (printf "Type given: %s, must be one of [base, raw, child-servers, oidc-discovery-provider, spike-keeper, spike-nexus, spike-bootstrap, spike-pilot, test-keys]" $type) }} +{{- if not (has $type (list "base" "raw" "spire-ha-agent" "child-servers" "oidc-discovery-provider" "oidc-discovery-provider-common" "spike-keeper" "spike-nexus" "spike-bootstrap" "spike-pilot" "test-keys")) }} +{{- fail (printf "Type given: %s, must be one of [base, raw, spire-ha-agent, child-servers, oidc-discovery-provider, oidc-discovery-provider-common, spike-keeper, spike-nexus, spike-bootstrap, spike-pilot, test-keys]" $type) }} {{- end }} {{- $namespaceSelector := deepCopy (dig "namespaceSelector" (dict) $value) }} {{- if ne $type "raw" }} diff --git a/charts/spire/charts/spire-server/templates/roles.yaml b/charts/spire/charts/spire-server/templates/roles.yaml index 47ef87b..598963c 100644 --- a/charts/spire/charts/spire-server/templates/roles.yaml +++ b/charts/spire/charts/spire-server/templates/roles.yaml @@ -64,7 +64,7 @@ roleRef: name: {{ include "spire-lib.bundle-configmap" . }} apiGroup: rbac.authorization.k8s.io {{- end }} -{{- if and .Values.nodeAttestor.k8sPSAT.enabled }} +{{- if or .Values.nodeAttestor.k8sPSAT.enabled .Values.dynamicRegistration.enabled }} --- # ClusterRole to allow spire-server node attestor to query Token Review API kind: ClusterRole @@ -79,11 +79,13 @@ rules: - watch - list - create +{{- if .Values.nodeAttestor.k8sPSAT.enabled }} - apiGroups: [""] resources: [nodes, pods] verbs: - get - list +{{- end }} --- # Binds above cluster role to spire-server service account kind: ClusterRoleBinding diff --git a/charts/spire/charts/spire-server/templates/server-resource.yaml b/charts/spire/charts/spire-server/templates/server-resource.yaml index c1ec81e..9846b6f 100644 --- a/charts/spire/charts/spire-server/templates/server-resource.yaml +++ b/charts/spire/charts/spire-server/templates/server-resource.yaml @@ -396,6 +396,46 @@ spec: mountPath: /tmp readOnly: false {{- include "spire-controller-manager.containers" . | nindent 8 }} + {{- if eq (.Values.dynamicRegistration.enabled | toString) "true" }} + - name: dynamic-registration + securityContext: + {{- include "spire-lib.securitycontext-extended" (dict "root" . "securityContext" .Values.tornjak.securityContext) | nindent 12 }} + image: {{ template "spire-lib.image" (dict "appVersion" .Values.dynamicRegistration.image.tag "image" .Values.dynamicRegistration.image "global" .Values.global "ubi" false) }} + imagePullPolicy: {{ .Values.dynamicRegistration.image.pullPolicy }} + env: + - name: SPIFFE_TRUST_DOMAIN + value: {{ include "spire-lib.trust-domain" . | quote }} + - name: EXPECTED_AUDIENCE + value: {{ .Values.dynamicRegistration.audience | quote }} + - name: EXPECTED_SERVICE_ACCOUNT + {{- if contains ":" .Values.dynamicRegistration.serviceAccount }} + value: {{ .Values.dynamicRegistration.serviceAccount | quote }} + {{- else }} + value: {{ printf "%s:%s" (include "spire-server.agent-namespace" .) .Values.dynamicRegistration.serviceAccount | quote }} + {{- end }} + - name: ALLOWEDID_PREFIX + {{- if .Values.dynamicRegistration.addClusterName.allowedIDPrefix }} + value: {{ printf "%s/%s" .Values.dynamicRegistration.allowedIDPrefix (include "spire-lib.cluster-name" .) | quote }} + {{- else }} + value: {{ .Values.dynamicRegistration.allowedIDPrefix | quote }} + {{- end }} + - name: ENTRY_PREFIX + value: {{ .Values.dynamicRegistration.entryPrefix | quote }} + - name: REGISTRATION_PREFIX + {{- if .Values.dynamicRegistration.addClusterName.registrationPrefix }} + value: {{ printf "%s/%s" .Values.dynamicRegistration.registrationPrefix (include "spire-lib.cluster-name" .) | quote }} + {{- else }} + value: {{ .Values.dynamicRegistration.registrationPrefix | quote }} + {{- end }} + volumeMounts: + - name: spire-server-socket + mountPath: /tmp/spire-server/private + readOnly: true + ports: + - name: dynamic-https + containerPort: 8931 + protocol: TCP + {{- end }} {{- if eq (.Values.tornjak.enabled | toString) "true" }} - name: tornjak securityContext: @@ -445,6 +485,29 @@ spec: mountPath: /opt/spire/user {{- end }} {{- end }} + {{- if eq (.Values.trustSync.enabled | toString) "true" }} + - name: spire-trust-sync + image: {{ template "spire-lib.image" (dict "appVersion" .Values.trustSync.image.defaultTag "image" .Values.trustSync.image "global" .Values.global "ubi" false) }} + imagePullPolicy: {{ .Values.trustSync.image.pullPolicy }} + args: + - -trust-domains={{ join "," .Values.trustSync.domains }} + env: + - name: SPIFFE_TRUST_DOMAIN + value: {{ include "spire-lib.trust-domain" . | quote }} + - name: SPIRE_SERVER_SOCKET + value: unix:///tmp/spire-server/private/api.sock + - name: SPIFFE_ENDPOINT_SOCKET + value: unix:///run/spire/upstream_agent/spire-agent.sock + volumeMounts: + - mountPath: /run/spire/upstream_agent + name: upstream-agent + readOnly: true + - mountPath: /tmp/spire-server/private + name: spire-server-socket + readOnly: true + securityContext: + {{- include "spire-lib.securitycontext" . | nindent 12 }} + {{- end }} {{- if gt (len .Values.extraContainers) 0 }} {{- toYaml .Values.extraContainers | nindent 8 }} diff --git a/charts/spire/charts/spire-server/templates/service.yaml b/charts/spire/charts/spire-server/templates/service.yaml index 22875cd..49a3430 100644 --- a/charts/spire/charts/spire-server/templates/service.yaml +++ b/charts/spire/charts/spire-server/templates/service.yaml @@ -28,6 +28,14 @@ spec: protocol: TCP {{- end }} {{- end }} + {{- with .Values.dynamicRegistration }} + {{- if eq (.enabled | toString) "true" }} + - name: dynamic-registration + port: 8931 + targetPort: dynamic-https + protocol: TCP + {{- end }} + {{- end }} selector: {{- include "spire-server.selectorLabels" . | nindent 4 }} {{- end }} diff --git a/charts/spire/charts/spire-server/values.yaml b/charts/spire/charts/spire-server/values.yaml index a26a598..e9879de 100644 --- a/charts/spire/charts/spire-server/values.yaml +++ b/charts/spire/charts/spire-server/values.yaml @@ -144,7 +144,7 @@ readinessProbe: initialDelaySeconds: 5 periodSeconds: 5 -## @param persistence.type What type of volume to use for persistence. Valid options pvc (recommended), hostPath, emptyDir (testing only) +## @param persistence.type What type of volume to use for persistence. Valid options pvc (recommended), hostPath, emptyDir (testing or nested child only) ## @param persistence.size What size volume to use for persistence ## @param persistence.accessMode What access mode to use for persistence. Valid options are ReadWriteOnce (recommended), ReadWriteOncePod, ReadWriteMany (not recommended) ## @param persistence.storageClass What storage class to use for persistence @@ -788,6 +788,17 @@ controllerManager: ## @param controllerManager.identities.clusterSPIFFEIDs.spike-pilot.spiffeIDTemplate The template to use for this rule. spiffeIDTemplate: spiffe://{{ .TrustDomain }}/spike/pilot/role/superuser + spire-ha-agent: + ## @param controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.enabled Enable this identity for controller manager + enabled: false + ## @param controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.type The type of rule this is. + type: spire-ha-agent + ## @param controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.spiffeIDTemplate The template to use for this rule. + spiffeIDTemplate: spiffe://{{ .TrustDomain }}/spire-ha-agent + ## @param controllerManager.identities.clusterSPIFFEIDs.spire-ha-agent.federatesWith Federated trust domains to pass to the workload + federatesWith: + - spire-ha + # You can specify additional ClusterSPIFFEIDs following this example: # foo: # labels: @@ -1109,6 +1120,24 @@ nodeAttestor: metadataValueMaxSize: 0 ## @param nodeAttestor.gcpIIT.agentPathTemplate A URL path portion format of Agent's SPIFFE ID. Describe in text/template format. agentPathTemplate: "" + x509POP: + ## @param nodeAttestor.x509POP.enabled Enable the x509_popg node attestor + enabled: false + ## @param nodeAttestor.x509POP.mode What mode to set the plugin to. Currently only spiffe mode is supported + mode: spiffe + ## @param nodeAttestor.x509POP.svidPrefix What prefix to use when mode is spiffe + svidPrefix: /spire-exchange + ## @param nodeAttestor.x509POP.agentPathTemplate Override the default agent path template + agentPathTemplate: "" + ## @param nodeAttestor.x509POP.maxIntermediates Maximum number of intermediate certificates allowed in the certificate chain + maxIntermediates: 4 + ## @param nodeAttestor.x509POP.maxRSAKeySize Maximum RSA key size in bits allowed in certificates + maxRSAKeySize: 8192 + addClusterName: + ## @param nodeAttestor.x509POP.addClusterName.svidPrefix Suffix the cluster name onto the svidPrefix + svidPrefix: false + ## @param nodeAttestor.x509POP.addClusterName.agentPathTemplate Suffix the cluster name onto the agentPathTemplate + agentPathTemplate: false # The secrets needed for this plugin are configured in the secrets: section bundlePublisher: @@ -1166,6 +1195,40 @@ bundlePublisher: ## @param bundlePublisher.gcpCloudStorage.format Format in which the trust bundle is stored. Valid options [spiffe, jwks, pem] format: "" +dynamicRegistration: + ## @param dynamicRegistration.enabled Deploys the sidecar helper for dynamic registration + enabled: false + ## @param dynamicRegistration.image.registry The OCI registry to pull the image from + ## @param dynamicRegistration.image.repository The repository within the registry + ## @param dynamicRegistration.image.pullPolicy The image pull policy + ## @param dynamicRegistration.image.tag Overrides the image tag to be whatever you need it to be. It will always be the flag you set without modifications + ## + image: + registry: ghcr.io + repository: spiffe/spire-controller-manager-dynamic-registration/spire-controller-manager-dynamic-registration-server + pullPolicy: IfNotPresent + tag: "0.1.0" + + ## @param dynamicRegistration.serviceAccount Which service account to allow to register + serviceAccount: "spire-agent" + + ## @param dynamicRegistration.audience The expected audience + audience: spire-controller-manager-dynamic-registration + ## @param dynamicRegistration.entryPrefix Unique prefix to bind nodes aliases to the server + entryPrefix: "scmnr" + ## @param dynamicRegistration.allowedIDPrefix Prefix of agents that are allowed to register + allowedIDPrefix: "spire/agent/k8s_psat" + ## @param dynamicRegistration.registrationPrefix prefix to use on all new registration entries + registrationPrefix: "k8s_psat" + addClusterName: + ## @param dynamicRegistration.addClusterName.registrationPrefix suffix the cluster name onto the registrationPrefix + registrationPrefix: true + ## @param dynamicRegistration.addClusterName.allowedIDPrefix suffix the cluster name onto the allowedIDPrefix + allowedIDPrefix: true + + ## @param dynamicRegistration.securityContext [object] Security Context to use + securityContext: {} + ## @section Tornjak tornjak: ## @param tornjak.enabled Deploys Tornjak API (backend) (Not for production) @@ -1291,6 +1354,38 @@ secrets: ## @param secrets.gcp.applicationCredentials Google Application Credentials applicationCredentials: "" +trustSync: + ## @param trustSync.enabled Allow configuration of trust syncing + enabled: false + ## @param trustSync.domains List of trust domains to sync from parent to child servers + domains: [] + #- spire-ha + #- foo.org + + ## @param trustSync.image.registry The OCI registry to pull the image from + ## @param trustSync.image.repository The repository within the registry + ## @param trustSync.image.pullPolicy The image pull policy + ## @param trustSync.image.tag Overrides the image tag to be whatever you need it to be. It will always be the flag you set without modifications + ## + image: + registry: ghcr.io + repository: spiffe/spire-ha-agent/spire-trust-sync + pullPolicy: IfNotPresent + tag: "0.0.21" + + ## @param trustSync.resources [object] Resource requests and limits + resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + # NOTE: This is unsupported and only to configure currently supported spire built in plugins but plugins unsupported by the chart. # Upgrades wont be tested for anything under this config. If you need this, please let the chart developers know your needs so we # can prioritize proper support. @@ -1336,6 +1431,8 @@ chown: experimental: ## @param experimental.enabled Allow configuration of experimental features enabled: false + ## @param experimental.agentSPIFFEIDAsSelector enable adding spiffe_id selectors to all agents + agentSPIFFEIDAsSelector: false ## @param experimental.cacheReloadInterval The amount of time between two reloads of the in-memory entry cache. cacheReloadInterval: 5s ## @param experimental.eventsBasedCache Use events to update the cache with what's changed since the last update. diff --git a/examples/bottom-turtle-ha/README.md b/examples/bottom-turtle-ha/README.md new file mode 100644 index 0000000..396edb3 --- /dev/null +++ b/examples/bottom-turtle-ha/README.md @@ -0,0 +1,138 @@ +## Kubernetes Bottom Turtle HA Setup + +In this setup, a bottom turtle HA setup based on spire-ha-agent and then Kubernetes based access is built from the ground up. + +What does this mean? + +The bottom turtle: +There is a pair of spire servers deployed. Trust is established between the two servers creating an HA Trust Domain without needing any 3rd party +trust sources. + +A spire-ha-agent, a spire-agent@a and a spire-agent@b is run on the k8s hosts. This provides a bottom turtle trust source between the services on the os Kubernetes +runs on. + +Host services can then use this trust chain to secure communications such as: +* kubelet -> kube-apiserver +* sshd +* log shipper -> centeralized log processor +* os level metrics +* etc + +We will not discuss how to do that here, but need to utilize this base to establish trust inside of Kubernetes. + +We will bridge os to Kubernetes cluster with some configuration on the host, and deploying the helm charts to utilize and export new services on top. + +What do we need to do? + +There are two different kinds of services that need permission bridging. + +* SPIRE Servers +* Downstream agents + +### Root Servers + +Setup a pair of HA root servers as described here: +https://github.com/spiffe/bootc/tree/main/demo + +Root Servers, A and B: +![Diagram](final-pi5.jpg) +![Diagram](final-pi5.jpg) + +### K8s SPIRE Servers + +In the following diagram, we see all the parts involved from getting the K8s SPIRE Servers running on the control plane nodes. +![Diagram](diagram-cp.png) + +We need to be able to use the hosts workload attestors to attest the SPIRE Servers running inside Kubernetes. + +To do so, we will define a workload on the root spire servers, and inject it into the spire servers inside Kubernetes. + +Example workload definition: +``` +apiVersion: spire.spiffe.io/v1alpha1 +kind: ClusterStaticEntry +metadata: + name: node1-k8s-spire-server +spec: + parentID: spiffe://${SPIFFE_TRUST_DOMAIN}/node/node1.${SPIFFE_TRUST_DOMAIN} + spiffeID: spiffe://${SPIFFE_TRUST_DOMAIN}/k8s-spire-server/server-${SUBINSTANCE} + downstream: true + selectors: + - systemd:id:spiffe-socat-unix@k8s-spire-server-${SUBINSTANCE}.service + federatesWith: + - spire-ha +``` + +And on the host, we install spiffe-socat-unix via packages, and then enable the bridges: +``` +spiffe-socat-unix@k8s-spire-server-a.service +spiffe-socat-unix@k8s-spire-server-b.service +``` + +Any process that can access the unix socket will be able to become a spire downstream server. Treat this socket with great care. + +Consider only doing this on your control plane nodes, and restricting the spire-server to only run on the control plane nodes for extra isolation. + +### Downstream agents + +In the following diagram we show how a worker node is aranged. +![Diagram](diagram-worker.png) + +We need to be able to use the hosts workload attestors to attest the SPIRE Agents running inside Kubernetes. + +To do so, we will define a workload on the root spire servers, and inject it into the spire agents inside Kubernetes. + +Example workload definition: +``` +apiVersion: spire.spiffe.io/v1alpha1 +kind: ClusterStaticEntry +metadata: + name: node1-k8s-spire-agent +spec: + parentID: spiffe://${SPIFFE_TRUST_DOMAIN}/node/node1.${SPIFFE_TRUST_DOMAIN} + spiffeID: spiffe://${SPIFFE_TRUST_DOMAIN}/spire-exchange/node1.${SPIFFE_TRUST_DOMAIN} + selectors: + - systemd:id:spiffe-socat-unix@k8s-spire-agent-${SUBINSTANCE}.service +``` + +And on the host, we install spiffe-socat-unix via packages, and then enable the bridges: +``` +spiffe-socat-unix@k8s-spire-agent-a.service +spiffe-socat-unix@k8s-spire-agent-b.service +``` + +## Install the charts: + +We need to install 4 charts. + +* spire crds +* side A +* side B +* the common infrasctructure + +This allows upgrading Side A or Side B completely independencly from each other, ensuring if there is a problem it will not affect production. + +Setup the spire-values.yaml as needed. + +``` +# Install the common components +helm upgrade --install --create-namespace --namespace spire-mgmt --values "spire-values.yaml" \ + spire oci://ghcr.io/spiffe/helm-charts/spire-nested \ + --set tags.haAgentCommon=true \ + --set "global.spire.namespaces.create=true" \ + --set "global.spire.ingressControllerType=ingress-nginx" \ + --set "spiffe-oidc-discovery-provider.ingress.enabled=true" + +# Install server side a +helm upgrade --install --namespace spire-mgmt --values "spire-values.yaml" \ + --wait spire-a oci://ghcr.io/spiffe/helm-charts/spire-nested \ + --set tags.bottomTurtleHAA=true \ + --set "global.spire.ingressControllerType=ingress-nginx" + + +# Install server side b +helm upgrade --install --namespace spire-mgmt --values "spire-values.yaml" \ + --wait spire-b oci://ghcr.io/spiffe/helm-charts/spire-nested \ + --set tags.bottomTurtleHAB=true \ + --set "global.spire.ingressControllerType=ingress-nginx" +``` diff --git a/examples/bottom-turtle-ha/diagram-cp.dot b/examples/bottom-turtle-ha/diagram-cp.dot new file mode 100644 index 0000000..5498b7a --- /dev/null +++ b/examples/bottom-turtle-ha/diagram-cp.dot @@ -0,0 +1,136 @@ +digraph G { + compound=true; + + # --- ROOT SERVERS --- + subgraph cluster_server1 { + label = "node name: n1" + style="filled,solid,bold"; + color="#b3b3b3"; + fillcolor="#f5f5f5"; + labeljust="l"; + + spire_server_1[label=<
SPIRE Server A
NodeAttestors: tpm,x509pop
>,shape="record",style="rounded,solid,filled,bold",color="#6c8ebf",fillcolor="#dae8fc"] + } + + subgraph cluster_server2 { + label = "node name: n2" + style="filled,solid,bold"; + color="#b3b3b3"; + fillcolor="#f5f5f5"; + labeljust="l"; + spire_server_2[label=<
SPIRE Server B
NodeAttestors: tpm,x509pop
>,shape="record",style="rounded,solid,filled,bold",color="#6c8ebf",fillcolor="#dae8fc"] + } + + # --- NODE N3 (SPIRE SERVER A PIPELINE) --- + subgraph cluster_node3 { + label = "node name: n3" + style="filled,solid,bold"; + color="#b3b3b3"; + fillcolor="#f5f5f5"; + labeljust="l"; + + subgraph cluster_node3_systemd { + label = "systemd managed" + style = "dashed,filled" + color="#939393"; + fillcolor="#d5d5d5"; + labeljust="l"; + + spire_agent1[label=<
SPIRE Agent A
NodeAttestor: tpm
WorkloadAttestor: systemd
systemd: spire-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + spire_agent2_n3[label=<
SPIRE Agent B
NodeAttestor: tpm
WorkloadAttestor: systemd
systemd: spire-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + + subgraph cluster_tb_n3 { + label="" + style="invis" + spire_ha_agent_n3[label=<
SPIRE HA Agent
systemd: spire-ha-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + } + + sshd1_n3[label="sshd",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + kubelet1_n3[label="kubelet",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + k8s_spire_server_a[label=<
K8s SPIRE Server A Identity
systemd: spiffe-socat-unix@k8s-spire-server-a
tool: socat
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + } + + subgraph cluster_node3_k8s { + label = "k8s managed" + style = "dashed,filled" + color="#939393"; + fillcolor="#d5d5d5"; + labeljust="l"; + + k8s_upstream_csi_a[label=<
Upstream CSI A
path: /var/run/spiffe/socat/unix/k8s-spire-server-a/public/agent.sock
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + spire_server_n1[label=<
K8s SPIRE Server A
NodeAttestors: x509pop
>,shape="record",style="rounded,solid,filled,bold",color="#6c8ebf",fillcolor="#dae8fc"] + } + } + + # --- NODE N4 (SPIRE SERVER B PIPELINE) --- + subgraph cluster_node4 { + label = "node name: n4" + style="filled,solid,bold"; + color="#b3b3b3"; + fillcolor="#f5f5f5"; + labeljust="l"; + + subgraph cluster_node4_systemd { + label = "systemd managed" + style = "dashed,filled" + color="#939393"; + fillcolor="#d5d5d5"; + labeljust="l"; + + spire_agent1_n4[label=<
SPIRE Agent A
NodeAttestor: tpm
WorkloadAttestor: systemd
systemd: spire-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + spire_agent2[label=<
SPIRE Agent B
NodeAttestor: tpm
WorkloadAttestor: systemd
systemd: spire-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + + subgraph cluster_tb_n4 { + label="" + style="invis" + spire_ha_agent_n4[label=<
SPIRE HA Agent
systemd: spire-ha-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + } + + sshd1_n4[label="sshd",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + kubelet1_n4[label="kubelet",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + k8s_spire_server_b[label=<
K8s SPIRE Server B Identity
systemd: spiffe-socat-unix@k8s-spire-server-b
tool: socat
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + } + + subgraph cluster_node4_k8s { + label = "k8s managed" + style = "dashed,filled" + color="#939393"; + fillcolor="#d5d5d5"; + labeljust="l"; + + k8s_upstream_csi_b[label=<
Upstream CSI B
path: /var/run/spiffe/socat/unix/k8s-spire-server-b/public/agent.sock
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + spire_server_n2[label=<
K8s SPIRE Server B
NodeAttestors: x509pop
>,shape="record",style="rounded,solid,filled,bold",color="#6c8ebf",fillcolor="#dae8fc"] + } + } + + # --- NETWORKING & LINKS --- + + # Upstream Core Cross-Links + spire_server_1 -> spire_agent1[dir=back] + spire_server_1 -> spire_agent1_n4[dir=back] + spire_server_2 -> spire_agent2_n3[dir=back] + spire_server_2 -> spire_agent2[dir=back] + + # Node 3 Pipelines + spire_agent1 -> spire_ha_agent_n3[dir=back] + spire_agent2_n3 -> spire_ha_agent_n3[dir=back] + spire_ha_agent_n3 -> sshd1_n3[dir=back] + spire_ha_agent_n3 -> kubelet1_n3[dir=back] + spire_agent1 -> k8s_spire_server_a[dir=back] + k8s_spire_server_a -> k8s_upstream_csi_a[dir=back] + k8s_upstream_csi_a -> spire_server_n1[dir=back] + kubelet1_n3 -> k8s_upstream_csi_a [lhead=cluster_node3_k8s, style=dotted] + spire_server_1 -> spire_server_n1 [dir=back] + + # Node 4 Pipelines + spire_agent1_n4 -> spire_ha_agent_n4[dir=back] + spire_agent2 -> spire_ha_agent_n4[dir=back] + spire_ha_agent_n4 -> sshd1_n4[dir=back] + spire_ha_agent_n4 -> kubelet1_n4[dir=back] + spire_agent2 -> k8s_spire_server_b[dir=back] + k8s_spire_server_b -> k8s_upstream_csi_b[dir=back] + k8s_upstream_csi_b -> spire_server_n2[dir=back] + kubelet1_n4 -> k8s_upstream_csi_b [lhead=cluster_node4_k8s, style=dotted] + spire_server_2 -> spire_server_n2 [dir=back] +} + diff --git a/examples/bottom-turtle-ha/diagram-cp.png b/examples/bottom-turtle-ha/diagram-cp.png new file mode 100644 index 0000000000000000000000000000000000000000..f05bf95398b0497b230dce8d805feaee9c004bd1 GIT binary patch literal 172163 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�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 z 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 Server ANodeAttestors: tpm>,shape="record",style="rounded,solid,filled,bold",color="#6c8ebf",fillcolor="#dae8fc"] + } + + subgraph cluster_ps1 { + label = "Control Plane Node: X" + #style = dashed + style="filled,solid,bold"; + color="#b3b3b3"; + fillcolor="#f5f5f5"; + labeljust="l"; + + pod_spire_server_1[label=<
K8s SPIRE Server A
NodeAttestors: x509pop
>,shape="record",style="rounded,solid,filled,bold",color="#6c8ebf",fillcolor="#dae8fc"] + } + + subgraph cluster_ps2 { + label = "Control Plane Node: Y" + #style = dashed + style="filled,solid,bold"; + color="#b3b3b3"; + fillcolor="#f5f5f5"; + labeljust="l"; + + pod_spire_server_2[label=<
K8s SPIRE Server B
NodeAttestors: x509pop
>,shape="record",style="rounded,solid,filled,bold",color="#6c8ebf",fillcolor="#dae8fc"] + } + + + subgraph cluster_server2 { + + label = "node name: n2" + #style = dashed + style="filled,solid,bold"; + color="#b3b3b3"; + fillcolor="#f5f5f5"; + labeljust="l"; + spire_server_2[label=<
SPIRE Server B
NodeAttestors: tpm
>,shape="record",style="rounded,solid,filled,bold",color="#6c8ebf",fillcolor="#dae8fc"] + } + + + subgraph cluster_node3 { + label = "node name: n3" + #style = dashed + style="filled,solid,bold"; + color="#b3b3b3"; + fillcolor="#f5f5f5"; + labeljust="l"; + + subgraph cluster_node1_systemd { + #label = "Systemd" + label = "systemd managed" + style = "dashed,filled" + color="#939393"; + fillcolor="#d5d5d5"; + + labeljust="l"; + + spire_agent1[label=<
SPIRE Agent A
NodeAttestor: tpm
WorkloadAttestor: systemd
systemd: spire-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + spire_agent2[label=<
SPIRE Agent B
NodeAttestor: tpm
WorkloadAttestor: systemd
systemd: spire-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + subgraph cluster_tb { + label="" + style="invis" + spire_ha_agent[label=<
SPIRE HA Agent
systemd: spire-ha-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] +subgraph cluster_storage { + #spire_ha_agent_state_a[label="Trust Bundle A", shape=note,style="rounded,solid,filled,bold",fillcolor="#ffffff"] + #spire_ha_agent_state_b[label="Trust Bundle B", shape=note,style="rounded,solid,filled,bold",fillcolor="#ffffff"] +} + } + sshd1[label="sshd",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + kubelet1[label="kubelet",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + k8s_spire_server_a[label=<
K8s SPIRE Agent A Identity
systemd: spiffe-socat-unix@k8s-spire-agent-a
tool: socat
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + k8s_spire_server_b[label=<
K8s SPIRE Agent B Identity
systemd: spiffe-socat-unix@k8s-spire-agent-b
tool: socat
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + } + + subgraph cluster_node1_k8s { + #label = "Systemd" + label = "k8s managed" + style = "dashed,filled" + color="#939393"; + fillcolor="#d5d5d5"; + + labeljust="l"; + + // k8s_upstream_csi_a[label=<
Downstream CSI A
path: /var/run/spiffe/socat/unix/k8s-spire-server-a/public/agent.sock
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + // k8s_upstream_csi_b[label=<
Downstream CSI B
path: /var/run/spiffe/socat/unix/k8s-spire-server-b/public/agent.sock
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + + k8s_downstream_csi[label=<
Downstream CSI
path: /var/run/spire/agent-sockets/spire-agent.sock
>,shape="box",style="rounded,solid,filled,bold",color="#d79b00",fillcolor="#ffe6cc"] + + spire_server_n1[label=<
K8s SPIRE Agent A
systemd: spire-ha-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + + spire_server_n2[label=<
K8s SPIRE Agent B
systemd: spire-ha-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + + + spire_ha_agent_pod[label=<
SPIRE HA Agent
systemd: spire-ha-agent@.service
>,shape="record",style="rounded,solid,filled,bold",color="#82b366",fillcolor="#d5e8d4"] + pod1[label="pod",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + pod2[label="pod",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + pod3[label="pod",shape="box",style="rounded,solid,filled,bold",color="#d6b656",fillcolor="#fff2cc"] + } + } + + spire_server_1 -> spire_agent1[dir=back] + spire_server_2 -> spire_agent2[dir=back] + spire_agent1 -> spire_ha_agent[dir=back] + spire_agent2 -> spire_ha_agent[dir=back] + spire_ha_agent -> sshd1[dir=back] + spire_ha_agent -> kubelet1[dir=back] + spire_agent1 -> k8s_spire_server_a[dir=back] + spire_agent2 -> k8s_spire_server_b[dir=back] + + spire_server_1 -> pod_spire_server_1[dir=back] + spire_server_2 -> pod_spire_server_2[dir=back] + + //k8s_spire_server_a -> k8s_upstream_csi_a[dir=back] + k8s_spire_server_a -> spire_server_n1[dir=back] + k8s_spire_server_b -> spire_server_n2[dir=back] + // k8s_upstream_csi_b -> k8s_spire_server_b + +// k8s_upstream_csi_a -> spire_server_n1[dir=back] + // k8s_upstream_csi_b -> spire_server_n2[dir=back] +// k8s_spire_server_b -> spire_server_n2[dir=back] + + //kubelet1 -> cluster_node1_k8s + kubelet1 -> spire_server_n1 [lhead=cluster_node1_k8s, style=dotted] + pod_spire_server_1 -> spire_server_n1 [dir=back] + pod_spire_server_2 -> spire_server_n2 [dir=back] + //kubelet1 -> spire_server_n1 + //kubelet1 -> spire_server_n2 + spire_server_n1 -> spire_ha_agent_pod [dir=back] + spire_server_n2 -> spire_ha_agent_pod [dir=back] + + spire_ha_agent_pod -> k8s_downstream_csi [dir=back] + k8s_downstream_csi -> pod1 [dir=back] + k8s_downstream_csi -> pod2 [dir=back] + k8s_downstream_csi -> pod3 [dir=back] +// spire_ha_agent -> spire_ha_agent_state[dir=both, constraint=false] + // spire_ha_agent_state_a -> spire_ha_agent_state_b + //spire_agent1 -> spire_ha_agent_state_a + //spire_agent2 -> spire_ha_agent_state_b + //spire_ha_agent_state_a -> spire_ha_agent + //spire_ha_agent_state_b -> spire_ha_agent +} + diff --git a/examples/bottom-turtle-ha/diagram-worker.png b/examples/bottom-turtle-ha/diagram-worker.png new file mode 100644 index 0000000000000000000000000000000000000000..2d54c6b90ea2e516e3ec4c350eccea483460c788 GIT binary patch literal 181352 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⋘hpdX1UyxLv`Zw@RZ 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 -3#A>JCoWtWC9Fru2l-;YQ==^l;|KJ@?2hp)> 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

=^fXjByefEQ=QWeP7rM8sM96Cu4- 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