mirror of
https://github.com/bitnami/charts.git
synced 2026-02-14 23:37:11 +08:00
1479 lines
65 KiB
JSON
1479 lines
65 KiB
JSON
{
|
|
"title": "Chart Values",
|
|
"type": "object",
|
|
"properties": {
|
|
"global": {
|
|
"type": "object",
|
|
"properties": {
|
|
"imageRegistry": {
|
|
"type": "string",
|
|
"description": "Global Docker image registry",
|
|
"default": ""
|
|
},
|
|
"imagePullSecrets": {
|
|
"type": "array",
|
|
"description": "Global Docker registry secret names as an array",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"storageClass": {
|
|
"type": "string",
|
|
"description": "Global StorageClass for Persistent Volume(s)",
|
|
"default": ""
|
|
}
|
|
}
|
|
},
|
|
"kubeVersion": {
|
|
"type": "string",
|
|
"description": "Override Kubernetes version",
|
|
"default": ""
|
|
},
|
|
"nameOverride": {
|
|
"type": "string",
|
|
"description": "String to partially override common.names.fullname",
|
|
"default": ""
|
|
},
|
|
"fullnameOverride": {
|
|
"type": "string",
|
|
"description": "String to fully override common.names.fullname",
|
|
"default": ""
|
|
},
|
|
"commonLabels": {
|
|
"type": "object",
|
|
"description": "Labels to add to all deployed objects",
|
|
"default": {}
|
|
},
|
|
"commonAnnotations": {
|
|
"type": "object",
|
|
"description": "Annotations to add to all deployed objects",
|
|
"default": {}
|
|
},
|
|
"clusterDomain": {
|
|
"type": "string",
|
|
"description": "Kubernetes cluster domain name",
|
|
"default": "cluster.local"
|
|
},
|
|
"extraDeploy": {
|
|
"type": "array",
|
|
"description": "Array of extra objects to deploy with the release",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"diagnosticMode": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable diagnostic mode (all probes will be disabled and the command will be overridden)",
|
|
"default": false
|
|
},
|
|
"command": {
|
|
"type": "array",
|
|
"description": "Command to override all containers in the deployments/statefulsets",
|
|
"default": [
|
|
"sleep"
|
|
],
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"args": {
|
|
"type": "array",
|
|
"description": "Args to override all containers in the deployments/statefulsets",
|
|
"default": [
|
|
"infinity"
|
|
],
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"image": {
|
|
"type": "object",
|
|
"properties": {
|
|
"registry": {
|
|
"type": "string",
|
|
"description": "Deepspeed image registry",
|
|
"default": "docker.io"
|
|
},
|
|
"repository": {
|
|
"type": "string",
|
|
"description": "Deepspeed image repository",
|
|
"default": "bitnami/deepspeed"
|
|
},
|
|
"tag": {
|
|
"type": "string",
|
|
"description": "Deepspeed image tag (immutable tags are recommended)",
|
|
"default": "0.10.0-debian-11-r17"
|
|
},
|
|
"digest": {
|
|
"type": "string",
|
|
"description": "Deepspeed image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag",
|
|
"default": ""
|
|
},
|
|
"pullPolicy": {
|
|
"type": "string",
|
|
"description": "Deepspeed image pull policy",
|
|
"default": "IfNotPresent"
|
|
},
|
|
"pullSecrets": {
|
|
"type": "array",
|
|
"description": "Specify docker-registry secret names as an array",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
},
|
|
"source": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Where the source comes from: Possible values: configmap, git, custom",
|
|
"default": "configmap"
|
|
},
|
|
"launchCommand": {
|
|
"type": "string",
|
|
"description": "deepspeed command to run over the project",
|
|
"default": ""
|
|
},
|
|
"configMap": {
|
|
"type": "object",
|
|
"description": "List of files of the project",
|
|
"default": {}
|
|
},
|
|
"existingConfigMap": {
|
|
"type": "string",
|
|
"description": "Name of a configmap containing the files of the project",
|
|
"default": ""
|
|
},
|
|
"git": {
|
|
"type": "object",
|
|
"properties": {
|
|
"repository": {
|
|
"type": "string",
|
|
"description": "Repository that holds the files",
|
|
"default": ""
|
|
},
|
|
"revision": {
|
|
"type": "string",
|
|
"description": "Revision from the repository to checkout",
|
|
"default": ""
|
|
},
|
|
"extraVolumeMounts": {
|
|
"type": "array",
|
|
"description": "Add extra volume mounts for the Git container",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"config": {
|
|
"type": "object",
|
|
"properties": {
|
|
"defaultHostFile": {
|
|
"type": "string",
|
|
"description": "Host file generated by default (only edit if you know what you are doing)",
|
|
"default": "{{- $workers := $.Values.worker.replicaCount | int }}\n{{- range $i, $e := until $workers }}\n{{ include \"deepspeed.v0.worker.fullname\" $ }}-{{ $i }}.{{ printf \"%s-headless\" (include \"deepspeed.v0.worker.fullname\" $) }} slots={{ $.Values.worker.slotsPerNode }}\n{{- end }}\n"
|
|
},
|
|
"overrideHostFile": {
|
|
"type": "string",
|
|
"description": "Override default host file with the content in this value",
|
|
"default": ""
|
|
},
|
|
"existingHostFileConfigMap": {
|
|
"type": "string",
|
|
"description": "Name of a ConfigMap containing the hostfile",
|
|
"default": ""
|
|
},
|
|
"defaultSSHClient": {
|
|
"type": "string",
|
|
"description": "Default SSH client configuration for the client node (only edit if you know what you are doing)",
|
|
"default": "{{- $workers := $.Values.worker.replicaCount | int }}\n{{- range $i, $e := until $workers }}\nHost {{ include \"deepspeed.v0.worker.fullname\" $ }}-{{ $i }}.{{ printf \"%s-headless\" (include \"deepspeed.v0.worker.fullname\" $) }}\n Port {{ $.Values.worker.containerPorts.ssh }}\n IdentityFile /bitnami/ssh/client-private-key/id_rsa\n StrictHostKeyChecking no\n{{- end }}\n"
|
|
},
|
|
"overrideSSHClient": {
|
|
"type": "string",
|
|
"description": "Override default SSH cliient configuration with the content in this value",
|
|
"default": ""
|
|
},
|
|
"existingSSHClientConfigMap": {
|
|
"type": "string",
|
|
"description": "Name of a ConfigMap containing the SSH client configuration",
|
|
"default": ""
|
|
},
|
|
"defaultSSHServer": {
|
|
"type": "string",
|
|
"description": "Default SSH Server configuration for the worker nodes (only edit if you know what you are doing)",
|
|
"default": "Port {{ .Values.worker.containerPorts.ssh }}\nPasswordAuthentication no\nUsePAM no\nPermitUserEnvironment yes\n"
|
|
},
|
|
"overrideSSHServer": {
|
|
"type": "string",
|
|
"description": "Overidde SSH Server configuration with the content in this value",
|
|
"default": ""
|
|
},
|
|
"existingSSHServerConfigMap": {
|
|
"type": "string",
|
|
"description": "Name of a ConfigMap with with the SSH Server configuration",
|
|
"default": ""
|
|
},
|
|
"sshPrivateKey": {
|
|
"type": "string",
|
|
"description": "Private key for the client node to connect to the worker nodes",
|
|
"default": ""
|
|
},
|
|
"existingSSHKeySecret": {
|
|
"type": "string",
|
|
"description": "Name of a secret containing the ssh private key",
|
|
"default": ""
|
|
}
|
|
}
|
|
},
|
|
"client": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable Client deployment",
|
|
"default": true
|
|
},
|
|
"useJob": {
|
|
"type": "boolean",
|
|
"description": "Deploy as job",
|
|
"default": false
|
|
},
|
|
"backoffLimit": {
|
|
"type": "number",
|
|
"description": "set backoff limit of the job",
|
|
"default": 10
|
|
},
|
|
"extraEnvVars": {
|
|
"type": "array",
|
|
"description": "Array with extra environment variables to add to client nodes",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"extraEnvVarsCM": {
|
|
"type": "string",
|
|
"description": "Name of existing ConfigMap containing extra env vars for client nodes",
|
|
"default": ""
|
|
},
|
|
"extraEnvVarsSecret": {
|
|
"type": "string",
|
|
"description": "Name of existing Secret containing extra env vars for client nodes",
|
|
"default": ""
|
|
},
|
|
"annotations": {
|
|
"type": "object",
|
|
"description": "Annotations for the client deployment",
|
|
"default": {}
|
|
},
|
|
"command": {
|
|
"type": "array",
|
|
"description": "Override default container command (useful when using custom images)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"args": {
|
|
"type": "array",
|
|
"description": "Override default container args (useful when using custom images)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"terminationGracePeriodSeconds": {
|
|
"type": "string",
|
|
"description": "Client termination grace period (in seconds)",
|
|
"default": ""
|
|
},
|
|
"livenessProbe": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable livenessProbe on Client nodes",
|
|
"default": true
|
|
},
|
|
"initialDelaySeconds": {
|
|
"type": "number",
|
|
"description": "Initial delay seconds for livenessProbe",
|
|
"default": 5
|
|
},
|
|
"periodSeconds": {
|
|
"type": "number",
|
|
"description": "Period seconds for livenessProbe",
|
|
"default": 30
|
|
},
|
|
"timeoutSeconds": {
|
|
"type": "number",
|
|
"description": "Timeout seconds for livenessProbe",
|
|
"default": 20
|
|
},
|
|
"failureThreshold": {
|
|
"type": "number",
|
|
"description": "Failure threshold for livenessProbe",
|
|
"default": 5
|
|
},
|
|
"successThreshold": {
|
|
"type": "number",
|
|
"description": "Success threshold for livenessProbe",
|
|
"default": 1
|
|
}
|
|
}
|
|
},
|
|
"readinessProbe": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable readinessProbe on Client nodes",
|
|
"default": true
|
|
},
|
|
"initialDelaySeconds": {
|
|
"type": "number",
|
|
"description": "Initial delay seconds for readinessProbe",
|
|
"default": 5
|
|
},
|
|
"periodSeconds": {
|
|
"type": "number",
|
|
"description": "Period seconds for readinessProbe",
|
|
"default": 30
|
|
},
|
|
"timeoutSeconds": {
|
|
"type": "number",
|
|
"description": "Timeout seconds for readinessProbe",
|
|
"default": 20
|
|
},
|
|
"failureThreshold": {
|
|
"type": "number",
|
|
"description": "Failure threshold for readinessProbe",
|
|
"default": 5
|
|
},
|
|
"successThreshold": {
|
|
"type": "number",
|
|
"description": "Success threshold for readinessProbe",
|
|
"default": 1
|
|
}
|
|
}
|
|
},
|
|
"startupProbe": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable startupProbe on Client containers",
|
|
"default": false
|
|
},
|
|
"initialDelaySeconds": {
|
|
"type": "number",
|
|
"description": "Initial delay seconds for startupProbe",
|
|
"default": 5
|
|
},
|
|
"periodSeconds": {
|
|
"type": "number",
|
|
"description": "Period seconds for startupProbe",
|
|
"default": 30
|
|
},
|
|
"timeoutSeconds": {
|
|
"type": "number",
|
|
"description": "Timeout seconds for startupProbe",
|
|
"default": 5
|
|
},
|
|
"failureThreshold": {
|
|
"type": "number",
|
|
"description": "Failure threshold for startupProbe",
|
|
"default": 5
|
|
},
|
|
"successThreshold": {
|
|
"type": "number",
|
|
"description": "Success threshold for startupProbe",
|
|
"default": 1
|
|
}
|
|
}
|
|
},
|
|
"customLivenessProbe": {
|
|
"type": "object",
|
|
"description": "Custom livenessProbe that overrides the default one",
|
|
"default": {}
|
|
},
|
|
"customReadinessProbe": {
|
|
"type": "object",
|
|
"description": "Custom readinessProbe that overrides the default one",
|
|
"default": {}
|
|
},
|
|
"customStartupProbe": {
|
|
"type": "object",
|
|
"description": "Custom startupProbe that overrides the default one",
|
|
"default": {}
|
|
},
|
|
"resources": {
|
|
"type": "object",
|
|
"properties": {
|
|
"limits": {
|
|
"type": "object",
|
|
"description": "The resources limits for the client containers",
|
|
"default": {}
|
|
},
|
|
"requests": {
|
|
"type": "object",
|
|
"description": "The requested resources for the client containers",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"podSecurityContext": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enabled Client pods' Security Context",
|
|
"default": true
|
|
},
|
|
"fsGroup": {
|
|
"type": "number",
|
|
"description": "Set Client pod's Security Context fsGroup",
|
|
"default": 1001
|
|
},
|
|
"seccompProfile": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Set Client container's Security Context seccomp profile",
|
|
"default": "RuntimeDefault"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"containerSecurityContext": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enabled Client containers' Security Context",
|
|
"default": true
|
|
},
|
|
"runAsUser": {
|
|
"type": "number",
|
|
"description": "Set Client containers' Security Context runAsUser",
|
|
"default": 1001
|
|
},
|
|
"runAsGroup": {
|
|
"type": "number",
|
|
"description": "Set Client containers' Security Context runAsGroup",
|
|
"default": 1001
|
|
},
|
|
"runAsNonRoot": {
|
|
"type": "boolean",
|
|
"description": "Set Client containers' Security Context runAsNonRoot",
|
|
"default": true
|
|
},
|
|
"readOnlyRootFilesystem": {
|
|
"type": "boolean",
|
|
"description": "Set Client containers' Security Context runAsNonRoot",
|
|
"default": true
|
|
},
|
|
"allowPrivilegeEscalation": {
|
|
"type": "boolean",
|
|
"description": "Set Client container's privilege escalation",
|
|
"default": false
|
|
},
|
|
"capabilities": {
|
|
"type": "object",
|
|
"properties": {
|
|
"drop": {
|
|
"type": "array",
|
|
"description": "Set Client container's Security Context runAsNonRoot",
|
|
"default": [
|
|
"ALL"
|
|
],
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"lifecycleHooks": {
|
|
"type": "object",
|
|
"description": "for the client container(s) to automate configuration before or after startup",
|
|
"default": {}
|
|
},
|
|
"runtimeClassName": {
|
|
"type": "string",
|
|
"description": "Name of the runtime class to be used by pod(s)",
|
|
"default": ""
|
|
},
|
|
"hostAliases": {
|
|
"type": "array",
|
|
"description": "client pods host aliases",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"description": "Extra labels for the client deployment",
|
|
"default": {}
|
|
},
|
|
"podLabels": {
|
|
"type": "object",
|
|
"description": "Extra labels for client pods",
|
|
"default": {}
|
|
},
|
|
"podAnnotations": {
|
|
"type": "object",
|
|
"description": "Annotations for client pods",
|
|
"default": {}
|
|
},
|
|
"podAffinityPreset": {
|
|
"type": "string",
|
|
"description": "Pod affinity preset. Ignored if `client.affinity` is set. Allowed values: `soft` or `hard`",
|
|
"default": ""
|
|
},
|
|
"podAntiAffinityPreset": {
|
|
"type": "string",
|
|
"description": "Pod anti-affinity preset. Ignored if `client.affinity` is set. Allowed values: `soft` or `hard`",
|
|
"default": "soft"
|
|
},
|
|
"nodeAffinityPreset": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Node affinity preset type. Ignored if `client.affinity` is set. Allowed values: `soft` or `hard`",
|
|
"default": ""
|
|
},
|
|
"key": {
|
|
"type": "string",
|
|
"description": "Node label key to match. Ignored if `client.affinity` is set",
|
|
"default": ""
|
|
},
|
|
"values": {
|
|
"type": "array",
|
|
"description": "Node label values to match. Ignored if `client.affinity` is set",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
},
|
|
"affinity": {
|
|
"type": "object",
|
|
"description": "Affinity for Client pods assignment",
|
|
"default": {}
|
|
},
|
|
"nodeSelector": {
|
|
"type": "object",
|
|
"description": "Node labels for Client pods assignment",
|
|
"default": {}
|
|
},
|
|
"tolerations": {
|
|
"type": "array",
|
|
"description": "Tolerations for Client pods assignment",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"topologySpreadConstraints": {
|
|
"type": "array",
|
|
"description": "Topology Spread Constraints for pod assignment spread across your cluster among failure-domains",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"priorityClassName": {
|
|
"type": "string",
|
|
"description": "Client pods' priorityClassName",
|
|
"default": ""
|
|
},
|
|
"schedulerName": {
|
|
"type": "string",
|
|
"description": "Kubernetes pod scheduler registry",
|
|
"default": ""
|
|
},
|
|
"updateStrategy": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Client statefulset strategy type",
|
|
"default": "RollingUpdate"
|
|
},
|
|
"rollingUpdate": {
|
|
"type": "object",
|
|
"description": "Client statefulset rolling update configuration parameters",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"extraVolumes": {
|
|
"type": "array",
|
|
"description": "Optionally specify extra list of additional volumes for the Client pod(s)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"extraVolumeMounts": {
|
|
"type": "array",
|
|
"description": "Optionally specify extra list of additional volumeMounts for the Client container(s)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"sidecars": {
|
|
"type": "array",
|
|
"description": "Add additional sidecar containers to the Client pod(s)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"enableDefaultInitContainers": {
|
|
"type": "boolean",
|
|
"description": "Deploy default init containers",
|
|
"default": true
|
|
},
|
|
"initContainers": {
|
|
"type": "array",
|
|
"description": "Add additional init containers to the Client pod(s)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"networkPolicy": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable creation of NetworkPolicy resources",
|
|
"default": false
|
|
},
|
|
"extraIngress": {
|
|
"type": "array",
|
|
"description": "Add extra ingress rules to the NetworkPolicy",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"extraEgress": {
|
|
"type": "array",
|
|
"description": "Add extra ingress rules to the NetworkPolicy",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
},
|
|
"serviceAccount": {
|
|
"type": "object",
|
|
"properties": {
|
|
"create": {
|
|
"type": "boolean",
|
|
"description": "Enable creation of ServiceAccount for Client pods",
|
|
"default": false
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the ServiceAccount to use",
|
|
"default": ""
|
|
},
|
|
"automountServiceAccountToken": {
|
|
"type": "boolean",
|
|
"description": "Allows auto mount of ServiceAccountToken on the serviceAccount created",
|
|
"default": false
|
|
},
|
|
"annotations": {
|
|
"type": "object",
|
|
"description": "Additional custom annotations for the ServiceAccount",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"persistence": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Use a PVC to persist data",
|
|
"default": false
|
|
},
|
|
"storageClass": {
|
|
"type": "string",
|
|
"description": "discourse & sidekiq data Persistent Volume Storage Class",
|
|
"default": ""
|
|
},
|
|
"existingClaim": {
|
|
"type": "string",
|
|
"description": "Use a existing PVC which must be created manually before bound",
|
|
"default": ""
|
|
},
|
|
"mountPath": {
|
|
"type": "string",
|
|
"description": "Path to mount the volume at",
|
|
"default": "/bitnami/deepspeed/data"
|
|
},
|
|
"accessModes": {
|
|
"type": "array",
|
|
"description": "Persistent Volume Access Mode",
|
|
"default": [
|
|
"ReadWriteOnce"
|
|
],
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"dataSource": {
|
|
"type": "object",
|
|
"description": "Custom PVC data source",
|
|
"default": {}
|
|
},
|
|
"selector": {
|
|
"type": "object",
|
|
"description": "Selector to match an existing Persistent Volume for the client data PVC",
|
|
"default": {}
|
|
},
|
|
"size": {
|
|
"type": "string",
|
|
"description": "Size of data volume",
|
|
"default": "8Gi"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"description": "Persistent Volume labels",
|
|
"default": {}
|
|
},
|
|
"annotations": {
|
|
"type": "object",
|
|
"description": "Persistent Volume annotations",
|
|
"default": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"worker": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable Worker deployment",
|
|
"default": true
|
|
},
|
|
"slotsPerNode": {
|
|
"type": "number",
|
|
"description": "Number of slots available per worker node",
|
|
"default": 1
|
|
},
|
|
"extraEnvVars": {
|
|
"type": "array",
|
|
"description": "Array with extra environment variables to add to client nodes",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"extraEnvVarsCM": {
|
|
"type": "string",
|
|
"description": "Name of existing ConfigMap containing extra env vars for client nodes",
|
|
"default": ""
|
|
},
|
|
"extraEnvVarsSecret": {
|
|
"type": "string",
|
|
"description": "Name of existing Secret containing extra env vars for client nodes",
|
|
"default": ""
|
|
},
|
|
"command": {
|
|
"type": "array",
|
|
"description": "Override default container command (useful when using custom images)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"args": {
|
|
"type": "array",
|
|
"description": "Override default container args (useful when using custom images)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"replicaCount": {
|
|
"type": "number",
|
|
"description": "Number of Worker replicas to deploy",
|
|
"default": 3
|
|
},
|
|
"terminationGracePeriodSeconds": {
|
|
"type": "string",
|
|
"description": "Worker termination grace period (in seconds)",
|
|
"default": ""
|
|
},
|
|
"containerPorts": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ssh": {
|
|
"type": "number",
|
|
"description": "SSH port for Worker",
|
|
"default": 2222
|
|
}
|
|
}
|
|
},
|
|
"livenessProbe": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable livenessProbe on Worker nodes",
|
|
"default": true
|
|
},
|
|
"initialDelaySeconds": {
|
|
"type": "number",
|
|
"description": "Initial delay seconds for livenessProbe",
|
|
"default": 5
|
|
},
|
|
"periodSeconds": {
|
|
"type": "number",
|
|
"description": "Period seconds for livenessProbe",
|
|
"default": 30
|
|
},
|
|
"timeoutSeconds": {
|
|
"type": "number",
|
|
"description": "Timeout seconds for livenessProbe",
|
|
"default": 5
|
|
},
|
|
"failureThreshold": {
|
|
"type": "number",
|
|
"description": "Failure threshold for livenessProbe",
|
|
"default": 5
|
|
},
|
|
"successThreshold": {
|
|
"type": "number",
|
|
"description": "Success threshold for livenessProbe",
|
|
"default": 1
|
|
}
|
|
}
|
|
},
|
|
"readinessProbe": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable readinessProbe on Worker nodes",
|
|
"default": true
|
|
},
|
|
"initialDelaySeconds": {
|
|
"type": "number",
|
|
"description": "Initial delay seconds for readinessProbe",
|
|
"default": 5
|
|
},
|
|
"periodSeconds": {
|
|
"type": "number",
|
|
"description": "Period seconds for readinessProbe",
|
|
"default": 30
|
|
},
|
|
"timeoutSeconds": {
|
|
"type": "number",
|
|
"description": "Timeout seconds for readinessProbe",
|
|
"default": 5
|
|
},
|
|
"failureThreshold": {
|
|
"type": "number",
|
|
"description": "Failure threshold for readinessProbe",
|
|
"default": 5
|
|
},
|
|
"successThreshold": {
|
|
"type": "number",
|
|
"description": "Success threshold for readinessProbe",
|
|
"default": 1
|
|
}
|
|
}
|
|
},
|
|
"startupProbe": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable startupProbe on Worker containers",
|
|
"default": false
|
|
},
|
|
"initialDelaySeconds": {
|
|
"type": "number",
|
|
"description": "Initial delay seconds for startupProbe",
|
|
"default": 5
|
|
},
|
|
"periodSeconds": {
|
|
"type": "number",
|
|
"description": "Period seconds for startupProbe",
|
|
"default": 30
|
|
},
|
|
"timeoutSeconds": {
|
|
"type": "number",
|
|
"description": "Timeout seconds for startupProbe",
|
|
"default": 5
|
|
},
|
|
"failureThreshold": {
|
|
"type": "number",
|
|
"description": "Failure threshold for startupProbe",
|
|
"default": 5
|
|
},
|
|
"successThreshold": {
|
|
"type": "number",
|
|
"description": "Success threshold for startupProbe",
|
|
"default": 1
|
|
}
|
|
}
|
|
},
|
|
"customLivenessProbe": {
|
|
"type": "object",
|
|
"description": "Custom livenessProbe that overrides the default one",
|
|
"default": {}
|
|
},
|
|
"customReadinessProbe": {
|
|
"type": "object",
|
|
"description": "Custom readinessProbe that overrides the default one",
|
|
"default": {}
|
|
},
|
|
"customStartupProbe": {
|
|
"type": "object",
|
|
"description": "Custom startupProbe that overrides the default one",
|
|
"default": {}
|
|
},
|
|
"resources": {
|
|
"type": "object",
|
|
"properties": {
|
|
"limits": {
|
|
"type": "object",
|
|
"description": "The resources limits for the client containers",
|
|
"default": {}
|
|
},
|
|
"requests": {
|
|
"type": "object",
|
|
"description": "The requested resources for the client containers",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"podSecurityContext": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enabled Worker pods' Security Context",
|
|
"default": true
|
|
},
|
|
"fsGroup": {
|
|
"type": "number",
|
|
"description": "Set Worker pod's Security Context fsGroup",
|
|
"default": 1001
|
|
},
|
|
"seccompProfile": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Set Worker container's Security Context seccomp profile",
|
|
"default": "RuntimeDefault"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"containerSecurityContext": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enabled Worker containers' Security Context",
|
|
"default": true
|
|
},
|
|
"runAsUser": {
|
|
"type": "number",
|
|
"description": "Set Worker containers' Security Context runAsUser",
|
|
"default": 1001
|
|
},
|
|
"runAsGroup": {
|
|
"type": "number",
|
|
"description": "Set Worker containers' Security Context runAsGroup",
|
|
"default": 1001
|
|
},
|
|
"runAsNonRoot": {
|
|
"type": "boolean",
|
|
"description": "Set Worker containers' Security Context runAsNonRoot",
|
|
"default": true
|
|
},
|
|
"readOnlyRootFilesystem": {
|
|
"type": "boolean",
|
|
"description": "Set Worker containers' Security Context runAsNonRoot",
|
|
"default": true
|
|
},
|
|
"allowPrivilegeEscalation": {
|
|
"type": "boolean",
|
|
"description": "Set Worker container's privilege escalation",
|
|
"default": false
|
|
},
|
|
"capabilities": {
|
|
"type": "object",
|
|
"properties": {
|
|
"drop": {
|
|
"type": "array",
|
|
"description": "Set Worker container's Security Context runAsNonRoot",
|
|
"default": [
|
|
"ALL"
|
|
],
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"lifecycleHooks": {
|
|
"type": "object",
|
|
"description": "for the client container(s) to automate configuration before or after startup",
|
|
"default": {}
|
|
},
|
|
"runtimeClassName": {
|
|
"type": "string",
|
|
"description": "Name of the runtime class to be used by pod(s)",
|
|
"default": ""
|
|
},
|
|
"hostAliases": {
|
|
"type": "array",
|
|
"description": "client pods host aliases",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"description": "Labels for the worker deployment",
|
|
"default": {}
|
|
},
|
|
"annotations": {
|
|
"type": "object",
|
|
"description": "Annotations for the worker deployment",
|
|
"default": {}
|
|
},
|
|
"podLabels": {
|
|
"type": "object",
|
|
"description": "Extra labels for client pods",
|
|
"default": {}
|
|
},
|
|
"podAnnotations": {
|
|
"type": "object",
|
|
"description": "Annotations for client pods",
|
|
"default": {}
|
|
},
|
|
"podAffinityPreset": {
|
|
"type": "string",
|
|
"description": "Pod affinity preset. Ignored if `client.affinity` is set. Allowed values: `soft` or `hard`",
|
|
"default": ""
|
|
},
|
|
"podAntiAffinityPreset": {
|
|
"type": "string",
|
|
"description": "Pod anti-affinity preset. Ignored if `client.affinity` is set. Allowed values: `soft` or `hard`",
|
|
"default": "soft"
|
|
},
|
|
"nodeAffinityPreset": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Node affinity preset type. Ignored if `client.affinity` is set. Allowed values: `soft` or `hard`",
|
|
"default": ""
|
|
},
|
|
"key": {
|
|
"type": "string",
|
|
"description": "Node label key to match. Ignored if `client.affinity` is set",
|
|
"default": ""
|
|
},
|
|
"values": {
|
|
"type": "array",
|
|
"description": "Node label values to match. Ignored if `client.affinity` is set",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
},
|
|
"affinity": {
|
|
"type": "object",
|
|
"description": "Affinity for Worker pods assignment",
|
|
"default": {}
|
|
},
|
|
"nodeSelector": {
|
|
"type": "object",
|
|
"description": "Node labels for Worker pods assignment",
|
|
"default": {}
|
|
},
|
|
"tolerations": {
|
|
"type": "array",
|
|
"description": "Tolerations for Worker pods assignment",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"topologySpreadConstraints": {
|
|
"type": "array",
|
|
"description": "Topology Spread Constraints for pod assignment spread across your cluster among failure-domains",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"podManagementPolicy": {
|
|
"type": "string",
|
|
"description": "Statefulset Pod management policy, it needs to be Parallel to be able to complete the cluster join",
|
|
"default": "Parallel"
|
|
},
|
|
"priorityClassName": {
|
|
"type": "string",
|
|
"description": "Worker pods' priorityClassName",
|
|
"default": ""
|
|
},
|
|
"schedulerName": {
|
|
"type": "string",
|
|
"description": "Kubernetes pod scheduler registry",
|
|
"default": ""
|
|
},
|
|
"updateStrategy": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Worker statefulset strategy type",
|
|
"default": "RollingUpdate"
|
|
},
|
|
"rollingUpdate": {
|
|
"type": "object",
|
|
"description": "Worker statefulset rolling update configuration parameters",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"extraVolumes": {
|
|
"type": "array",
|
|
"description": "Optionally specify extra list of additional volumes for the Worker pod(s)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"extraVolumeMounts": {
|
|
"type": "array",
|
|
"description": "Optionally specify extra list of additional volumeMounts for the Worker container(s)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"sidecars": {
|
|
"type": "array",
|
|
"description": "Add additional sidecar containers to the Worker pod(s)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"enableDefaultInitContainers": {
|
|
"type": "boolean",
|
|
"description": "Deploy default init containers",
|
|
"default": true
|
|
},
|
|
"initContainers": {
|
|
"type": "array",
|
|
"description": "Add additional init containers to the Worker pod(s)",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"headlessServiceAnnotations": {
|
|
"type": "object",
|
|
"description": "Annotations for the headless service",
|
|
"default": {}
|
|
},
|
|
"externalAccess": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Create a service per worker node",
|
|
"default": false
|
|
},
|
|
"service": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Worker service type",
|
|
"default": "ClusterIP"
|
|
},
|
|
"loadBalancerIPs": {
|
|
"type": "array",
|
|
"description": "Array of load balancer IPs for each Kafka broker. Length must be the same as replicaCount",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"externalIPs": {
|
|
"type": "array",
|
|
"description": "Use distinct service host IPs to configure Kafka external listener when service type is NodePort. Length must be the same as replicaCount",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"loadBalancerAnnotations": {
|
|
"type": "array",
|
|
"description": "Array of load balancer annotations for each Kafka broker. Length must be the same as replicaCount",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"publishNotReadyAddresses": {
|
|
"type": "boolean",
|
|
"description": "Indicates that any agent which deals with endpoints for this Service should disregard any indications of ready/not-ready",
|
|
"default": false
|
|
},
|
|
"ports": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ssh": {
|
|
"type": "number",
|
|
"description": "Worker GRPC service port",
|
|
"default": 22
|
|
}
|
|
}
|
|
},
|
|
"nodePorts": {
|
|
"type": "array",
|
|
"description": "Array of node ports used for each Kafka broker. Length must be the same as replicaCount",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"sessionAffinityConfig": {
|
|
"type": "object",
|
|
"description": "Additional settings for the sessionAffinity",
|
|
"default": {}
|
|
},
|
|
"sessionAffinity": {
|
|
"type": "string",
|
|
"description": "Control where client requests go, to the same pod or round-robin",
|
|
"default": "None"
|
|
},
|
|
"loadBalancerSourceRanges": {
|
|
"type": "array",
|
|
"description": "Worker service Load Balancer sources",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"externalTrafficPolicy": {
|
|
"type": "string",
|
|
"description": "Worker service external traffic policy",
|
|
"default": "Cluster"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"description": "Additional custom labels for Worker service",
|
|
"default": {}
|
|
},
|
|
"annotations": {
|
|
"type": "object",
|
|
"description": "Additional custom annotations for Worker service",
|
|
"default": {}
|
|
},
|
|
"extraPorts": {
|
|
"type": "array",
|
|
"description": "Extra ports to expose in the Worker service",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"serviceAccount": {
|
|
"type": "object",
|
|
"properties": {
|
|
"create": {
|
|
"type": "boolean",
|
|
"description": "Enable creation of ServiceAccount for Data Coordinator pods",
|
|
"default": false
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the ServiceAccount to use",
|
|
"default": ""
|
|
},
|
|
"automountServiceAccountToken": {
|
|
"type": "boolean",
|
|
"description": "Allows auto mount of ServiceAccountToken on the serviceAccount created",
|
|
"default": false
|
|
},
|
|
"annotations": {
|
|
"type": "object",
|
|
"description": "Additional custom annotations for the ServiceAccount",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"networkPolicy": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable creation of NetworkPolicy resources",
|
|
"default": false
|
|
},
|
|
"allowExternal": {
|
|
"type": "boolean",
|
|
"description": "The Policy model to apply",
|
|
"default": true
|
|
},
|
|
"extraIngress": {
|
|
"type": "array",
|
|
"description": "Add extra ingress rules to the NetworkPolicy",
|
|
"default": [],
|
|
"items": {}
|
|
},
|
|
"extraEgress": {
|
|
"type": "array",
|
|
"description": "Add extra ingress rules to the NetworkPolicy",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
},
|
|
"persistence": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Use a PVC to persist data",
|
|
"default": false
|
|
},
|
|
"storageClass": {
|
|
"type": "string",
|
|
"description": "discourse & sidekiq data Persistent Volume Storage Class",
|
|
"default": ""
|
|
},
|
|
"existingClaim": {
|
|
"type": "string",
|
|
"description": "Use a existing PVC which must be created manually before bound",
|
|
"default": ""
|
|
},
|
|
"mountPath": {
|
|
"type": "string",
|
|
"description": "Path to mount the volume at",
|
|
"default": "/bitnami/deepspeed/data"
|
|
},
|
|
"accessModes": {
|
|
"type": "array",
|
|
"description": "Persistent Volume Access Mode",
|
|
"default": [
|
|
"ReadWriteOnce"
|
|
],
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"selector": {
|
|
"type": "object",
|
|
"description": "Selector to match an existing Persistent Volume for the worker data PVC",
|
|
"default": {}
|
|
},
|
|
"dataSource": {
|
|
"type": "object",
|
|
"description": "Custom PVC data source",
|
|
"default": {}
|
|
},
|
|
"size": {
|
|
"type": "string",
|
|
"description": "Size of data volume",
|
|
"default": "8Gi"
|
|
},
|
|
"labels": {
|
|
"type": "object",
|
|
"description": "Persistent Volume labels",
|
|
"default": {}
|
|
},
|
|
"annotations": {
|
|
"type": "object",
|
|
"description": "Persistent Volume annotations",
|
|
"default": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"gitImage": {
|
|
"type": "object",
|
|
"properties": {
|
|
"registry": {
|
|
"type": "string",
|
|
"description": "Git image registry",
|
|
"default": "docker.io"
|
|
},
|
|
"repository": {
|
|
"type": "string",
|
|
"description": "Git image repository",
|
|
"default": "bitnami/git"
|
|
},
|
|
"tag": {
|
|
"type": "string",
|
|
"description": "Git image tag (immutable tags are recommended)",
|
|
"default": "2.41.0-debian-11-r16"
|
|
},
|
|
"digest": {
|
|
"type": "string",
|
|
"description": "Git image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag",
|
|
"default": ""
|
|
},
|
|
"pullPolicy": {
|
|
"type": "string",
|
|
"description": "Git image pull policy",
|
|
"default": "IfNotPresent"
|
|
},
|
|
"pullSecrets": {
|
|
"type": "array",
|
|
"description": "Specify docker-registry secret names as an array",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
},
|
|
"volumePermissions": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Enable init container that changes volume permissions in the data directory",
|
|
"default": false
|
|
},
|
|
"image": {
|
|
"type": "object",
|
|
"properties": {
|
|
"registry": {
|
|
"type": "string",
|
|
"description": "Init container volume-permissions image registry",
|
|
"default": "docker.io"
|
|
},
|
|
"repository": {
|
|
"type": "string",
|
|
"description": "Init container volume-permissions image repository",
|
|
"default": "bitnami/os-shell"
|
|
},
|
|
"tag": {
|
|
"type": "string",
|
|
"description": "Init container volume-permissions image tag (immutable tags are recommended)",
|
|
"default": "11-debian-11-r16"
|
|
},
|
|
"digest": {
|
|
"type": "string",
|
|
"description": "Init container volume-permissions image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag",
|
|
"default": ""
|
|
},
|
|
"pullPolicy": {
|
|
"type": "string",
|
|
"description": "Init container volume-permissions image pull policy",
|
|
"default": "IfNotPresent"
|
|
},
|
|
"pullSecrets": {
|
|
"type": "array",
|
|
"description": "Specify docker-registry secret names as an array",
|
|
"default": [],
|
|
"items": {}
|
|
}
|
|
}
|
|
},
|
|
"resources": {
|
|
"type": "object",
|
|
"properties": {
|
|
"limits": {
|
|
"type": "object",
|
|
"description": "The resources limits for the container",
|
|
"default": {}
|
|
},
|
|
"requests": {
|
|
"type": "object",
|
|
"description": "The requested resources for the container",
|
|
"default": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |