Getting started with DevOps Plan Helm Chart on IBM OpenShift
This quick start guide shows you how to deploy DevOps Plan on IBM OpenShift.
Before you begin
- Setup your environment by installing OpenShift CLI, Helm CLI and having access to OpenShift Cluster. For more information about how to get started with OpenShift and Helm, see Getting started with OpenShift and Getting Started with Helm. Setup the environment with OpenShift 4.13 and higher, the kubectl CLI, and Helm 3.
- DevOps Plan requires a PostgreSQL
database and a Keycloak to create TeamSpace, Applications, and add users to sign in. The
PostgreSQL database may be running in your cluster or on hardware that resides outside of
your cluster. The values used to connect to the database and Keycloak are required when
installing DevOps Plan. The helm
chart provides the PostgreSQL database and Keycloak by default. You can disable and use
your own PostgreSQL database and Keycloak.Note: If you have already installed DevOps Plan with the PostgreSQL database and Keycloak provided by DevOps Plan Helm chart and you plan to upgrade to the latest release version, then you must set the PostgreSQL database password and Keycloak password during the helm upgrade. Get the password for the PostgreSQL database and Keycloak by running the following command:
export POSTGRES_PASSWORD=$(kubectl get secret --namespace devopsplan ibm-devopsplan-ibm-devopsplan-prod-db-secret -o jsonpath="{.data.tenant-datastore-password}" | base64 -d) export POSTGRES_PASSWORD=$(kubectl get secret --namespace devopsplan ibm-devopsplan-ibm-devopsplan-prod-db-secret -o jsonpath="{.data.tenant-datastore-password}" | base64 -d) ``` Set the password during the upgrade: --set postgresql.existingPassword=$POSTGRESQL_PASSWORD --set keycloak.existingPassword=$KEYCLOAK_PASSWORD ```
About this task
Procedure
-
Download the Image and Helm Chart.
- The DevOps Plan images and helm chart are available at the Entitled Registry and the public Helm Repository.
-
Get a key to the entitled registry.
- Log in the MyIBM Container Software Library with the IBMid and password that are associated with the entitled software.
- In the Entitlement Keys section, select Copy Key to the entitlement key to the clipboard.
- An imagePullSecret must be created to be able to authenticate and pull images from
the Entitled Registry. If the secret is named
ibm-entitlement-key, it will be used as the default pull secret and no value needs to be specified in theglobal.imagePullSecretfield.After this secret has been created, you will use the secret name as the value for the imagePullSecret parameter in thevalues.yamlfile that you provide tohelm install.Note: Secrets are namespace scoped, so they must be created in every namespace that you plan to install DevOps Plan into. The following example is a command to create an imagePullSecret namedibm-entitlement-key:oc create secret docker-registry ibm-entitlement-key \ --namespace [namespace_name] \ --docker-username=cp \ --docker-password=<EntitlementKey> \ --docker-server=cp.icr.io
-
Add the DevOps Plan helm chart
repository to the local client.
$ helm repo add ibm-helm https://raw.githubusercontent.com/IBM/charts/master/repo/ibm-helm/Tip: You can list all of the supported Helm chart versions and Application versions by using:``` $ helm repo update $ helm search repo ibm-helm/ibm-devopsplan ```You can see the list of the
ibm-helm\ibm-devopsplan-prodHelm charts and DevOps Plan release versions. The Helm install installs the latest stable release version, unless you specify--version [CHART VERSION]to the helm install command. -
Install the helm chart with the default parameters into the namespace
devopsplanwith the release nameibm-devopsplan.helm install ibm-devopsplan ibm-helm/ibm-devopsplan-prod \ --namespace devopsplan \ --version [CHART VERSION] \ --set global.imagePullSecret=ibm-entitlement-key \ --set global.domain=[openshift-cluster-dns-name]If you plan to install the latest version of DevOps Plan, you do not need to add
--version [CHART VERSION].- If you plan to use an external PostgreSQL database, see Installing DevOps Plan with external databases and optional email server settings.
- If you plan to use external Keycloak, see Enabling the DevOps Plan Keycloak Single Sign On feature.
- When providing your own cluster, if the default storage class does not support the ReadWriteMany
(RWX) accessMode, or it does not support Storage Class ibmc-file-gold-gid, then an alternative class
must be specified by using the following additional helm
values:
--set persistence.storageClass=[default_storage_class] \ --set persistence.ccm.storageClass=[ReadWriteMany_storage_class] \ --set securityContext.fsGroup=[FSGROUP_NUMBER]
-
Run
helm status devopsplan -n devopsplanto retrieve the username and password for the Opensearch Dashboard, KeyCloak, and PostgreSQL databases. -
Start the Keycloak home page by using
https://ibm-devopsplan-keycloak.[openshift-cluster-dns-name]/and trust the keycloak certificate. -
Start the DevOps Plan home page
in your browser by using
https://ibm-devopsplan.[openshift-cluster-dns-name]. -
To install with Customize Parameters setting:
- Get a copy of the
values.yamlfile from the helm chart so that you can update it with values used by the install.$ helm inspect values ibm-helm/ibm-devopsplan-prod --version [CHART VERSION] > myvalues.yaml - Edit the file
myvalues.yamlto specify the parameter values to use when installing the DevOps Plan instance. - Install the chart into the namespace
devopsplanwith the release nameibm-devopsplanand use the values from themyvalues.yamlfile.helm install ibm-devopsplan ibm-helm/ibm-devopsplan-prod \ --version [CHART VERSION] \ --namespace devopsplan \ --values myvalues.yamlYou can list all releases by using
helm list.If you plan to install the latest version of DevOps Plan, you do not need to add
--version [CHART VERSION].
- Get a copy of the
-
Enable License Metrics.
By default, the
global.licenseMetricparameter is set to false. You must set it to to true during the helm install/upgrade.--set global.licenseMetric=true -
You can uninstall and delete the chart by using the helm delete command:
helm delete ibm-devopsplan \ --namespace devopsplan