When you install Volt using the native OpenShift web console user interface, OLM takes care of starting and stopping the Volt Operator on the Kubernetes cluster. This makes the operator available to you, but does not configure or start any VoltDB databases. You still must use Helm to do that.
First, you need to modify the permissions for the database pods that Helm will create so they can use a fixed user ID. To do this, you set an administrative policy for the service account associated with the database. The service account name includes the release name you will use in Helm. So, for example, if your database release is called mydb in the mycorp namespace, the service account would be mydb-voltdb-cluster and the resulting oc adm policy command would be the following:
$ oc adm policy add-scc-to-user nonroot-v2 \ -z mydb-voltdb-cluster \ --namespace mycorp
Since the operator is already running, you need to tell Helm explicitly not to run the operator.
You do this the same way you would if you were running multiple databases in the same namespace (as described in Section 3.5, “Starting More than One Cluster Within a Namespace” — using the operator.enabled=false and
cluster.enabled=true properties. For example:
$ helm install mydb voltdb/voltdb \ --set global.voltdbVersion=16.0.0 \ --values config.yaml \ --set-file cluster.config.licenseXMLFile=license.xml \ --namespace mycorp \ --skip-crds \ --set operator.enabled=false \ --set cluster.enabled=true
Be sure to include the operator.enabled=false and cluster.enabled=true
properties whenever upgrading the release. (You may find it easier to put them in a yaml file and specify them with the
--values qualifier if you intend to modify the release frequently.)
On the other hand, you do not need to specify these properties when removing the cluster:
$ helm uninstall mydb --namespace mycorp
Documentation