You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by ha...@apache.org on 2025/09/11 01:08:22 UTC
(skywalking-banyandb-helm) branch auth created (now cf962e3)
This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a change to branch auth
in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-helm.git
at cf962e3 Add authentication support for BanyanDB
This branch includes the following new commits:
new 2fc764d Add trace mount target support for persistent volume claims
new 8bd94bf Add lifecycle sidecar configuration options
new cf962e3 Add authentication support for BanyanDB
The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
(skywalking-banyandb-helm) 03/03: Add authentication support for BanyanDB
Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a commit to branch auth
in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-helm.git
commit cf962e31bd662f81aeff597cccd5f82cbb2324be
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Thu Sep 11 01:07:17 2025 +0000
Add authentication support for BanyanDB
- Introduced basic authentication configuration in `values.yaml` and `parameters.md`, allowing users to enable authentication and specify credentials.
- Updated StatefulSet templates to mount the credentials file and pass the `--auth-config-file` argument to the BanyanDB containers.
- Enhanced documentation in `README.md` and `NOTES.txt` to guide users on configuring authentication.
- Updated E2E test configurations to include authentication parameters for testing.
This change improves security by allowing users to manage access to BanyanDB instances.
---
.github/workflows/e2e.ci.yaml | 4 +-
CHANGES.md | 1 +
README.md | 35 ++++++++
chart/templates/NOTES.txt | 15 ++++
chart/templates/{NOTES.txt => auth_secret.yaml} | 18 +++-
chart/templates/cluster_liaison_statefulset.yaml | 56 ++++++++++--
chart/templates/standalone_statefulset.yaml | 56 +++++++++++-
chart/values.yaml | 41 +++++++++
doc/parameters.md | 106 ++++++++++++-----------
test/e2e/e2e-banyandb-cluster.yaml | 2 +
test/e2e/e2e-banyandb-standalone.yaml | 2 +
test/e2e/values.cluster.yaml | 10 ++-
test/e2e/values.lifecycle.yaml | 2 +-
test/e2e/values.standalone.yaml | 13 ++-
14 files changed, 292 insertions(+), 69 deletions(-)
diff --git a/.github/workflows/e2e.ci.yaml b/.github/workflows/e2e.ci.yaml
index e11bf3a..ea0fb9f 100644
--- a/.github/workflows/e2e.ci.yaml
+++ b/.github/workflows/e2e.ci.yaml
@@ -43,9 +43,9 @@ jobs:
config: test/e2e/e2e-banyandb-lifecycle.yaml
name: ${{ matrix.test.name }}
env:
- OAP_TAG: bf04afdb2a841c60d5e27f5a9fc62d0879a5600c
+ OAP_TAG: 79860ca5c76a77bbd93e76ce4861b24707dd5ee3
OAP_REPO: ghcr.io/apache/skywalking/oap
- UI_TAG: bf04afdb2a841c60d5e27f5a9fc62d0879a5600c
+ UI_TAG: 79860ca5c76a77bbd93e76ce4861b24707dd5ee3
UI_REPO: ghcr.io/apache/skywalking/ui
steps:
- uses: actions/checkout@v2
diff --git a/CHANGES.md b/CHANGES.md
index 002e468..13f2543 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -17,6 +17,7 @@ Release Notes.
- Enhance pod hostname configuration using headless services for improved service discovery and networking
- Implement volume permissions init containers for proper file ownership and permissions on mounted volumes
- Add the mount target for the trace mode
+- Add `auth` to configure the basic credential file.
#### Chores
diff --git a/README.md b/README.md
index 0274796..b918a54 100644
--- a/README.md
+++ b/README.md
@@ -90,6 +90,41 @@ $ helm install my-release \
> **Tip**: You can use the default [values.yaml](chart/values.yaml)
+## Authentication
+
+Basic authentication can be enabled for liaison and standalone modes. When enabled, the chart mounts a credentials file and adds `--auth-config-file` to BanyanDB.
+
+- Enable auth and provide users (plaintext passwords):
+
+```yaml
+auth:
+ enabled: true
+ users:
+ - username: admin
+ password: "changeme"
+```
+
+- Use an existing Secret (recommended for production). The Secret must contain a key `credentials.yaml` (configurable via `auth.credentialsFileKey`) whose value is the YAML content in the format required by BanyanDB ([docs](https://github.com/apache/skywalking-banyandb/blob/main/docs/operation/security.md#basic-authentication)):
+
+```yaml
+auth:
+ enabled: true
+ existingSecret: my-banyandb-auth
+ credentialsFileKey: credentials.yaml
+```
+
+The Secret name defaults to `<release>-banyandb-auth` when auto-created.
+
+### Retrieve credentials after install
+
+If the chart created the Secret (no `auth.existingSecret`), you can decode it:
+
+```bash
+kubectl get secret <release-name>-banyandb-auth -n <namespace> -o jsonpath='{.data.credentials\.yaml}' | base64 --decode
+```
+
+Adjust the key if you changed `auth.credentialsFileKey`.
+
## Use external certificate authorities for TLS
If you'd like to use external certificate authorities, such as Vault, corresponding annotations can be injected into [banyandb](./chart/templates/statefulset.yaml).
diff --git a/chart/templates/NOTES.txt b/chart/templates/NOTES.txt
index 90d1748..dc20101 100644
--- a/chart/templates/NOTES.txt
+++ b/chart/templates/NOTES.txt
@@ -1,3 +1,18 @@
+{{- if .Values.auth.enabled }}
+1. BanyanDB authentication is enabled.
+
+ Credentials file is mounted into liaison/standalone and picked by `--auth-config-file`.
+
+{{- $useExisting := ne .Values.auth.existingSecret "" -}}
+{{- $secretName := ternary .Values.auth.existingSecret (printf "%s-auth" (include "banyandb.fullname" .)) $useExisting -}}
+{{- $key := .Values.auth.credentialsFileKey -}}
+
+2. To view the credentials YAML stored in the Secret:
+
+ kubectl get secret {{ $secretName }} -n {{ .Release.Namespace }} -o jsonpath='{.data.{{- printf "%s" $key | replace "." "\\." -}}}' | base64 --decode | sed -e 's/^/ /'
+
+ Note: adjust the key if you changed `auth.credentialsFileKey`.
+{{- end }}
{{/*
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
diff --git a/chart/templates/NOTES.txt b/chart/templates/auth_secret.yaml
similarity index 59%
copy from chart/templates/NOTES.txt
copy to chart/templates/auth_secret.yaml
index 90d1748..25342fe 100644
--- a/chart/templates/NOTES.txt
+++ b/chart/templates/auth_secret.yaml
@@ -13,4 +13,20 @@ distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-*/}}
\ No newline at end of file
+*/}}
+
+{{- if and .Values.auth.enabled (not .Values.auth.existingSecret) }}
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "banyandb.fullname" . }}-auth
+ labels: {{ include "banyandb.labels" . | nindent 4 }}
+type: Opaque
+data:
+ {{- $users := .Values.auth.users }}
+ {{- if not $users }}
+ {{- $users = list (dict "username" "admin" "password" (randAlphaNum 16)) }}
+ {{- end }}
+ {{- $cred := (dict "users" $users | toYaml | b64enc) }}
+ {{ .Values.auth.credentialsFileKey }}: "{{ $cred }}"
+{{- end }}
diff --git a/chart/templates/cluster_liaison_statefulset.yaml b/chart/templates/cluster_liaison_statefulset.yaml
index 0c1ad4e..80f0c3b 100644
--- a/chart/templates/cluster_liaison_statefulset.yaml
+++ b/chart/templates/cluster_liaison_statefulset.yaml
@@ -45,7 +45,7 @@ spec:
{{- toYaml . | nindent 8 }}
{{- end }}
priorityClassName: {{ .Values.cluster.liaison.priorityClassName }}
- {{- if and .Values.storage.liaison.enabled .Values.cluster.liaison.volumePermissions.enabled }}
+ {{- if or (and .Values.storage.liaison.enabled .Values.cluster.liaison.volumePermissions.enabled) .Values.auth.enabled }}
initContainers:
- name: volume-permissions
image: {{ default "busybox:1.36" .Values.cluster.liaison.volumePermissions.image }}
@@ -72,6 +72,29 @@ spec:
name: {{ $claim.claimName }}
{{- end }}
{{- end }}
+ {{- if .Values.auth.enabled }}
+ - name: auth-config-prepare
+ image: busybox:1.36
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ runAsUser: 0
+ command:
+ - sh
+ - -c
+ - |
+ set -euo pipefail
+ cp "/var/run/banyandb-auth/{{ .Values.auth.credentialsFileKey }}" "/etc/banyandb/{{ .Values.auth.credentialsFileKey }}"
+ CHOWN_UID={{ default 1000 .Values.cluster.liaison.securityContext.runAsUser }}
+ CHOWN_GID={{ default 1000 .Values.cluster.liaison.securityContext.runAsGroup }}
+ chown ${CHOWN_UID}:${CHOWN_GID} "/etc/banyandb/{{ .Values.auth.credentialsFileKey }}"
+ chmod 0600 "/etc/banyandb/{{ .Values.auth.credentialsFileKey }}"
+ volumeMounts:
+ - mountPath: /var/run/banyandb-auth
+ name: banyandb-auth
+ readOnly: true
+ - mountPath: /etc/banyandb
+ name: banyandb-auth-writable
+ {{- end }}
containers:
- name: liaison
{{- if eq .Values.cluster.ui.type "Embedded" }}
@@ -125,11 +148,11 @@ spec:
- name: BYDB_ETCD_PASSWORD
value: {{ .Values.etcd.auth.rbac.rootPassword }}
{{- end }}
- {{- if .Values.etcd.auth.client.secureTransport }}
+ {{- if and .Values.cluster.liaison.tls .Values.cluster.liaison.tls.etcdSecretName .Values.etcd.auth.client.secureTransport }}
- name: BYDB_ETCD_TLS_CA_FILE
value: "/etc/tls/{{ .Values.cluster.liaison.tls.etcdSecretName }}/ca.crt"
{{- end }}
- {{- if .Values.etcd.auth.client.enableAuthentication }}
+ {{- if and .Values.cluster.liaison.tls .Values.cluster.liaison.tls.etcdSecretName .Values.etcd.auth.client.enableAuthentication }}
- name: BYDB_ETCD_TLS_CERT_FILE
value: "/etc/tls/{{ .Values.cluster.liaison.tls.etcdSecretName }}/tls.crt"
- name: BYDB_ETCD_TLS_KEY_FILE
@@ -147,6 +170,9 @@ spec:
{{- end }}
args:
- liaison
+ {{- if .Values.auth.enabled }}
+ - --auth-config-file=/etc/banyandb/{{ .Values.auth.credentialsFileKey }}
+ {{- end }}
ports:
- containerPort: 17912
name: grpc
@@ -216,7 +242,7 @@ spec:
{{- end }}
{{- end }}
- {{- if or .Values.storage.liaison.enabled .Values.cluster.liaison.tls }}
+ {{- if or .Values.storage.liaison.enabled .Values.cluster.liaison.tls .Values.auth.enabled }}
volumeMounts:
{{- if .Values.storage.liaison.enabled }}
{{- range $claim := .Values.storage.liaison.persistentVolumeClaims }}
@@ -241,10 +267,15 @@ spec:
name: {{ .Values.cluster.liaison.tls.httpSecretName }}-volume
{{- end }}
{{- end }}
+ {{- if .Values.auth.enabled }}
+ - mountPath: /etc/banyandb
+ name: banyandb-auth-writable
+ {{- end }}
{{- end }}
- {{- if .Values.cluster.liaison.tls }}
+ {{- if or .Values.cluster.liaison.tls .Values.auth.enabled }}
volumes:
+ {{- if .Values.cluster.liaison.tls }}
{{- if .Values.cluster.liaison.tls.grpcSecretName }}
- name: {{ .Values.cluster.liaison.tls.grpcSecretName }}-volume
secret:
@@ -260,6 +291,21 @@ spec:
secret:
secretName: {{ .Values.cluster.liaison.tls.httpSecretName }}
{{- end }}
+ {{- end }}
+ {{- if .Values.auth.enabled }}
+ {{- $useExisting := ne .Values.auth.existingSecret "" }}
+ {{- $authSecret := ternary .Values.auth.existingSecret (printf "%s-auth" (include "banyandb.fullname" .)) $useExisting }}
+ - name: banyandb-auth
+ secret:
+ secretName: {{ $authSecret }}
+ defaultMode: 0600
+ items:
+ - key: {{ .Values.auth.credentialsFileKey }}
+ path: {{ .Values.auth.credentialsFileKey }}
+ mode: 0600
+ - name: banyandb-auth-writable
+ emptyDir: {}
+ {{- end }}
{{- end }}
{{- if .Values.cluster.liaison.tolerations }}
diff --git a/chart/templates/standalone_statefulset.yaml b/chart/templates/standalone_statefulset.yaml
index ebfcdb1..0864e43 100644
--- a/chart/templates/standalone_statefulset.yaml
+++ b/chart/templates/standalone_statefulset.yaml
@@ -43,8 +43,9 @@ spec:
{{- toYaml . | nindent 8 }}
{{- end }}
priorityClassName: {{ .Values.standalone.priorityClassName }}
- {{- if and .Values.storage.standalone.enabled .Values.standalone.volumePermissions.enabled }}
+ {{- if or (and .Values.storage.standalone.enabled .Values.standalone.volumePermissions.enabled) .Values.auth.enabled }}
initContainers:
+ {{- if and .Values.storage.standalone.enabled .Values.standalone.volumePermissions.enabled }}
- name: volume-permissions
image: {{ default "busybox:1.36" .Values.standalone.volumePermissions.image }}
imagePullPolicy: IfNotPresent
@@ -69,6 +70,30 @@ spec:
- mountPath: /mnt/{{ $claim.claimName }}
name: {{ $claim.claimName }}
{{- end }}
+ {{- end }}
+ {{- if .Values.auth.enabled }}
+ - name: auth-config-prepare
+ image: busybox:1.36
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ runAsUser: 0
+ command:
+ - sh
+ - -c
+ - |
+ set -euo pipefail
+ cp "/var/run/banyandb-auth/{{ .Values.auth.credentialsFileKey }}" "/etc/banyandb/{{ .Values.auth.credentialsFileKey }}"
+ CHOWN_UID={{ default 1000 .Values.standalone.securityContext.runAsUser }}
+ CHOWN_GID={{ default 1000 .Values.standalone.securityContext.runAsGroup }}
+ chown ${CHOWN_UID}:${CHOWN_GID} "/etc/banyandb/{{ .Values.auth.credentialsFileKey }}"
+ chmod 0600 "/etc/banyandb/{{ .Values.auth.credentialsFileKey }}"
+ volumeMounts:
+ - mountPath: /var/run/banyandb-auth
+ name: banyandb-auth
+ readOnly: true
+ - mountPath: /etc/banyandb
+ name: banyandb-auth-writable
+ {{- end }}
{{- end }}
containers:
- name: standalone
@@ -105,6 +130,9 @@ spec:
{{- end }}
args:
- standalone
+ {{- if .Values.auth.enabled }}
+ - --auth-config-file=/etc/banyandb/{{ .Values.auth.credentialsFileKey }}
+ {{- end }}
ports:
- containerPort: 17912
name: grpc
@@ -172,7 +200,7 @@ spec:
{{- end }}
{{- end }}
- {{- if or .Values.storage.standalone.enabled .Values.standalone.tls }}
+ {{- if or .Values.storage.standalone.enabled .Values.standalone.tls .Values.auth.enabled }}
volumeMounts:
{{- if .Values.storage.standalone.enabled }}
{{- range $claim := .Values.storage.standalone.persistentVolumeClaims }}
@@ -202,20 +230,40 @@ spec:
name: {{ .Values.standalone.tls.httpSecretName }}-volume
{{- end }}
{{- end -}}
+ {{- if .Values.auth.enabled }}
+ - mountPath: /etc/banyandb
+ name: banyandb-auth-writable
+ {{- end }}
{{- end }}
- {{- if .Values.standalone.tls }}
+ {{- if or .Values.standalone.tls .Values.auth.enabled }}
volumes:
+ {{- if .Values.standalone.tls }}
{{- if .Values.standalone.tls.grpcSecretName }}
- name: {{ .Values.standalone.tls.grpcSecretName }}-volume
secret:
secretName: {{ .Values.standalone.tls.grpcSecretName }}
{{- end }}
- {{- if and .Values.standalone.tls.httpSecretName (ne .Values.standalone.tls.httpSecretName .Values.standalone.tls.grpcSecretName) }}
+ {{- if and .Values.standalone.tls.httpSecretName (or (not .Values.standalone.tls.grpcSecretName) (ne .Values.standalone.tls.httpSecretName .Values.standalone.tls.grpcSecretName)) }}
- name: {{ .Values.standalone.tls.httpSecretName }}-volume
secret:
secretName: {{ .Values.standalone.tls.httpSecretName }}
{{- end }}
+ {{- end }}
+ {{- if .Values.auth.enabled }}
+ {{- $useExisting := ne .Values.auth.existingSecret "" }}
+ {{- $authSecret := ternary .Values.auth.existingSecret (printf "%s-auth" (include "banyandb.fullname" .)) $useExisting }}
+ - name: banyandb-auth
+ secret:
+ secretName: {{ $authSecret }}
+ defaultMode: 0600
+ items:
+ - key: {{ .Values.auth.credentialsFileKey }}
+ path: {{ .Values.auth.credentialsFileKey }}
+ mode: 0600
+ - name: banyandb-auth-writable
+ emptyDir: {}
+ {{- end }}
{{- end }}
{{- if .Values.standalone.tolerations }}
diff --git a/chart/values.yaml b/chart/values.yaml
index 46249d2..8bce7d5 100644
--- a/chart/values.yaml
+++ b/chart/values.yaml
@@ -40,6 +40,40 @@ image:
##
pullPolicy: IfNotPresent
+## @section Authentication configuration for BanyanDB
+##
+auth:
+ ## @param auth.enabled Enable basic authentication (boolean)
+ ## Defaults to false. When enabled, the chart mounts a credentials file and
+ ## passes --auth-config-file to liaison/standalone.
+ ##
+ enabled: false
+
+ ## @param auth.existingSecret Use an existing Secret for credentials
+ ## If set, the chart will NOT create a Secret and will mount this Secret
+ ## instead. The Secret must contain a key specified by auth.credentialsFileKey
+ ## whose value is the YAML-formatted credentials content.
+ ##
+ existingSecret: ""
+
+ ## @param auth.credentialsFileKey Key name in the Secret that stores the
+ ## credentials YAML. This filename will also be used inside the pod via subPath.
+ ##
+ credentialsFileKey: "credentials.yaml"
+
+ ## @param auth.users List of users to configure when not using existingSecret
+ ## Each user item must include plaintext fields: username, password.
+ ## If empty and auth.enabled=true, a default 'admin' user with a random
+ ## password will be generated.
+ ## Example:
+ ## users:
+ ## - username: admin
+ ## password: "changeme"
+ ## - username: viewer
+ ## password: "123456"
+ ##
+ users: []
+
## @section Configuration for standalone deployment
##
standalone:
@@ -55,6 +89,13 @@ standalone:
## @param standalone.containerSecurityContext Container-level security context
## e.g. { readOnlyRootFilesystem: true, allowPrivilegeEscalation: false, runAsNonRoot: true }
containerSecurityContext: {}
+ ## @param standalone.tls TLS configuration for the standalone pod
+ ## When set, provide optional secret names to mount TLS materials.
+ ## Example:
+ ## tls:
+ ## grpcSecretName: "my-grpc-tls"
+ ## httpSecretName: "my-http-tls"
+ tls: {}
## Volume permissions init container
## @param standalone.volumePermissions.enabled Enable volume permissions init container
volumePermissions:
diff --git a/doc/parameters.md b/doc/parameters.md
index cabce51..b33c469 100644
--- a/doc/parameters.md
+++ b/doc/parameters.md
@@ -19,6 +19,15 @@ The content of this document describes the parameters that can be configured in
| `image.tag` | Image tag/version (empty for latest) | `""` |
| `image.pullPolicy` | Image pull policy (e.g. IfNotPresent) | `IfNotPresent` |
+### Authentication configuration for BanyanDB
+
+| Name | Description | Value |
+| ------------------------- | -------------------------------------------------------- | ------------------ |
+| `auth.enabled` | Enable basic authentication (boolean) | `false` |
+| `auth.existingSecret` | Use an existing Secret for credentials | `""` |
+| `auth.credentialsFileKey` | Key name in the Secret that stores the | `credentials.yaml` |
+| `auth.users` | List of users to configure when not using existingSecret | `[]` |
+
### Configuration for standalone deployment
| Name | Description | Value |
@@ -27,6 +36,7 @@ The content of this document describes the parameters that can be configured in
| `standalone.podAnnotations` | Additional pod annotations | `{}` |
| `standalone.securityContext` | Security context for the pod | `{}` |
| `standalone.containerSecurityContext` | Container-level security context | `{}` |
+| `standalone.tls` | TLS configuration for the standalone pod | `{}` |
| `standalone.volumePermissions.enabled` | Enable volume permissions init container | `false` |
| `standalone.volumePermissions.chownUser` | User ID to chown the mounted volumes | `1000` |
| `standalone.volumePermissions.chownGroup` | Group ID to chown the mounted volumes | `1000` |
@@ -242,58 +252,50 @@ The content of this document describes the parameters that can be configured in
### Storage configuration for persistent volumes
-| Name | Description | Value |
-| ----------------------------------------------------------- | ------------------------------------------------------- | --------------------------------- |
-| `storage.data.enabled` | Enable persistent storage for data nodes (boolean) | `true` |
-| `storage.data.persistentVolumeClaims` | List of PVC configurations for data nodes | |
-| `storage.data.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure"]` |
-| `storage.data.persistentVolumeClaims[0].nodeRole` | Node role this PVC is bound to (hot, warm, cold) | `hot` |
-| `storage.data.persistentVolumeClaims[0].existingClaimName` | Existing PVC name (if any) | `nil` |
-| `storage.data.persistentVolumeClaims[0].claimName` | Name of the PVC | `hot-measure-data` |
-| `storage.data.persistentVolumeClaims[0].size` | Size of the PVC | `50Gi` |
-| `storage.data.persistentVolumeClaims[0].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
-| `storage.data.persistentVolumeClaims[0].storageClass` | Storage class for the PVC | `nil` |
-| `storage.data.persistentVolumeClaims[0].volumeMode` | Volume mode for the PVC | `Filesystem` |
-| `storage.data.persistentVolumeClaims[1].mountTargets` | Mount targets for the PVC | `["stream"]` |
-| `storage.data.persistentVolumeClaims[1].nodeRole` | Node role this PVC is bound to | `hot` |
-| `storage.data.persistentVolumeClaims[1].existingClaimName` | Existing PVC name (if any) | `nil` |
-| `storage.data.persistentVolumeClaims[1].claimName` | Name of the PVC | `hot-stream-data` |
-| `storage.data.persistentVolumeClaims[1].size` | Size of the PVC | `50Gi` |
-| `storage.data.persistentVolumeClaims[1].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
-| `storage.data.persistentVolumeClaims[1].storageClass` | Storage class for the PVC | `nil` |
-| `storage.data.persistentVolumeClaims[1].volumeMode` | Volume mode for the PVC | `Filesystem` |
-| `storage.data.persistentVolumeClaims[2].mountTargets` | Mount targets for the PVC | `["property"]` |
-| `storage.data.persistentVolumeClaims[2].nodeRole` | Node role this PVC is bound to | `hot` |
-| `storage.data.persistentVolumeClaims[2].existingClaimName` | Existing PVC name (if any) | `nil` |
-| `storage.data.persistentVolumeClaims[2].claimName` | Name of the PVC | `hot-property-data` |
-| `storage.data.persistentVolumeClaims[2].size` | Size of the PVC | `5Gi` |
-| `storage.data.persistentVolumeClaims[2].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
-| `storage.data.persistentVolumeClaims[2].storageClass` | Storage class for the PVC | `nil` |
-| `storage.data.persistentVolumeClaims[2].volumeMode` | Volume mode for the PVC | `Filesystem` |
-| `storage.data.persistentVolumeClaims[3].mountTargets` | Mount targets for the PVC | `["trace"]` |
-| `storage.data.persistentVolumeClaims[3].nodeRole` | Node role this PVC is bound to | `hot` |
-| `storage.data.persistentVolumeClaims[3].existingClaimName` | Existing PVC name (if any) | `nil` |
-| `storage.data.persistentVolumeClaims[3].claimName` | Name of the PVC | `hot-trace-data` |
-| `storage.data.persistentVolumeClaims[3].size` | Size of the PVC | `50Gi` |
-| `storage.data.persistentVolumeClaims[3].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
-| `storage.data.persistentVolumeClaims[3].storageClass` | Storage class for the PVC | `nil` |
-| `storage.data.persistentVolumeClaims[3].volumeMode` | Volume mode for the PVC | `Filesystem` |
-| `storage.liaison.enabled` | Enable persistent storage for liaison nodes (boolean) | `true` |
-| `storage.liaison.persistentVolumeClaims` | List of PVC configurations for liaison nodes | |
-| `storage.liaison.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure","stream","trace"]` |
-| `storage.liaison.persistentVolumeClaims[0].claimName` | Name of the PVC | `liaison-data` |
-| `storage.liaison.persistentVolumeClaims[0].size` | Size of the PVC | `10Gi` |
-| `storage.liaison.persistentVolumeClaims[0].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
-| `storage.liaison.persistentVolumeClaims[0].storageClass` | Storage class for the PVC | `nil` |
-| `storage.liaison.persistentVolumeClaims[0].volumeMode` | Volume mode for the PVC | `Filesystem` |
-| `storage.standalone.enabled` | Enable persistent storage for standalone mode (boolean) | `false` |
-| `storage.standalone.persistentVolumeClaims` | List of PVC configurations for standalone | |
-| `storage.standalone.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure","stream","property","trace"]` |
-| `storage.standalone.persistentVolumeClaims[0].claimName` | Name of the PVC | `standalone-data` |
-| `storage.standalone.persistentVolumeClaims[0].size` | Size of the PVC | `200Gi` |
-| `storage.standalone.persistentVolumeClaims[0].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
-| `storage.standalone.persistentVolumeClaims[0].storageClass` | Storage class for the PVC | `nil` |
-| `storage.standalone.persistentVolumeClaims[0].volumeMode` | Volume mode for the PVC | `Filesystem` |
+| Name | Description | Value |
+| ----------------------------------------------------------- | ------------------------------------------------------- | -------------------------------------------- |
+| `storage.data.enabled` | Enable persistent storage for data nodes (boolean) | `true` |
+| `storage.data.persistentVolumeClaims` | List of PVC configurations for data nodes | |
+| `storage.data.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure"]` |
+| `storage.data.persistentVolumeClaims[0].nodeRole` | Node role this PVC is bound to (hot, warm, cold) | `hot` |
+| `storage.data.persistentVolumeClaims[0].existingClaimName` | Existing PVC name (if any) | `nil` |
+| `storage.data.persistentVolumeClaims[0].claimName` | Name of the PVC | `hot-measure-data` |
+| `storage.data.persistentVolumeClaims[0].size` | Size of the PVC | `50Gi` |
+| `storage.data.persistentVolumeClaims[0].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
+| `storage.data.persistentVolumeClaims[0].storageClass` | Storage class for the PVC | `nil` |
+| `storage.data.persistentVolumeClaims[0].volumeMode` | Volume mode for the PVC | `Filesystem` |
+| `storage.data.persistentVolumeClaims[1].mountTargets` | Mount targets for the PVC | `["stream"]` |
+| `storage.data.persistentVolumeClaims[1].nodeRole` | Node role this PVC is bound to | `hot` |
+| `storage.data.persistentVolumeClaims[1].existingClaimName` | Existing PVC name (if any) | `nil` |
+| `storage.data.persistentVolumeClaims[1].claimName` | Name of the PVC | `hot-stream-data` |
+| `storage.data.persistentVolumeClaims[1].size` | Size of the PVC | `50Gi` |
+| `storage.data.persistentVolumeClaims[1].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
+| `storage.data.persistentVolumeClaims[1].storageClass` | Storage class for the PVC | `nil` |
+| `storage.data.persistentVolumeClaims[1].volumeMode` | Volume mode for the PVC | `Filesystem` |
+| `storage.data.persistentVolumeClaims[2].mountTargets` | Mount targets for the PVC | `["property"]` |
+| `storage.data.persistentVolumeClaims[2].nodeRole` | Node role this PVC is bound to | `hot` |
+| `storage.data.persistentVolumeClaims[2].existingClaimName` | Existing PVC name (if any) | `nil` |
+| `storage.data.persistentVolumeClaims[2].claimName` | Name of the PVC | `hot-property-data` |
+| `storage.data.persistentVolumeClaims[2].size` | Size of the PVC | `5Gi` |
+| `storage.data.persistentVolumeClaims[2].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
+| `storage.data.persistentVolumeClaims[2].storageClass` | Storage class for the PVC | `nil` |
+| `storage.data.persistentVolumeClaims[2].volumeMode` | Volume mode for the PVC | `Filesystem` |
+| `storage.liaison.enabled` | Enable persistent storage for liaison nodes (boolean) | `true` |
+| `storage.liaison.persistentVolumeClaims` | List of PVC configurations for liaison nodes | |
+| `storage.liaison.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure","stream"]` |
+| `storage.liaison.persistentVolumeClaims[0].claimName` | Name of the PVC | `liaison-data` |
+| `storage.liaison.persistentVolumeClaims[0].size` | Size of the PVC | `10Gi` |
+| `storage.liaison.persistentVolumeClaims[0].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
+| `storage.liaison.persistentVolumeClaims[0].storageClass` | Storage class for the PVC | `nil` |
+| `storage.liaison.persistentVolumeClaims[0].volumeMode` | Volume mode for the PVC | `Filesystem` |
+| `storage.standalone.enabled` | Enable persistent storage for standalone mode (boolean) | `false` |
+| `storage.standalone.persistentVolumeClaims` | List of PVC configurations for standalone | |
+| `storage.standalone.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure","stream","metadata","property"]` |
+| `storage.standalone.persistentVolumeClaims[0].claimName` | Name of the PVC | `standalone-data` |
+| `storage.standalone.persistentVolumeClaims[0].size` | Size of the PVC | `200Gi` |
+| `storage.standalone.persistentVolumeClaims[0].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
+| `storage.standalone.persistentVolumeClaims[0].storageClass` | Storage class for the PVC | `nil` |
+| `storage.standalone.persistentVolumeClaims[0].volumeMode` | Volume mode for the PVC | `Filesystem` |
### Service account configuration
diff --git a/test/e2e/e2e-banyandb-cluster.yaml b/test/e2e/e2e-banyandb-cluster.yaml
index d84b8ed..73c743a 100644
--- a/test/e2e/e2e-banyandb-cluster.yaml
+++ b/test/e2e/e2e-banyandb-cluster.yaml
@@ -62,6 +62,8 @@ setup:
--set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=k8s-mesh \
--set oap.env.SW_ENVOY_METRIC_ALS_TCP_ANALYSIS=k8s-mesh \
--set oap.env.K8S_SERVICE_NAME_RULE='e2e::${service.metadata.name}' \
+ --set oap.env.SW_STORAGE_BANYANDB_USER=admin \
+ --set oap.env.SW_STORAGE_BANYANDB_PASSWORD=banyandb \
--set oap.replicas=1 \
--set ui.image.repository=$UI_REPO \
--set ui.image.tag=$UI_TAG \
diff --git a/test/e2e/e2e-banyandb-standalone.yaml b/test/e2e/e2e-banyandb-standalone.yaml
index 3cce8e5..8788128 100644
--- a/test/e2e/e2e-banyandb-standalone.yaml
+++ b/test/e2e/e2e-banyandb-standalone.yaml
@@ -62,6 +62,8 @@ setup:
--set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=k8s-mesh \
--set oap.env.SW_ENVOY_METRIC_ALS_TCP_ANALYSIS=k8s-mesh \
--set oap.env.K8S_SERVICE_NAME_RULE='e2e::${service.metadata.name}' \
+ --set oap.env.SW_STORAGE_BANYANDB_USER=admin \
+ --set oap.env.SW_STORAGE_BANYANDB_PASSWORD=banyandb \
--set oap.replicas=1 \
--set ui.image.repository=$UI_REPO \
--set ui.image.tag=$UI_TAG \
diff --git a/test/e2e/values.cluster.yaml b/test/e2e/values.cluster.yaml
index 9cec173..1fe46d1 100644
--- a/test/e2e/values.cluster.yaml
+++ b/test/e2e/values.cluster.yaml
@@ -19,7 +19,7 @@
image:
repository: ghcr.io/apache/skywalking-banyandb
- tag: 7e5b2d0404e8ad6d5835eee6fe589a2544d0decb
+ tag: 46083529398b73504e9ca929ef367cd1776aef82
pullPolicy: IfNotPresent
cluster:
@@ -479,3 +479,11 @@ etcd:
fullnameOverride: ""
nameOverride: "banyandb"
+
+auth:
+ enabled: true
+ existingSecret: ""
+ credentialsFileKey: "credentials.yaml"
+ users:
+ - username: admin
+ password: banyandb
diff --git a/test/e2e/values.lifecycle.yaml b/test/e2e/values.lifecycle.yaml
index fde97e6..c547c6a 100644
--- a/test/e2e/values.lifecycle.yaml
+++ b/test/e2e/values.lifecycle.yaml
@@ -19,7 +19,7 @@
image:
repository: ghcr.io/apache/skywalking-banyandb
- tag: 7e5b2d0404e8ad6d5835eee6fe589a2544d0decb
+ tag: 46083529398b73504e9ca929ef367cd1776aef82
pullPolicy: IfNotPresent
cluster:
diff --git a/test/e2e/values.standalone.yaml b/test/e2e/values.standalone.yaml
index ff0a310..0839a30 100644
--- a/test/e2e/values.standalone.yaml
+++ b/test/e2e/values.standalone.yaml
@@ -25,7 +25,7 @@ etcd:
image:
repository: ghcr.io/apache/skywalking-banyandb
- tag: 7e5b2d0404e8ad6d5835eee6fe589a2544d0decb
+ tag: 46083529398b73504e9ca929ef367cd1776aef82
pullPolicy: IfNotPresent
standalone:
@@ -90,8 +90,7 @@ standalone:
# - key: memory
# value: "512Mi"
# tls:
- # grpcSecretName: ""
- # httpSecretName: ""
+ tls: {}
livenessProbe:
initialDelaySeconds: 20
periodSeconds: 5
@@ -196,3 +195,11 @@ serviceAccount:
fullnameOverride: ""
nameOverride: "banyandb"
+
+auth:
+ enabled: true
+ existingSecret: ""
+ credentialsFileKey: "credentials.yaml"
+ users:
+ - username: admin
+ password: banyandb
(skywalking-banyandb-helm) 02/03: Add lifecycle sidecar configuration options
Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a commit to branch auth
in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-helm.git
commit 8bd94bfedd5b3530f9a925cf3bcff841e21bc39b
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Wed Sep 10 06:20:12 2025 +0000
Add lifecycle sidecar configuration options
- Introduced new parameters for lifecycle sidecar in `values-lifecycle.yaml` and `values.yaml` to specify `progressFile` and `reportDir`.
- Updated the StatefulSet template to conditionally include these parameters in the lifecycle command.
- Enhanced documentation in `parameters.md` to reflect the new configuration options.
- Updated E2E test values to include the new lifecycle sidecar parameters for testing.
---
chart/templates/cluster_data_statefulset.yaml | 6 ++++++
chart/values-lifecycle.yaml | 6 ++++++
chart/values.yaml | 6 ++++++
doc/parameters.md | 2 ++
test/e2e/values.lifecycle.yaml | 6 ++++++
5 files changed, 26 insertions(+)
diff --git a/chart/templates/cluster_data_statefulset.yaml b/chart/templates/cluster_data_statefulset.yaml
index 3fc3163..84aa009 100644
--- a/chart/templates/cluster_data_statefulset.yaml
+++ b/chart/templates/cluster_data_statefulset.yaml
@@ -361,6 +361,12 @@ spec:
command:
- "/lifecycle"
- "--schedule={{ $roleConfig.lifecycleSidecar.schedule }}"
+ {{- if $roleConfig.lifecycleSidecar.progressFile }}
+ - "--progress-file={{ $roleConfig.lifecycleSidecar.progressFile }}"
+ {{- end }}
+ {{- if $roleConfig.lifecycleSidecar.reportDir }}
+ - "--report-dir={{ $roleConfig.lifecycleSidecar.reportDir }}"
+ {{- end }}
{{- if $.Values.storage.data.enabled }}
volumeMounts:
{{- range $claim := $.Values.storage.data.persistentVolumeClaims }}
diff --git a/chart/values-lifecycle.yaml b/chart/values-lifecycle.yaml
index 1e1891c..2bf00a0 100644
--- a/chart/values-lifecycle.yaml
+++ b/chart/values-lifecycle.yaml
@@ -473,6 +473,12 @@ cluster:
## @param cluster.data.nodeTemplate.lifecycleSidecar.schedule Schedule for lifecycle sidecar (cron format)
##
schedule: "@hourly"
+ ## @param cluster.data.nodeTemplate.lifecycleSidecar.progressFile Progress file path for lifecycle sidecar
+ ##
+ progressFile: "/tmp/stream/lifecycle/progress.json"
+ ## @param cluster.data.nodeTemplate.lifecycleSidecar.reportDir Report directory path for lifecycle sidecar
+ ##
+ reportDir: "/tmp/stream/lifecycle/reports"
## @param cluster.data.nodeTemplate.lifecycleSidecar.resources Resources for lifecycle sidecar for data pods
##
resources: {}
diff --git a/chart/values.yaml b/chart/values.yaml
index 2d91078..46249d2 100644
--- a/chart/values.yaml
+++ b/chart/values.yaml
@@ -471,6 +471,12 @@ cluster:
## @param cluster.data.nodeTemplate.lifecycleSidecar.schedule Schedule for lifecycle sidecar (cron format)
##
schedule: "@hourly"
+ ## @param cluster.data.nodeTemplate.lifecycleSidecar.progressFile Progress file path for lifecycle sidecar
+ ##
+ progressFile: ""
+ ## @param cluster.data.nodeTemplate.lifecycleSidecar.reportDir Report directory path for lifecycle sidecar
+ ##
+ reportDir: ""
## @param cluster.data.nodeTemplate.lifecycleSidecar.resources Resources for lifecycle sidecar for data pods
##
resources: {}
diff --git a/doc/parameters.md b/doc/parameters.md
index 8eacfb0..cabce51 100644
--- a/doc/parameters.md
+++ b/doc/parameters.md
@@ -167,6 +167,8 @@ The content of this document describes the parameters that can be configured in
| `cluster.data.nodeTemplate.backupSidecar.resources` | Resources for backup sidecar for data pods | `{}` |
| `cluster.data.nodeTemplate.lifecycleSidecar.enabled` | Enable lifecycle sidecar for data pods (boolean) | `false` |
| `cluster.data.nodeTemplate.lifecycleSidecar.schedule` | Schedule for lifecycle sidecar (cron format) | `@hourly` |
+| `cluster.data.nodeTemplate.lifecycleSidecar.progressFile` | Progress file path for lifecycle sidecar | `""` |
+| `cluster.data.nodeTemplate.lifecycleSidecar.reportDir` | Report directory path for lifecycle sidecar | `""` |
| `cluster.data.nodeTemplate.lifecycleSidecar.resources` | Resources for lifecycle sidecar for data pods | `{}` |
| `cluster.data.nodeTemplate.restoreInitContainer.enabled` | Enable restore init container for data pods (boolean) | `false` |
| `cluster.data.nodeTemplate.restoreInitContainer.customFlags` | Custom flags for restore init container (e.g., S3, Azure, GCS configuration) | `[]` |
diff --git a/test/e2e/values.lifecycle.yaml b/test/e2e/values.lifecycle.yaml
index ee56bb8..fde97e6 100644
--- a/test/e2e/values.lifecycle.yaml
+++ b/test/e2e/values.lifecycle.yaml
@@ -156,6 +156,8 @@ cluster:
lifecycleSidecar:
enabled: true
schedule: "@hourly"
+ progressFile: "/tmp/stream/lifecycle/progress.json"
+ reportDir: "/tmp/stream/lifecycle/reports"
resources: {}
restoreInitContainer:
@@ -189,10 +191,14 @@ cluster:
lifecycleSidecar:
schedule: "@daily"
enabled: true
+ progressFile: "/tmp/stream/lifecycle/progress.json"
+ reportDir: "/tmp/stream/lifecycle/reports"
warm:
lifecycleSidecar:
schedule: "@daily"
enabled: true
+ progressFile: "/tmp/stream/lifecycle/progress.json"
+ reportDir: "/tmp/stream/lifecycle/reports"
cold:
replicas: 1
(skywalking-banyandb-helm) 01/03: Add trace mount target support for persistent volume claims
Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a commit to branch auth
in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-helm.git
commit 2fc764d7f0e4222c0f3f496ff8faa0e5d265a470
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Wed Sep 10 02:34:48 2025 +0000
Add trace mount target support for persistent volume claims
- Introduced a new mount target for trace mode in the storage configuration.
- Updated relevant YAML files to include trace as a mount target for data, liaison, and standalone persistent volume claims.
---
CHANGES.md | 1 +
chart/values-lifecycle.yaml | 22 ++++++++++++++++++++--
doc/parameters.md | 12 ++++++++++--
test/e2e/values.cluster.yaml | 6 +++---
test/e2e/values.lifecycle.yaml | 27 +++++++++++++++++++++++++++
test/e2e/values.standalone.yaml | 6 +++---
6 files changed, 64 insertions(+), 10 deletions(-)
diff --git a/CHANGES.md b/CHANGES.md
index 8015e14..002e468 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -16,6 +16,7 @@ Release Notes.
- Enable etcd defragmentation by default with daily scheduling (0 0 * * *) to maintain optimal etcd performance
- Enhance pod hostname configuration using headless services for improved service discovery and networking
- Implement volume permissions init containers for proper file ownership and permissions on mounted volumes
+- Add the mount target for the trace mode
#### Chores
diff --git a/chart/values-lifecycle.yaml b/chart/values-lifecycle.yaml
index b801608..1e1891c 100644
--- a/chart/values-lifecycle.yaml
+++ b/chart/values-lifecycle.yaml
@@ -774,6 +774,24 @@ storage:
storageClass: null
## @param storage.data.persistentVolumeClaims[2].volumeMode Volume mode for the PVC
volumeMode: Filesystem
+ ## @param storage.data.persistentVolumeClaims[3].mountTargets Mount targets for the PVC
+ - mountTargets: [ "trace" ]
+ ## @param storage.data.persistentVolumeClaims[3].nodeRole Node role this PVC is bound to
+ ##
+ nodeRole: hot
+ ## @param storage.data.persistentVolumeClaims[3].existingClaimName Existing PVC name (if any)
+ existingClaimName: null
+ ## @param storage.data.persistentVolumeClaims[3].claimName Name of the PVC
+ claimName: hot-trace-data
+ ## @param storage.data.persistentVolumeClaims[3].size Size of the PVC
+ size: 50Gi
+ ## @param storage.data.persistentVolumeClaims[3].accessModes Access modes for the PVC
+ accessModes:
+ - ReadWriteOnce
+ ## @param storage.data.persistentVolumeClaims[3].storageClass Storage class for the PVC
+ storageClass: null
+ ## @param storage.data.persistentVolumeClaims[3].volumeMode Volume mode for the PVC
+ volumeMode: Filesystem
## Liaison storage configuration
##
@@ -786,7 +804,7 @@ storage:
persistentVolumeClaims:
## @param storage.liaison.persistentVolumeClaims[0].mountTargets Mount targets for the PVC
##
- - mountTargets: [ "measure", "stream" ]
+ - mountTargets: [ "measure", "stream", "trace" ]
## @param storage.liaison.persistentVolumeClaims[0].claimName Name of the PVC
claimName: liaison-data
## @param storage.liaison.persistentVolumeClaims[0].size Size of the PVC
@@ -810,7 +828,7 @@ storage:
persistentVolumeClaims:
## @param storage.standalone.persistentVolumeClaims[0].mountTargets Mount targets for the PVC
##
- - mountTargets: [ "measure", "stream", "property" ]
+ - mountTargets: [ "measure", "stream", "property", "trace" ]
## @param storage.standalone.persistentVolumeClaims[0].claimName Name of the PVC
claimName: standalone-data
## @param storage.standalone.persistentVolumeClaims[0].size Size of the PVC
diff --git a/doc/parameters.md b/doc/parameters.md
index 22e7b8d..8eacfb0 100644
--- a/doc/parameters.md
+++ b/doc/parameters.md
@@ -268,9 +268,17 @@ The content of this document describes the parameters that can be configured in
| `storage.data.persistentVolumeClaims[2].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
| `storage.data.persistentVolumeClaims[2].storageClass` | Storage class for the PVC | `nil` |
| `storage.data.persistentVolumeClaims[2].volumeMode` | Volume mode for the PVC | `Filesystem` |
+| `storage.data.persistentVolumeClaims[3].mountTargets` | Mount targets for the PVC | `["trace"]` |
+| `storage.data.persistentVolumeClaims[3].nodeRole` | Node role this PVC is bound to | `hot` |
+| `storage.data.persistentVolumeClaims[3].existingClaimName` | Existing PVC name (if any) | `nil` |
+| `storage.data.persistentVolumeClaims[3].claimName` | Name of the PVC | `hot-trace-data` |
+| `storage.data.persistentVolumeClaims[3].size` | Size of the PVC | `50Gi` |
+| `storage.data.persistentVolumeClaims[3].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
+| `storage.data.persistentVolumeClaims[3].storageClass` | Storage class for the PVC | `nil` |
+| `storage.data.persistentVolumeClaims[3].volumeMode` | Volume mode for the PVC | `Filesystem` |
| `storage.liaison.enabled` | Enable persistent storage for liaison nodes (boolean) | `true` |
| `storage.liaison.persistentVolumeClaims` | List of PVC configurations for liaison nodes | |
-| `storage.liaison.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure","stream"]` |
+| `storage.liaison.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure","stream","trace"]` |
| `storage.liaison.persistentVolumeClaims[0].claimName` | Name of the PVC | `liaison-data` |
| `storage.liaison.persistentVolumeClaims[0].size` | Size of the PVC | `10Gi` |
| `storage.liaison.persistentVolumeClaims[0].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
@@ -278,7 +286,7 @@ The content of this document describes the parameters that can be configured in
| `storage.liaison.persistentVolumeClaims[0].volumeMode` | Volume mode for the PVC | `Filesystem` |
| `storage.standalone.enabled` | Enable persistent storage for standalone mode (boolean) | `false` |
| `storage.standalone.persistentVolumeClaims` | List of PVC configurations for standalone | |
-| `storage.standalone.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure","stream","property"]` |
+| `storage.standalone.persistentVolumeClaims[0].mountTargets` | Mount targets for the PVC | `["measure","stream","property","trace"]` |
| `storage.standalone.persistentVolumeClaims[0].claimName` | Name of the PVC | `standalone-data` |
| `storage.standalone.persistentVolumeClaims[0].size` | Size of the PVC | `200Gi` |
| `storage.standalone.persistentVolumeClaims[0].accessModes` | Access modes for the PVC | `["ReadWriteOnce"]` |
diff --git a/test/e2e/values.cluster.yaml b/test/e2e/values.cluster.yaml
index e4b73a2..9cec173 100644
--- a/test/e2e/values.cluster.yaml
+++ b/test/e2e/values.cluster.yaml
@@ -407,7 +407,7 @@ storage:
data:
enabled: true
persistentVolumeClaims:
- - mountTargets: [ "measure", "stream", "property" ]
+ - mountTargets: [ "measure", "stream", "property", "trace" ]
nodeRole: hot
existingClaimName: null
claimName: data
@@ -428,7 +428,7 @@ storage:
liaison:
enabled: true
persistentVolumeClaims:
- - mountTargets: [ "measure", "stream" ]
+ - mountTargets: [ "measure", "stream", "trace" ]
claimName: liaison-data
size: 10Gi
accessModes:
@@ -438,7 +438,7 @@ storage:
standalone:
enabled: false
persistentVolumeClaims:
- - mountTargets: [ "measure", "stream", "property" ]
+ - mountTargets: [ "measure", "stream", "property", "trace" ]
claimName: standalone-data
size: 200Gi
accessModes:
diff --git a/test/e2e/values.lifecycle.yaml b/test/e2e/values.lifecycle.yaml
index 90cb4ca..ee56bb8 100644
--- a/test/e2e/values.lifecycle.yaml
+++ b/test/e2e/values.lifecycle.yaml
@@ -287,6 +287,15 @@ storage:
- ReadWriteOnce
storageClass: null
volumeMode: Filesystem
+ - mountTargets: [ "trace" ]
+ nodeRole: hot
+ existingClaimName: null
+ claimName: hot-trace-data
+ size: 50Gi
+ accessModes:
+ - ReadWriteOnce
+ storageClass: null
+ volumeMode: Filesystem
- mountTargets: [ "measure" ]
nodeRole: warm
existingClaimName: null
@@ -314,6 +323,15 @@ storage:
- ReadWriteOnce
storageClass: null
volumeMode: Filesystem
+ - mountTargets: [ "trace" ]
+ nodeRole: warm
+ existingClaimName: null
+ claimName: warm-trace-data
+ size: 100Gi
+ accessModes:
+ - ReadWriteOnce
+ storageClass: null
+ volumeMode: Filesystem
- mountTargets: [ "measure" ]
nodeRole: cold
existingClaimName: null
@@ -341,6 +359,15 @@ storage:
- ReadWriteOnce
storageClass: null
volumeMode: Filesystem
+ - mountTargets: [ "trace" ]
+ nodeRole: cold
+ existingClaimName: null
+ claimName: cold-trace-data
+ size: 200Gi
+ accessModes:
+ - ReadWriteOnce
+ storageClass: null
+ volumeMode: Filesystem
- mountTargets: [ "backups" ]
nodeRole: hot
existingClaimName: null
diff --git a/test/e2e/values.standalone.yaml b/test/e2e/values.standalone.yaml
index 7b702a0..ff0a310 100644
--- a/test/e2e/values.standalone.yaml
+++ b/test/e2e/values.standalone.yaml
@@ -146,7 +146,7 @@ storage:
data:
enabled: false
persistentVolumeClaims:
- - mountTargets: ["measure", "stream", "property"]
+ - mountTargets: ["measure", "stream", "property", "trace"]
nodeRole: hot
existingClaimName: null
claimName: data
@@ -167,7 +167,7 @@ storage:
liaison:
enabled: false
persistentVolumeClaims:
- - mountTargets: [ "measure", "stream" ]
+ - mountTargets: [ "measure", "stream", "trace" ]
claimName: liaison-data
size: 10Gi
accessModes:
@@ -177,7 +177,7 @@ storage:
standalone:
enabled: false
persistentVolumeClaims:
- - mountTargets: [ "measure", "stream", "metadata", "property" ]
+ - mountTargets: [ "measure", "stream", "metadata", "property", "trace" ]
claimName: standalone-data
size: 200Gi
accessModes: