Setup helm3 for oom
Please use for recent updates:
https://docs.onap.org/projects/onap-oom/en/latest/oom_user_guide.html
With H-Release helm3 is mandatory for oom based deployment.
This how to describes basic steps to run successfully
'make all; make onap'
helm deploy ...
Step-by-step guide
Install helm3
Install push plugin
setup local chartmuseum
Install postgres
Install ONAP helm plugins
Install helm3
https://helm.sh/docs/intro/install/
export HELM_VERSION=v3.3.4 # Guilin
export HELM_VERSION=v3.5.2 # Honolulu
wget https://get.helm.sh/helm-$HELM_VERSION-linux-amd64.tar.gz
tar -zxvf helm-$HELM_VERSION-linux-amd64.tar.gz
sudo mv linux-amd64/helm /usr/local/bin/helm-$HELM_VERSION
sudo rm /usr/local/bin/helm
sudo ln -s /usr/local/bin/helm-$HELM_VERSION /usr/local/bin/helm
helm version
Install push plugin
https://github.com/chartmuseum/helm-push
helm plugin install https://github.com/chartmuseum/helm-push.git
Setup local chartmuseum
https://github.com/helm/chartmuseum
Example for installer:
curl https://raw.githubusercontent.com/helm/chartmuseum/main/scripts/get-chartmuseum | bash
mkdir ~/chartstorage
chartmuseum --debug --port=8080 \
--storage="local" \
--storage-local-rootdir="~/chartstorage" &
helm repo add local http://localhost:8080
Example docker-compose:
version: '3.1'
services:
chartmuseum:
image: docker.io/bitnami/chartmuseum:0-debian-10
ports:
- '8080:8080'
volumes:
- chartmuseum_data:/bitnami/data
volumes:
chartmuseum_data:
driver_opts:
type: none
device: /var/lib/docker/chartmuseum
o: bind
sudo mkdir /var/lib/docker/chartmuseum
sudo docker-compose up -d
helm repo add local http://localhost:8080
helm repo list
Install postgress
example for docker-compose:
docker-compose.yaml
version: '3.1'
services:
db:
image: postgres
restart: always
ports:
- "5432:5432"
env_file:
- database.env # configure postgres
volumes:
- database-data:/var/lib/postgresql/data/ # persist data even if container shuts down
volumes:
database-data:
driver_opts:
type: none
device: /var/lib/docker/postgres
o: bind
database.env
database.env
# database.env
POSTGRES_USER=helm
POSTGRES_PASSWORD=changeme
POSTGRES_DB=helm
sudo mkdir /var/lib/docker/postgres
sudo docker-compose up -d
export HELM_DRIVER=sql
export HELM_DRIVER_SQL_CONNECTION_STRING=postgresql://helm:changeme@localhost:5432/helm?sslmode=disable
Install ONAP Helm plugins
helm plugins
cd <oom_path>/oom
helm plugin install ./kubernetes/helm/plugins/undeploy
helm plugin install ./kubernetes/helm/plugins/deploy
helm plugin list
NAME VERSION DESCRIPTION
deploy 1.0.0 install (upgrade if release exists) parent charty and all subcharts as separate but related releases
push 0.9.0 Push chart package to ChartMuseum
undeploy 1.0.0 delete parent chart and subcharts that were deployed as separate releases
Deploy ONAP
as usual.
namepace 'onap' must exist, otherwise helm ls will show up all deployments as 'failed'