Using the ArangoDB Kubernetes Operator with Helm
Helm
is a package manager for Kubernetes, which enables
you to install various packages (include the ArangoDB Kubernetes Operator)
into your Kubernetes cluster.
The benefit of helm
(in the context of the ArangoDB Kubernetes Operator)
is that it allows for a lot of flexibility in how you install the operator.
For example you can install the operator in a namespace other than
default
.
ChartsPermalink
The ArangoDB Kubernetes Operator is contained in two helm
charts:
kube-arangodb
which contains the operator for theArangoDeployment
,ArangoLocalStorage
andArangoDeploymentReplication
resource types.kube-arangodb-crd
which contains the CRD for theArangoDeployment
andArangoDeploymentReplication
resource types.
Configurable values for ArangoDB Kubernetes OperatorPermalink
The following values can be configured when installing the
ArangoDB Kubernetes Operator with helm
.
Values are passed to helm
using an --set=<key>=<value>
argument passed
to the helm install
or helm upgrade
command.
operator.image
Permalink
Image used for the ArangoDB Operator.
Default: arangodb/kube-arangodb:latest
operator.imagePullPolicy
Permalink
Image pull policy for Operator images.
Default: IfNotPresent
operator.imagePullSecrets
Permalink
List of the Image Pull Secrets for Operator images.
Default: []string
operator.service.type
Permalink
Type of the Operator service.
Default: ClusterIP
operator.annotations
Permalink
Annotations passed to the Operator Deployment definition.
Default: []string
operator.resources.limits.cpu
Permalink
CPU limits for operator pods.
Default: 1
operator.resources.limits.memory
Permalink
Memory limits for operator pods.
Default: 256Mi
operator.resources.requested.cpu
Permalink
Requested CPI by Operator pods.
Default: 250m
operator.resources.requested.memory
Permalink
Requested memory for operator pods.
Default: 256Mi
operator.replicaCount
Permalink
Replication count for Operator deployment.
Default: 2
operator.updateStrategy
Permalink
Update strategy for operator pod.
Default: Recreate
operator.features.deployment
Permalink
Define if ArangoDeployment Operator should be enabled.
Default: true
operator.features.deploymentReplications
Permalink
Define if ArangoDeploymentReplications Operator should be enabled.
Default: true
operator.features.storage
Permalink
Define if ArangoLocalStorage Operator should be enabled.
Default: false
operator.features.backup
Permalink
Define if ArangoBackup Operator should be enabled.
Default: false
rbac.enabled
Permalink
Define if RBAC should be enabled.
Default: true
Alternate namespacesPermalink
The kube-arangodb
chart supports deployment into a non-default namespace.
To install the kube-arangodb
chart is a non-default namespace, use the --namespace
argument like this.
helm install --namespace=mynamespace kube-arangodb.tgz
Note that since the operators claim exclusive access to a namespace, you can
install the kube-arangodb
chart in a namespace once.
You can install the kube-arangodb
chart in multiple namespaces. To do so, run:
helm install --namespace=namespace1 kube-arangodb.tgz
helm install --namespace=namespace2 kube-arangodb.tgz
The kube-arangodb-storage
chart is always installed in the kube-system
namespace.
Common problemsPermalink
Error: no available release name foundPermalink
This error is given by helm install ...
in some cases where it has
insufficient permissions to install charts.
For various ways to work around this problem go to this Stackoverflow article.