Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maksim-paskal/helm-blue-green
Blue/Green installations with helm only
https://github.com/maksim-paskal/helm-blue-green
bluegreen-deployment helm kubernetes
Last synced: 5 days ago
JSON representation
Blue/Green installations with helm only
- Host: GitHub
- URL: https://github.com/maksim-paskal/helm-blue-green
- Owner: maksim-paskal
- License: apache-2.0
- Created: 2020-04-21T13:04:53.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-11-01T08:57:02.000Z (2 months ago)
- Last Synced: 2024-12-01T16:42:51.389Z (about 1 month ago)
- Topics: bluegreen-deployment, helm, kubernetes
- Language: Go
- Homepage:
- Size: 163 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Blue/Green installations with helm only
This type of installation is used for switch users to new version in one moment (kubernetes RollingUpdate strategy can simultaneously routing requests to new and to old version)## Test Blue/Green
You need kubernetes cluster v1.20+ with helm v3.4.2+ and IngressFor example use host name `http-echo.cluster-test.com`
install application version v1
```
helm upgrade --install helm-blue-green \
--namespace helm-blue-green \
--set host=http-echo.cluster-test.com \
--set version=v1 \
chart/helm-blue-green
```
run command to test
```
while true; do curl -sS http-echo.cluster-test.com ; sleep 0.1; done
```
update application to version v2
```
helm upgrade --install helm-blue-green \
--namespace helm-blue-green \
--set host=http-echo.cluster-test.com \
--set version=v2 \
chart/helm-blue-green
```
update application to version v3
```
helm upgrade --install helm-blue-green \
--namespace helm-blue-green \
--set host=http-echo.cluster-test.com \
--set version=v3 \
chart/helm-blue-green
```## Clearing cluster after test
```
helm delete --purge helm-blue-green
kubectl delete ns helm-blue-green
```## Known issues
* helm rollback doesn't work, version deployments is created by kubernetes job - helm can rollback only objects that was installed only by helm - for rollback - you need install requred version