title |
---|
Data Control Center Helm Chart |
Installs Koor Data Control Center to inspect, configure, and manage your Koor Storage Cluster on Kubernetes.
This chart sets up Koor Data Control Center deployment on a Kubernetes cluster using the Helm package manager.
- Kubernetes 1.19+
- Helm 3.x
- Koor Storage Cluster or Rook Ceph Cluster v1.11.x+
See the Helm support matrix for more details.
The Ceph Operator helm chart will install the basic components necessary to create a storage data control center for your Rook Ceph cluster in Kubernetes.
- Add the Koor Helm repo
- Install the Helm chart
- Create a Koor Storage cluster.
The helm install
command deploys the Koor Operator on the Kubernetes cluster in the default configuration. The configuration section lists the parameters that can be configured during installation. It is recommended that the Koor Operator be installed into the same namespace as the Rook Ceph cluster (e.g., rook-ceph
namespace used as an example).
helm repo add data-control-center https://koor-tech.github.io/data-control-center
helm repo update
helm install --create-namespace --namespace rook-ceph data-control-center data-control-center/data-control-center -f values.yaml
For example settings, see the next section or values.yaml.
To expose the data-control-center you need to use the ingress:
config section.
An example for a common Ingress setup with NGINX ingress controller and that uses the cert-manager to retrieve a certificate:
ingress:
enabled: true
# -- Ingress class name
className: "nginx"
annotations:
cert-manager.io/cluster-issuer: your-cluster-issuer
hosts:
- host: datacontrolcenter.example.com
paths:
- path: /
pathType: ImplementationSpecific
tls:
- secretName: data-control-center-tls
hosts:
- datacontrolcenter.example.com
The following table lists the configurable parameters of the rook-operator chart and their default values.
Parameter | Description | Default |
---|---|---|
additionalEnv |
Will be put in a Secret and used as env vars (key value pairs) | {} |
additionalVolumeMounts |
Extra volume mounts to add to the data-control-center deployment | [] |
additionalVolumes |
Extra volumes to add to the data-control-center deployment | [] |
affinity |
Pod Affinity options https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#affinity-v1-core | {} |
config |
data-control-center config, documentation here: https://github.com/koor-tech/data-control-center/blob/main/docs/configuration.md#reference | {"ancienttCmd":"ancientt","ceph":{"api":{"insecureSkipVerify":true,"password":null,"url":"https://rook-ceph-mgr-dashboard:8443/api","username":"data-control-center"}},"certs":{"caCerts":[],"insecureSkipVerify":false},"http":{"listen":":8282","sessions":{"cookieSecret":"your_generated_cookie_secret","domain":"localhost"}},"jwt":{"secret":"your_generated_jwt_secret"},"logLevel":"INFO","mode":"release","namespace":"","oauth2":{"providers":[]},"readOnly":false,"updateCheck":{"enabled":true,"interval":"24h"},"users":[]} |
config.ceph.api.password |
Password is auto generated if not set and retrieved using helm's lookup function | nil |
config.namespace |
The rook ceph namespace, if different from the release namespace. Defaults to the release namespace. | "" |
fullnameOverride |
Overrides the chart's computed fullname | "" |
image.pullPolicy |
Image pull policy https://kubernetes.io/docs/concepts/containers/images#updating-images | "IfNotPresent" |
image.repository |
Image repository | "docker.io/koorinc/data-control-center" |
image.tag |
Overrides the image tag whose default is the chart appVersion. | "" |
imagePullSecrets |
Specifiy image pull secrets https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod | [] |
ingress.annotations |
Annotations to add to Ingress | {} |
ingress.className |
Ingress class name | "" |
ingress.enabled |
If an Ingress object should be created. | false |
ingress.hosts |
List of Ingress hosts/paths to expose via an Ingress object | [{"host":"chart-example.local","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}] |
ingress.tls |
Ingress TLS config https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#ingresstls-v1-networking-k8s-io | [] |
nameOverride |
Overrides the chart's name | "" |
nodeSelector |
Node selector https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ | {} |
podAnnotations |
Additional annotations to add to the pods | {} |
podSecurityContext |
Pod security context https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ | {} |
postInstallJob.enabled |
If enabled, will create a Ceph dashboard admin user data-control-center either on Rook/Ceph cluster pre upgrade(when having data-control-center as a helm dependency) or on post install of data-control-center (needs existing Rook/Ceph cluster). This user will be used for retrieving cluster info and stats. |
true |
rbac.ancientt |
Setup RBAC for running ancientt network tests | true |
rbac.annotations |
Annotations to add to the service account | {} |
rbac.create |
Specifies wheter RBAC roles should be created | true |
rbac.name |
The name of the service account to use. If not set and create is true, a name is generated using the fullname template. | "" |
replicaCount |
Replica count to run. | 1 |
resources |
Resources to set for the container https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#resourcerequirements-v1-core | {} |
securityContext |
Container security context https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ | {} |
service.port |
Service port number | 8282 |
service.type |
Service type (Default ClusterIP ) |
"ClusterIP" |
serviceAccount.annotations |
Annotations to add to the service account | {} |
serviceAccount.create |
Specifies whether a service account should be created | true |
serviceAccount.name |
The name of the service account to use. If not set and create is true, a name is generated using the fullname template. | "" |
tolerations |
List of Tolerations https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#toleration-v1-core | [] |
To see the currently installed Rook chart:
helm ls --namespace rook-ceph
To uninstall/delete the data-control-center
deployment:
helm delete --namespace rook-ceph data-control-center
The command removes all the Kubernetes components associated with the chart and deletes the release.
Copyright 2023 Koor Technologies, Inc. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software 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.