Skip to main content
This guide walks you through setting up OpenSearch in Kubernetes for SuprSend’s self‑hosted deployments. OpenSearch provides the backbone for search, analytics, and observability features in SuprSend. SuprSend recommends using a managed OpenSearch service (AWS OpenSearch, GCP Elastic, or Azure Elastic) for production environments to reduce operational overhead and ensure high availability. However, for self‑managed or air‑gapped environments, you can deploy OpenSearch directly in Kubernetes using the OpenSearch Operator.

Prerequisites

  • Kubernetes cluster (v1.25 or later)
  • kubectl and helm CLI installed and configured
  • Persistent storage provisioner (for example, EBS, GCE Persistent Disk, or DO Block Storage)
  • At least 4 CPU cores and 8 GB RAM available

Step 1: Install the OpenSearch Operator

This installs the OpenSearch Operator which manages OpenSearch clusters declaratively.

Step 2: Create Namespace and Admin Credentials

Create a dedicated namespace for OpenSearch:
Create the admin credentials secret:

Step 3: Generate Hashed Password for Internal Users

1

Generate bcrypt hash of your admin password

To set up OpenSearch security, generate a bcrypt hash of your admin password:
2

Create Kubernetes secret

Create a Kubernetes secret os-internal-users.secret.yaml with the generated hash:
os-internal-users.secret.yaml
3

Apply the secret


Step 4: Deploy the OpenSearch Cluster

1

Create cluster definition file

suprsend-opensearch.yaml
2

Apply the manifest


Step 5: Verify the Deployment

Check Persistent Volumes Ensure volumes are created correctly:
Check Cluster Health
The status should show green once all nodes are ready.
You can also try making a curl request from with cluster
Make sure status is green

Step 6: Access OpenSearch Dashboards

You can port‑forward to the dashboard service:
Access in your browser at: https://localhost:5601
Login credentials:
  • Username: admin
  • Password: SuperStrong#Passw0rd

Step 7: Backup and Persistence

  • Persistent volumes ensure data durability.
  • To take regular snapshots, configure S3 or GCS snapshot repositories in OpenSearch.
  • Example (S3):

Step 8: Cleanup (if needed)

To uninstall everything:

Step 9: SuprSend Helm Configuration

Once your OpenSearch cluster is operational, configure SuprSend to use it.
This section shows only the OpenSearch-specific configuration. You must also configure other required secrets and values for SuprSend to work properly. See the complete configuration guide: SuprSend Installation Guide

Kubernetes secret and Helm values (single reference)

Wire OpenSearch in one place for the secret payload and one place in values for the key name the chart expects. 1. suprsend-secrets.yaml (excerpt) - set the real connection URL under stringData:
suprsend-secrets.yaml (OpenSearch excerpt)
2. suprsend-values.yaml (excerpt) - point the inbox API at that secret and the key name inside it:
suprsend-values.yaml (OpenSearch excerpt)
The URL lives only in the Kubernetes Secret (opensearchConnUrlKey under stringData). The Helm values only reference which secret (existingKubeSecret) and which key (opensearchConnUrlKey) to read.

Best Practices

  • Use dedicated storage classes (for example, SSD-backed volumes)
  • Enable auto-scaling and snapshot policies
  • Run OpenSearch in HA mode with 3+ nodes for redundancy
  • Use Ingress or LoadBalancer for external access with TLS termination
  • Configure proper TLS certificates for production deployments

References

OpenSearch Operator

Official Kubernetes operator for OpenSearch.

SuprSend Docs

SuprSend product documentation.

OpenSearch Reference

OpenSearch configuration and API reference.