Red Hat OpenShift

This is an OpenShift-specific guide on how to deploy Immuta with the following managed services:

  • Cloud-managed PostgreSQL

  • Cloud-managed Redis

  • Cloud-managed Elasticsearch

Prerequisites

Review the following criteria before proceeding with deploying Immuta.

PostgreSQL

  1. The PostgreSQL instance has been provisioned and is actively running.

  2. The PostgreSQL instance's hostname/FQDN is resolvable from within the Kubernetes cluster.

  3. The PostgreSQL instance is accepting connections.

  4. The Helm chart only supports username/password authentication for PostgreSQL. At this time, other authentication mechanisms are not supported.

Redis

  1. The Redis instance has been provisioned and is actively running.

  2. The Redis instance's hostname/FQDN is resolvable from within the Kubernetes cluster.

  3. The Redis instance is accepting connections.

Elasticsearch

  1. The Elasticsearch instance has been provisioned and is actively running.

  2. The Elasticsearch instance's hostname/FQDN is resolvable from within the Kubernetes cluster.

  3. The Elasticsearch instance is accepting connections.

  4. The user must have the required permissions.

  5. The Helm chart only supports username/password authentication for Elasticsearch. At this time, other authentication mechanisms are not supported.

Authenticate with OCI registry

Copy the snippet below and replace the placeholder text with the credentials provided to you by your customer success manager:

Setup

  1. Create a new OpenShift project named immuta for Immuta.

  2. Get the UID range allocated to the project. Each running container's UID must fall within this range. This value will be referenced later on.

  3. Get the GID range allocated to the project. Each running container's GID must fall within this range. This value will be referenced later on.

  4. Switch to project immuta.

  5. Create a container registry pull secret. Your credentials to authenticate with ocir.immuta.com can be viewed in your user profile at support.immuta.com.

Cloud-managed PostgreSQL

Connecting to the database

There are numerous ways to connect to a PostgreSQL database. This step demonstrates how to connect by creating an ephemeral Kubernetes pod.

  1. Connect to the database as superuser (postgres) by creating an ephemeral container inside the Kubernetes cluster. A shell prompt will not be displayed after executing the oc run command outlined below. Wait 5 seconds, and then proceed by entering a password.

  2. Create an immuta role and database.

  3. Revoke privileges from CURRENT_USER as they're no longer required.

  4. Enable the pgcrypto extension.

  5. Type \q, and then press Enter to exit.

Install Immuta

This section demonstrates how to deploy Immuta using the Immuta Enterprise Helm chart once the prerequisite cloud-managed services are configured.

  1. Create a Helm values file named immuta-values.yaml with the content below. Because the Ingress resource will be managed by an OpenShift route you will create when configuring Ingress and not the Immuta Enterprise Helm chart, ingress is set to false below. TLS comes pre-configured with OpenShift, so tls is also set to false.

  2. Update all placeholder values in the immuta-values.yaml file.

  1. Deploy Immuta.

Validation

  1. Wait for all pods in the namespace to become ready.

  2. Determine the name of the Secure service.

  3. Listen on local port 8080, forwarding TCP traffic to the Secure service's port named http.

Next steps

Last updated

Was this helpful?