Skip to main content
Version: 1.17 (current)

Install OpenEverest on Openshift

This section explains how to install OpenEverest using Openshift.

Install OpenEverest​

Here are the steps to install OpenEverest with OpenShift compatibility enabled:

  1. Run the following command:

    helm install everest openeverest/openeverest \
    --namespace everest-system \
    --create-namespace \
    --set compatibility.openshift=true \
    --set dbNamespace.compatibility.openshift=true \
    --set olm.install=false \
    --set kube-state-metrics.securityContext.enabled=false \
    --set kube-state-metrics.rbac.create=false
  2. (Optional) Update RBAC for kube-state-metrics:

    If you're running a chart version prior to 1.5.0, it's essential to manually create a ClusterRoleBinding for kube-state-metrics to ensure proper functionality. Use the following YAML:

    cat <<EOF | kubectl apply -f -
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
    name: ksm-openshift-cluster-role-binding
    roleRef:
    kind: "ClusterRole"
    apiGroup: "rbac.authorization.k8s.io"
    name: kube-state-metrics
    subjects:
    - kind: "ServiceAccount"
    name: kube-state-metrics
    namespace: everest-monitoring
    EOF
    note

    Starting from version 1.5.0 and onwards, a ClusterRoleBinding is created automatically when you enable the setting compatibility.openshift=true.

  3. (Optional) Deploy additional database namespaces:

    If you need to add database namespaces, run the following command with OpenShift compatibility enabled:

    helm install everest \
    openeverest/everest-db-namespace \
    --create-namespace \
    --namespace everest \
    --set compatibility.openshift=true

    For detailed instructions, refer to the installation section and adjust the installation parameters according to the values specified here.

  4. Once the installation is complete, retrieve the admin password.

    kubectl get secret everest-accounts -n everest-system -o jsonpath='{.data.users\.yaml}' | base64 --decode | yq '.admin.passwordHash'

    The default username for logging into the OpenEverest UI is admin. You can set a different default admin password by using the server.initialAdminPassword parameter during installation.

    The default admin password is stored in plain text. It is highly recommended to update the password using everestctl to ensure that the passwords are hashed.

    To access detailed information on user management, see the manage users in OpenEverest section.

  5. Access the OpenEverest UI/API using one of the following options for exposing it, as OpenEverest is not exposed with an external IP by default:

    1. Use the following command to change the OpenEverest service type to LoadBalancer:

      helm install everest openeverest/openeverest \
      --set service.type=LoadBalancer
    2. Retrieve the external IP address for the everest service. This is the address where you can then launch OpenEverest at the end of the installation procedure. In this example, the external IP address used is http://34.175.201.246.

      kubectl get svc/everest -n everest-system
      Expected output
      NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
      everest LoadBalancer 10.43.172.194 34.175.201.246 8080:8080/TCP 10s

Next steps​

Provision a database →