From 1ccddcec6d7c23a14add2c8467b5d5b6bb120ed8 Mon Sep 17 00:00:00 2001 From: Sheng Yang Date: Fri, 11 Jan 2019 18:00:25 -0800 Subject: [PATCH 1/6] Longhorn v0.3.3-rc1 release --- README.md | 4 ++-- deploy/longhorn.yaml | 14 +++++++------- {deploy => uninstall}/uninstall.yaml | 0 3 files changed, 9 insertions(+), 9 deletions(-) rename {deploy => uninstall}/uninstall.yaml (100%) diff --git a/README.md b/README.md index 4e9738a..b068f02 100644 --- a/README.md +++ b/README.md @@ -265,13 +265,13 @@ See [here](./docs/troubleshooting.md) for the troubleshooting guide. 2. Create the uninstallation job to cleanly purge CRDs from the system and wait for success: ``` - kubectl create -f https://raw.githubusercontent.com/rancher/longhorn/master/deploy/uninstall.yaml + kubectl create -f https://raw.githubusercontent.com/rancher/longhorn/master/uninstall/uninstall.yaml kubectl -n longhorn-system get job/longhorn-uninstall -w ``` Example output: ``` -$ kubectl create -f https://raw.githubusercontent.com/rancher/longhorn/master/deploy/uninstall.yaml +$ kubectl create -f https://raw.githubusercontent.com/rancher/longhorn/master/uninstall/uninstall.yaml job.batch/longhorn-uninstall created $ kubectl -n longhorn-system get job/longhorn-uninstall -w NAME DESIRED SUCCESSFUL AGE diff --git a/deploy/longhorn.yaml b/deploy/longhorn.yaml index 05022f2..5435470 100644 --- a/deploy/longhorn.yaml +++ b/deploy/longhorn.yaml @@ -178,7 +178,7 @@ spec: spec: containers: - name: longhorn-manager - image: rancher/longhorn-manager:v0.3.2 + image: rancher/longhorn-manager:v0.3.3-rc1 imagePullPolicy: Always securityContext: privileged: true @@ -187,9 +187,9 @@ spec: - -d - daemon - --engine-image - - rancher/longhorn-engine:v0.3.0 + - rancher/longhorn-engine:v0.3.3-rc1 - --manager-image - - rancher/longhorn-manager:v0.3.2 + - rancher/longhorn-manager:v0.3.3-rc1 - --service-account - longhorn-service-account ports: @@ -266,7 +266,7 @@ spec: spec: containers: - name: longhorn-ui - image: rancher/longhorn-ui:v0.3.2 + image: rancher/longhorn-ui:v0.3.3-rc1 ports: - containerPort: 8000 env: @@ -305,18 +305,18 @@ spec: spec: initContainers: - name: wait-longhorn-manager - image: rancher/longhorn-manager:v0.3.2 + image: rancher/longhorn-manager:v0.3.3-rc1 command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" http://longhorn-backend:9500/v1) != "200" ]; do echo waiting; sleep 2; done'] containers: - name: longhorn-driver-deployer - image: rancher/longhorn-manager:v0.3.2 + image: rancher/longhorn-manager:v0.3.3-rc1 imagePullPolicy: Always command: - longhorn-manager - -d - deploy-driver - --manager-image - - rancher/longhorn-manager:v0.3.2 + - rancher/longhorn-manager:v0.3.3-rc1 - --manager-url - http://longhorn-backend:9500/v1 # manually choose "flexvolume" or "csi" diff --git a/deploy/uninstall.yaml b/uninstall/uninstall.yaml similarity index 100% rename from deploy/uninstall.yaml rename to uninstall/uninstall.yaml From 17ca2f2acbea3f7663e85d484aadd3e5a1a431c9 Mon Sep 17 00:00:00 2001 From: Sheng Yang Date: Tue, 15 Jan 2019 10:20:09 -0800 Subject: [PATCH 2/6] Update README.md --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index b068f02..701f89f 100644 --- a/README.md +++ b/README.md @@ -245,6 +245,14 @@ Longhorn supports recurring snapshot and backup for volumes. User only need to s User can find the setting for the recurring snapshot and backup in the `Volume Detail` page. +### Changing replica count of the volumes + +The default replica count can be changed in the setting. + +Also, when a volume is attached, the user can change the replica count for the volume in the UI. + +Longhorn will always try to maintain at least given number of healthy replicas for each volume. If the current healthy replica count is less than specified replica count, Longhorn will start rebuilding new replicas. If the current healthy replica count is more than specified replica count, Longhorn will do nothing. In the later situation, if user delete one or more healthy replicas, or there are healthy replicas failed, as long as the total healthy replica count doesn't dip below the specified replica count, Longhorn won't start rebuilding new replicas. + ## Other features ### [Multiple disks](./docs/multidisk.md) From fb540f2f867a147cc247b97a14431c27b0ff075b Mon Sep 17 00:00:00 2001 From: Sheng Yang Date: Tue, 15 Jan 2019 10:21:05 -0800 Subject: [PATCH 3/6] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 701f89f..eba7fb6 100644 --- a/README.md +++ b/README.md @@ -262,7 +262,7 @@ Longhorn will always try to maintain at least given number of healthy replicas f ## Usage guide ### [Restoring Stateful Set volumes](./docs/restore_statefulset.md) ### [Google Kubernetes Engine](./docs/gke.md) -### [Upgrade from v0.1/v0.2](./docs/upgrade.md) +### [Upgrade](./docs/upgrade.md) ## Troubleshooting See [here](./docs/troubleshooting.md) for the troubleshooting guide. @@ -295,7 +295,7 @@ longhorn-uninstall 1 1 45s ## License -Copyright (c) 2014-2018 [Rancher Labs, Inc.](http://rancher.com/) +Copyright (c) 2014-2019 [Rancher Labs, Inc.](http://rancher.com/) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at From f61d6392eb95ac54cbe72df0361cd01c47a56c19 Mon Sep 17 00:00:00 2001 From: Sheng Yang Date: Tue, 15 Jan 2019 10:26:56 -0800 Subject: [PATCH 4/6] Update upgrade.md --- docs/upgrade.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/docs/upgrade.md b/docs/upgrade.md index 44d4c10..7655d87 100644 --- a/docs/upgrade.md +++ b/docs/upgrade.md @@ -240,7 +240,7 @@ approximately the same for all workloads. **ALWAYS MAKE BACKUPS BEFORE UPGRADE THE ENGINE IMAGES.** ### Offline upgrade -If live upgrade is not available (e.g. from v0.1/v0.2 to v0.3): +If live upgrade is not available (e.g. from v0.1/v0.2 to v0.3), or the volume stuck in degraded state: 1. Follow [the detach procedure for relevant workloads](upgrade.md#detach-volumes). 2. Select all the volumes using batch selection. Click batch operation button `Upgrade Engine`, choose the engine image available in the list. It's @@ -248,12 +248,15 @@ the default engine shipped with the manager for this release. 3. Resume all workloads by reversing the [detach volumes procedure](upgrade.md#detach-volumes). Any volume not part of a Kubernetes workload must be attached from Longhorn UI. -### Live upgrade (expermential feature since v0.3.3) -1. Select the volume you want to upgrade. -2. Click `Upgrade Engine` in the drop down. -3. Select the engine image you want to upgrade to. +### Live upgrade (beta feature since v0.3.3) +Live upgrade should only be done with healthy volumes. +2. Select the volume you want to upgrade. +3. Click `Upgrade Engine` in the drop down. +4. Select the engine image you want to upgrade to. 1. Normally it's the only engine image in the list, since the UI exclude the current image from the list. -4. Click OK. +5. Click OK. + +During the live upgrade, the user will see double number of the replicas temporarily. After upgrade complete, the user should see the same number of the replicas as before, and the `Engine Image` field of the volume should be updated. ### Clean up the old image After you've done upgrade for all the images, select `Settings/Engine Image` from Longhorn UI. Now you should able to remove the non-default image. From d878150232c0e611c51a8422398a6f5f1e40e837 Mon Sep 17 00:00:00 2001 From: Sheng Yang Date: Tue, 15 Jan 2019 11:52:51 -0800 Subject: [PATCH 5/6] Sync with Longhorn Manager commit 85cdab997c1537dc6926f8d132f20bfc3cc33bc1 Author: Sheng Yang Date: Tue Jan 15 11:45:26 2019 -0800 Longhorn v0.3.3 release --- deploy/longhorn.yaml | 14 +++++++------- uninstall/uninstall.yaml | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/deploy/longhorn.yaml b/deploy/longhorn.yaml index 5435470..db2bc6c 100644 --- a/deploy/longhorn.yaml +++ b/deploy/longhorn.yaml @@ -178,7 +178,7 @@ spec: spec: containers: - name: longhorn-manager - image: rancher/longhorn-manager:v0.3.3-rc1 + image: rancher/longhorn-manager:v0.3.3 imagePullPolicy: Always securityContext: privileged: true @@ -187,9 +187,9 @@ spec: - -d - daemon - --engine-image - - rancher/longhorn-engine:v0.3.3-rc1 + - rancher/longhorn-engine:v0.3.3 - --manager-image - - rancher/longhorn-manager:v0.3.3-rc1 + - rancher/longhorn-manager:v0.3.3 - --service-account - longhorn-service-account ports: @@ -266,7 +266,7 @@ spec: spec: containers: - name: longhorn-ui - image: rancher/longhorn-ui:v0.3.3-rc1 + image: rancher/longhorn-ui:v0.3.3 ports: - containerPort: 8000 env: @@ -305,18 +305,18 @@ spec: spec: initContainers: - name: wait-longhorn-manager - image: rancher/longhorn-manager:v0.3.3-rc1 + image: rancher/longhorn-manager:v0.3.3 command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" http://longhorn-backend:9500/v1) != "200" ]; do echo waiting; sleep 2; done'] containers: - name: longhorn-driver-deployer - image: rancher/longhorn-manager:v0.3.3-rc1 + image: rancher/longhorn-manager:v0.3.3 imagePullPolicy: Always command: - longhorn-manager - -d - deploy-driver - --manager-image - - rancher/longhorn-manager:v0.3.3-rc1 + - rancher/longhorn-manager:v0.3.3 - --manager-url - http://longhorn-backend:9500/v1 # manually choose "flexvolume" or "csi" diff --git a/uninstall/uninstall.yaml b/uninstall/uninstall.yaml index befbf94..6be2aaf 100644 --- a/uninstall/uninstall.yaml +++ b/uninstall/uninstall.yaml @@ -12,7 +12,7 @@ spec: spec: containers: - name: longhorn-uninstall - image: rancher/longhorn-manager:v0.3.2 + image: rancher/longhorn-manager:v0.3.3 imagePullPolicy: Always command: - longhorn-manager From c78236329c4b9aee02bfe1a01cac95f5a2750aca Mon Sep 17 00:00:00 2001 From: Sheng Yang Date: Tue, 15 Jan 2019 12:21:41 -0800 Subject: [PATCH 6/6] Longhorn v0.3.3 release Engine image: rancher/longhorn-engine:v0.3.3 Manager image: rancher/longhorn-manager:v0.3.3 UI Image: rancher/longhorn-ui:v0.3.3 New features: 1. #299 Support set the default number of replicas (replica count) and dynamic adjust replica count of an attached volume. 2. Live upgrade for Engine image became beta. Upgrade from Engine v0.3.0 to v0.3.3 can be done without volume downtime (except if you need the fix for #324 2TB volume size limitation) Notice Longhorn Engine has been updated to v0.3.3. Please follow the steps [here](https://github.com/rancher/longhorn/blob/master/docs/upgrade.md#upgrade-engine-images) to upgrade engines. See [here](https://github.com/rancher/longhorn/milestone/6?closed=1) for the list of bugs fixed. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index eba7fb6..adc95cb 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ You can read more details of Longhorn and its design [here](http://rancher.com/m Longhorn is a work in progress. It's an alpha quality software at the moment. We appreciate your comments as we continue to work on it. -The latest release of Longhorn is **v0.3.2**, shipped with Longhorn Engine **v0.3.0** as the default engine image. +The latest release of Longhorn is **v0.3.3**, shipped with Longhorn Engine **v0.3.3** as the default engine image. ## Source code Longhorn is 100% open source software. Project source code is spread across a number of repos: