Skip to content

Commit 9435689

Browse files
committed
Adding Helm docs
1 parent 0b141fb commit 9435689

File tree

2 files changed

+88
-1
lines changed

2 files changed

+88
-1
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# Using the ArangoDB Kubernetes Operator with Helm
2+
3+
[`Helm`](https://www.helm.sh/) is a package manager for Kubernetes, which enables
4+
you to install various packages (include the ArangoDB Kubernetes Operator)
5+
into your Kubernetes cluster.
6+
7+
The benefit of `helm` (in the context of the ArangoDB Kubernetes Operator)
8+
is that it allows for a lot of flexibility in how you install the operator.
9+
For example you can install the operator in a namespace other than
10+
`default`.
11+
12+
## Charts
13+
14+
## Configurable values for ArangoDB Kubernetes Operator
15+
16+
The following values can be configured when installing the
17+
ArangoDB Kubernetes Operator with `helm`.
18+
19+
### Both charts
20+
21+
| Key | Type | Description
22+
|-------------------|--------|-----|
23+
| Image | string | Override the docker image used by the operators
24+
| ImagePullPolicy | string | Override the image pull policy used by the operators. See [Updating Images](https://kubernetes.io/docs/concepts/containers/images/#updating-images) for details.
25+
| RBAC.Create | bool | Set to `true` (default) to create roles & role bindings.
26+
27+
### `kube-arangodb` chart
28+
29+
| Key | Type | Description
30+
|-------------------|--------|-----|
31+
| Deployment.Create | bool | Set to `true` (default) to deploy the `ArangoDeployment` operator
32+
| Deployment.User.ServiceAccountName | string | Name of the `ServiceAccount` that is the subject of the `RoleBinding` of users of the `ArangoDeployment` operator
33+
| Deployment.Operator.ServiceAccountName | string | Name of the `ServiceAccount` used to run the `ArangoDeployment` operator
34+
| Deployment.Operator.ServiceType | string | Type of `Service` created for the dashboard of the `ArangoDeployment` operator
35+
| Deployment.AllowChaos | bool | Set to `true` to allow the introduction of chaos. **Only use for testing, never for production!** Defaults to `false`.
36+
| DeploymentReplication.Create | bool | Set to `true` (default) to deploy the `ArangoDeploymentReplication` operator
37+
| DeploymentReplication.User.ServiceAccountName | string | Name of the `ServiceAccount` that is the subject of the `RoleBinding` of users of the `ArangoDeploymentReplication` operator
38+
| DeploymentReplication.Operator.ServiceAccountName | string | Name of the `ServiceAccount` used to run the `ArangoDeploymentReplication` operator
39+
| DeploymentReplication.Operator.ServiceType | string | Type of `Service` created for the dashboard of the `ArangoDeploymentReplication` operator
40+
41+
### `kube-arangodb-storage` chart
42+
43+
| Key | Type | Description
44+
|-------------------|--------|-----|
45+
| Storage.User.ServiceAccountName | string | Name of the `ServiceAccount` that is the subject of the `RoleBinding` of users of the `ArangoLocalStorage` operator
46+
| Storage.Operator.ServiceAccountName | string | Name of the `ServiceAccount` used to run the `ArangoLocalStorage` operator
47+
| Storage.Operator.ServiceType | string | Type of `Service` created for the dashboard of the `ArangoLocalStorage` operator

docs/Manual/Deployment/Kubernetes/Usage.md

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,38 @@
55
The ArangoDB Kubernetes Operator needs to be installed in your Kubernetes
66
cluster first.
77

8-
To do so, run (replace `<version>` with the version of the operator that you want to install):
8+
If you have `Helm` available, we recommend installation using `Helm`.
9+
10+
### Installation with Helm
11+
12+
To install the ArangoDB Kubernetes Operator with [`helm`](https://www.helm.sh/),
13+
run (replace `<version>` with the version of the operator that you want to install):
14+
15+
```bash
16+
export URLPREFIX=https://github.com/arangodb/kube-arangodb/releases/download/<version>
17+
helm install $URLPREFIX/kube-arangodb.tgz
18+
```
19+
20+
This installs operators for the `ArangoDeployment` and `ArangoDeploymentReplication`
21+
resource types.
22+
23+
If you want to avoid the installation of the operator for the `ArangoDeploymentReplication`
24+
resource type, add `--set=DeploymentReplication.Create=false` to the `helm install`
25+
command.
26+
27+
To use `ArangoLocalStorage` resources, also run:
28+
29+
```bash
30+
helm install $URLPREFIX/kube-arangodb-storage.tgz
31+
```
32+
33+
For more information on installing with `Helm` and how to customize an installation,
34+
see [Using the ArangoDB Kubernetes Operator with Helm](./Helm.md).
35+
36+
### Installation with Kubectl
37+
38+
To install the ArangoDB Kubernetes Operator without `Helm`,
39+
run (replace `<version>` with the version of the operator that you want to install):
940

1041
```bash
1142
export URLPREFIX=https://raw.githubusercontent.com/arangodb/kube-arangodb/<version>/manifests
@@ -60,6 +91,14 @@ If you want to keep your data, make sure to create a backup before removing the
6091
To remove the entire ArangoDB Kubernetes Operator, remove all
6192
clusters first and then remove the operator by running:
6293

94+
```bash
95+
helm delete <release-name-of-kube-arangodb-chart>
96+
# If `ArangoLocalStorage` operator is installed
97+
helm delete <release-name-of-kube-arangodb-storage-chart>
98+
```
99+
100+
or when you used `kubectl` to install the operator, run:
101+
63102
```bash
64103
kubectl delete deployment arango-deployment-operator
65104
# If `ArangoLocalStorage` operator is installed
@@ -73,3 +112,4 @@ kubectl delete deployment arango-deployment-replication-operator
73112
- [Driver configuration](./DriverConfiguration.md)
74113
- [Scaling](./Scaling.md)
75114
- [Upgrading](./Upgrading.md)
115+
- [Using the ArangoDB Kubernetes Operator with Helm](./Helm.md)

0 commit comments

Comments
 (0)