Skip to content

Commit

Permalink
refact(upgrade): update helm upgrade steps (openebs#2484)
Browse files Browse the repository at this point in the history
Signed-off-by: prateekpandey14 <prateekpandey14@gmail.com>
prateekpandey14 authored and vishnuitta committed Apr 3, 2019
1 parent 16cc827 commit ad58ef0
Showing 19 changed files with 36 additions and 30 deletions.
32 changes: 17 additions & 15 deletions k8s/upgrades/0.7.0-0.8.0/README.md
Original file line number Diff line number Diff line change
@@ -2,11 +2,11 @@

## Overview

This document describes the steps for upgrading OpenEBS from 0.7.0 to 0.8.x
This document describes the steps for upgrading OpenEBS from 0.7.0 to 0.8.x

The upgrade of OpenEBS is a two step process:
- *Step 1* - Upgrade the OpenEBS Operator
- *Step 2* - Upgrade the OpenEBS Volumes from previous versions (0.7.0)
The upgrade of OpenEBS is a two step process:
- *Step 1* - Upgrade the OpenEBS Operator
- *Step 2* - Upgrade the OpenEBS Volumes from previous versions (0.7.0)

### Terminology
- *OpenEBS Operator : Refers to maya-apiserver & openebs-provisioner along w/ respective services, service a/c, roles, rolebindings*
@@ -39,48 +39,50 @@ The upgrade steps vary depending on the way OpenEBS was installed, select one of

```
# Starting with OpenEBS 0.6, all the components are installed in namespace `openebs`
# as opposed to `default` namespace in earlier releases.
# If Upgrading from 0.5.x, delete older operator.
# as opposed to `default` namespace in earlier releases.
# If Upgrading from 0.5.x, delete older operator.
#kubectl delete -f https://raw.githubusercontent.com/openebs/openebs/v0.5/k8s/openebs-operator.yaml
# Wait for objects to be delete, you can check using `kubectl get deploy`
#Upgrade to 0.8 OpenEBS Operator
kubectl apply -f https://openebs.github.io/charts/openebs-operator-0.8.0.yaml
```

#### Install/Upgrade using helm chart (using stable/openebs, openebs-charts repo, etc.,)
#### Install/Upgrade using helm chart (using stable/openebs, openebs-charts repo, etc.,)

**The sample steps below will work if you have installed openebs with default values provided by stable/openebs helm chart.**

- Run `helm repo update` to update local cache with latest package
- Run `helm ls` to get the release name of openebs.
- Upgrade using `helm upgrade --version 0.8.1 <chart-name-from-helm-ls> stable/openebs`. Example: ` helm upgrade --version 0.8.1 excited-bunny stable/openebs`
Before upgrading using helm, please review the default values available with latest stable/openebs chart. (https://raw.githubusercontent.com/helm/charts/master/stable/openebs/values.yaml).

- If the default values seem appropriate, you can use the `helm upgrade --reset-values <release name> stable/openebs`.
- If not, customize the values into your copy (say custom-values.yaml), by copying the content from above default yamls and edit the values to suite your environment. You can upgrade using your custom values using:
`helm upgrade <release name> stable/openebs -f custom-values.yaml`

##### Note: 0.8.1 is the helm chart version that corresponds to OpenEBS 0.8.0 version. All available openebs helm charts can be found here https://hub.kubeapps.com/charts/stable/openebs.

#### Using customized operator YAML or helm chart.
As a first step, you must update your custom helm chart or YAML with 0.8 release tags and changes made in the values/templates.
As a first step, you must update your custom helm chart or YAML with 0.8 release tags and changes made in the values/templates.

You can use the following as references to know about the changes in 0.8:
You can use the following as references to know about the changes in 0.8:
- openebs-charts [PR#2314](https://github.com/openebs/openebs/pull/2314) as reference.

After updating the YAML or helm chart or helm chart values, you can use the above procedures to upgrade the OpenEBS Operator

## Step 2: Upgrade the OpenEBS Pools and Volumes

Even after the OpenEBS Operator has been upgraded to 0.8, the cStor Storage Pools and volumes (both jiva and cStor) will continue to work with older versions. Use the following steps to upgrade the cStor Pools and Volumes.
Even after the OpenEBS Operator has been upgraded to 0.8, the cStor Storage Pools and volumes (both jiva and cStor) will continue to work with older versions. Use the following steps to upgrade the cStor Pools and Volumes.

*Note: Upgrade functionality is still under active development. It is highly recommended to schedule a downtime for the application using the OpenEBS PV while performing this upgrade. Also, make sure you have taken a backup of the data before starting the below upgrade procedure.*

Limitations:
- this is a preliminary script only intended for using on volumes where data has been backed-up.
- please have the following link handy in case the volume gets into read-only during upgrade
- please have the following link handy in case the volume gets into read-only during upgrade
https://docs.openebs.io/docs/next/readonlyvolumes.html
- automatic rollback option is not provided. To rollback, you need to update the controller, exporter and replica pod images to the previous version
- in the process of running the below steps, if you run into issues, you can always reach us on slack


### Upgrade the Jiva based OpenEBS PV
### Upgrade the Jiva based OpenEBS PV

Extract the PV name using `kubectl get pv`

26 changes: 14 additions & 12 deletions k8s/upgrades/0.8.0-0.8.1/README.md
Original file line number Diff line number Diff line change
@@ -2,12 +2,12 @@

## Overview

This document describes the steps for upgrading OpenEBS from 0.8.0 to 0.8.1
This document describes the steps for upgrading OpenEBS from 0.8.0 to 0.8.1

The upgrade of OpenEBS is a three step process:
The upgrade of OpenEBS is a three step process:
- *Step 1* - Checking the openebs version labels
- *Step 2* - Upgrade the OpenEBS Operator
- *Step 3* - Upgrade the OpenEBS Volumes from previous versions (0.8.0)
- *Step 2* - Upgrade the OpenEBS Operator
- *Step 3* - Upgrade the OpenEBS Volumes from previous versions (0.8.0)

#### Note: It is mandatory to make sure to that all volumes are running at version 0.8.0 before the upgrade.

@@ -56,18 +56,20 @@ kubectl patch ds openebs-ndm -n openebs --patch='{"spec":{"updateStrategy":{"typ
kubectl apply -f https://openebs.github.io/charts/openebs-operator-0.8.1.yaml
```

#### Install/Upgrade using helm chart (using stable/openebs, openebs-charts repo, etc.,)
#### Install/Upgrade using helm chart (using stable/openebs, openebs-charts repo, etc.,)

**The sample steps below will work if you have installed openebs with default values provided by stable/openebs helm chart.**

- Run `helm repo update` to update local cache with latest package
- Run `helm ls` to get the release name of openebs.
- Upgrade using `helm upgrade openebs stable/openebs`
Before upgrading using helm, please review the default values available with latest stable/openebs chart. (https://raw.githubusercontent.com/helm/charts/master/stable/openebs/values.yaml).

- If the default values seem appropriate, you can use the `helm upgrade --reset-values <release name> stable/openebs`.
- If not, customize the values into your copy (say custom-values.yaml), by copying the content from above default yamls and edit the values to suite your environment. You can upgrade using your custom values using:
`helm upgrade <release name> stable/openebs -f custom-values.yaml`

#### Using customized operator YAML or helm chart.
As a first step, you must update your custom helm chart or YAML with 0.8.1 release tags and changes made in the values/templates.
As a first step, you must update your custom helm chart or YAML with 0.8.1 release tags and changes made in the values/templates.

You can use the following as references to know about the changes in 0.8.1:
You can use the following as references to know about the changes in 0.8.1:
- openebs-charts [PR#2352](https://github.com/openebs/openebs/pull/2352) as reference.

After updating the YAML or helm chart or helm chart values, you can use the above procedures to upgrade the OpenEBS Operator
@@ -80,13 +82,13 @@ Even after the OpenEBS Operator has been upgraded to 0.8.1, the cStor Storage Po

Limitations:
- this is a preliminary script only intended for using on volumes where data has been backed-up.
- please have the following link handy in case the volume gets into read-only during upgrade
- please have the following link handy in case the volume gets into read-only during upgrade
https://docs.openebs.io/docs/next/readonlyvolumes.html
- automatic rollback option is not provided. To rollback, you need to update the controller, exporter and replica pod images to the previous version
- in the process of running the below steps, if you run into issues, you can always reach us on slack


### Upgrade the Jiva based OpenEBS PV
### Upgrade the Jiva based OpenEBS PV

Extract the PV name using `kubectl get pv`

Original file line number Diff line number Diff line change
@@ -57,9 +57,11 @@ kubectl apply -f https://openebs.github.io/charts/openebs-operator-0.8.2.yaml

**The sample steps below will work if you have installed openebs with default values provided by stable/openebs helm chart.**

- Run `helm repo update` to update local cache with latest package
- Run `helm ls` to get the release name of openebs.
- Upgrade using `helm upgrade openebs stable/openebs`
Before upgrading using helm, please review the default values available with latest stable/openebs chart. (https://raw.githubusercontent.com/helm/charts/master/stable/openebs/values.yaml).

- If the default values seem appropriate, you can use the `helm upgrade --reset-values <release name> stable/openebs`.
- If not, customize the values into your copy (say custom-values.yaml), by copying the content from above default yamls and edit the values to suite your environment. You can upgrade using your custom values using:
`helm upgrade <release name> stable/openebs -f custom-values.yaml`

#### Using customized operator YAML or helm chart.
As a first step, you must update your custom helm chart or YAML with 0.8.2 release tags and changes made in the values/templates.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit ad58ef0

Please sign in to comment.