-
Notifications
You must be signed in to change notification settings - Fork 73
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #238 from arangodb/feature/helm-chart
Adding helm charts for deploying the operators
- Loading branch information
Showing
16 changed files
with
597 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,91 @@ | ||
# Using the ArangoDB Kubernetes Operator with Helm | ||
|
||
[`Helm`](https://www.helm.sh/) 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`. | ||
|
||
## Charts | ||
|
||
The ArangoDB Kubernetes Operator is contained in two `helm` charts: | ||
|
||
- `kube-arangodb` which contains the operator for the `ArangoDeployment` | ||
and `ArangoDeploymentReplication` resource types. | ||
- `kube-arangodb-storage` which contains the operator for the `ArangoLocalStorage` | ||
resource type. | ||
|
||
The `kube-arangodb-storage` only has to be installed if your Kubernetes cluster | ||
does not already provide `StorageClasses` that use locally attached SSDs. | ||
|
||
## Configurable values for ArangoDB Kubernetes Operator | ||
|
||
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. | ||
|
||
### Values applicable to both charts | ||
|
||
| Key | Type | Description | ||
|-------------------|--------|-----| | ||
| Image | string | Override the docker image used by the operators | ||
| 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. | ||
| RBAC.Create | bool | Set to `true` (default) to create roles & role bindings. | ||
|
||
### Values applicable to the `kube-arangodb` chart | ||
|
||
| Key | Type | Description | ||
|-------------------|--------|-----| | ||
| Deployment.Create | bool | Set to `true` (default) to deploy the `ArangoDeployment` operator | ||
| Deployment.User.ServiceAccountName | string | Name of the `ServiceAccount` that is the subject of the `RoleBinding` of users of the `ArangoDeployment` operator | ||
| Deployment.Operator.ServiceAccountName | string | Name of the `ServiceAccount` used to run the `ArangoDeployment` operator | ||
| Deployment.Operator.ServiceType | string | Type of `Service` created for the dashboard of the `ArangoDeployment` operator | ||
| Deployment.AllowChaos | bool | Set to `true` to allow the introduction of chaos. **Only use for testing, never for production!** Defaults to `false`. | ||
| DeploymentReplication.Create | bool | Set to `true` (default) to deploy the `ArangoDeploymentReplication` operator | ||
| DeploymentReplication.User.ServiceAccountName | string | Name of the `ServiceAccount` that is the subject of the `RoleBinding` of users of the `ArangoDeploymentReplication` operator | ||
| DeploymentReplication.Operator.ServiceAccountName | string | Name of the `ServiceAccount` used to run the `ArangoDeploymentReplication` operator | ||
| DeploymentReplication.Operator.ServiceType | string | Type of `Service` created for the dashboard of the `ArangoDeploymentReplication` operator | ||
|
||
### Values applicable to the `kube-arangodb-storage` chart | ||
|
||
| Key | Type | Description | ||
|-------------------|--------|-----| | ||
| Storage.User.ServiceAccountName | string | Name of the `ServiceAccount` that is the subject of the `RoleBinding` of users of the `ArangoLocalStorage` operator | ||
| Storage.Operator.ServiceAccountName | string | Name of the `ServiceAccount` used to run the `ArangoLocalStorage` operator | ||
| Storage.Operator.ServiceType | string | Type of `Service` created for the dashboard of the `ArangoLocalStorage` operator | ||
|
||
## Alternate namespaces | ||
|
||
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. | ||
|
||
```bash | ||
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: | ||
|
||
```bash | ||
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 problems | ||
|
||
### Error: no available release name found | ||
|
||
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](https://stackoverflow.com/questions/43499971/helm-error-no-available-release-name-found). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.