Skip to content

Commit f65cb08

Browse files
committed
Improve installation and upgrade instructions.
1 parent 8d8dd5a commit f65cb08

File tree

1 file changed

+54
-7
lines changed

1 file changed

+54
-7
lines changed

README.md

Lines changed: 54 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,32 @@ it is intended to be.
3737
| Docker for Mac Edge | 1.10 | >= 3.3.13 | Runs | Not intended | |
3838
| Scaleway Kubernetes | 1.10 | >= 3.3.13 | ? | No | |
3939

40-
## Installation of latest release using Helm
40+
## WARNING
4141

4242
**WARNING**: There is a problem with rolling upgrades in version 0.3.8.
4343
**DO NOT USE 0.3.8 FOR ROLLING UPGRADES.** If you are still using 0.3.8,
4444
then upgrade to 0.3.9 of the operator first before running any rolling
4545
upgrade.
4646

47+
## Installation of latest release using Kubectl
48+
49+
```bash
50+
kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/0.3.9/manifests/arango-crd.yaml
51+
kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/0.3.9/manifests/arango-deployment.yaml
52+
# To use `ArangoLocalStorage`, also run
53+
kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/0.3.9/manifests/arango-storage.yaml
54+
# To use `ArangoDeploymentReplication`, also run
55+
kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/0.3.9/manifests/arango-deployment-replication.yaml
56+
```
57+
58+
This procedure can also be used for upgrades and will not harm any
59+
running ArangoDB deployments.
60+
61+
## Installation of latest release using Helm
62+
63+
Only use this procedure for a new install of the operator. See below for
64+
upgrades.
65+
4766
```bash
4867
# The following will install the custom resources required by the operators.
4968
helm install https://github.com/arangodb/kube-arangodb/releases/download/0.3.9/kube-arangodb-crd.tgz
@@ -54,15 +73,43 @@ helm install https://github.com/arangodb/kube-arangodb/releases/download/0.3.9/k
5473
helm install https://github.com/arangodb/kube-arangodb/releases/download/0.3.9/kube-arangodb-storage.tgz
5574
```
5675

57-
## Installation of latest release using Kubectl
76+
## Upgrading the operator using Helm
77+
78+
To upgrade the operator to the latest version with Helm, you have to
79+
delete the previous deployment and then install the latest. **HOWEVER**:
80+
You *must not delete* the deployment of the custom resource definitions
81+
(CRDs), or your ArangoDB deployments will be deleted!
82+
83+
Therefore, you have to use `helm list` to find the deployments for the
84+
operator (`kube-arangodb`) and of the storage operator
85+
(`kube-arangodb-storage`) and use `helm delete` to delete them using the
86+
automatically generated deployment names. Here is an example of a `helm
87+
list` output:
88+
89+
```
90+
% helm list
91+
NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
92+
intent-camel 1 Mon Apr 8 11:37:52 2019 DEPLOYED kube-arangodb-storage-0.3.10-preview default
93+
steely-mule 1 Sun Mar 31 21:11:07 2019 DEPLOYED kube-arangodb-crd-0.3.9 default
94+
vetoed-ladybird 1 Mon Apr 8 11:36:58 2019 DEPLOYED kube-arangodb-0.3.10-preview default
95+
```
96+
97+
So here, you would have to do
5898

5999
```bash
60-
kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/0.3.9/manifests/arango-crd.yaml
61-
kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/0.3.9/manifests/arango-deployment.yaml
100+
helm delete intent-camel
101+
helm delete vetoed-ladybird
102+
```
103+
104+
but **not delete `steely-mule`**. Then you could install the new version
105+
with `helm install` as normal:
106+
107+
```bash
108+
# The following will install the operator for `ArangoDeployment` &
109+
# `ArangoDeploymentReplication` resources.
110+
helm install https://github.com/arangodb/kube-arangodb/releases/download/0.3.9/kube-arangodb.tgz
62111
# To use `ArangoLocalStorage`, also run
63-
kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/0.3.9/manifests/arango-storage.yaml
64-
# To use `ArangoDeploymentReplication`, also run
65-
kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/0.3.9/manifests/arango-deployment-replication.yaml
112+
helm install https://github.com/arangodb/kube-arangodb/releases/download/0.3.9/kube-arangodb-storage.tgz
66113
```
67114

68115
## Building

0 commit comments

Comments
 (0)