VOLTHA depends on having a kafka message bus deployed with a name of cord-kafka
, so deploy that with helm before deploying the voltha chart.
Download the helm charts incubator
repository:
helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com/
Update dependencies within the voltha chart:
helm dep up voltha
There is an etcd-operator
known bug that prevents deploying Voltha correctly the first time. We suggest the following workaround:
First, install Voltha without an etcd
custom resource definition:
helm install -n voltha --set etcd-operator.customResources.createEtcdClusterCRD=false voltha
Then upgrade Voltha, which defaults to using the etcd
custom resource definition:
helm upgrade --set etcd-operator.customResources.createEtcdClusterCRD=true voltha ./voltha
After this first installation, you can use the standard install/uninstall procedure described below.
helm delete --purge voltha
helm install -n voltha voltha
Assuming you have not changed the default ports in the chart, you can use this command to access the VOLTHA CLI:
ssh voltha@<pod-ip> -p 30110
The default VOLTHA password is admin
.
In some cases you want to build custom images to try out development code. The suggested way to do that is:
cd ~/cord/incubator/voltha REPOSITORY=voltha/ TAG=dev VOLTHA_BUILD=docker make build cd ~/cord/automation-tools/developer bash tag_and_push.sh dev 192.168.99.100:30500
This set of commands will build the VOLTHA containers and push them to a local docker registry using a TAG called dev
NOTE: Read more about the
tag_and_push
script here
Once the images are pushed to a docker registry on the POD, you can use a values file like the following one:
# voltha-values.yaml envoyForEtcdImage: 'voltha/voltha-envoy:dev' netconfImage: 'voltha/voltha-netconf:dev' ofagentImage: 'voltha/voltha-ofagent:dev' vcliImage: 'voltha/voltha-cli:dev' vcoreImage: 'voltha/voltha-voltha:dev'
and you can install VOLTHA using:
helm install -n voltha voltha -f voltha-values.yaml