Skip to main content
Helm simplifies managing Kubernetes applications, offering powerful templating and lifecycle management. This guide details how to deploy and manage Prisme.ai using Helm charts effectively.

Prerequisites

Before deploying Prisme.ai with Helm, ensure:
  • Kubernetes cluster (version 1.26+) ready.
  • Helm (version 3+) installed and configured.
  • Basic familiarity with Kubernetes commands (kubectl).

Step-by-Step Helm Deployment

1

Add Helm Repository

Add the official Prisme.ai Helm repository:
helm repo add prismeai https://helm.prisme.ai/charts
helm repo update
2

Prepare the Configuration (`values.yaml`)

Download and customize the Helm chart configuration:
helm show values prismeai/prismeai-core > values.yaml
Customize values.yaml with your specific settings:
  • Database connections (MongoDB, Redis, Elasticsearch)
  • Object storage configurations (S3-compatible storage, Azure Blob, GCS)
  • Ingress settings, SSL certificates
3

Create Kubernetes Namespace

Create a dedicated namespace for Prisme.ai:
kubectl create namespace prisme-ai
4

Install Prisme.ai via Helm

Deploy Prisme.ai using Helm into your cluster:
helm install prisme-core prismeai/prismeai-core \
  --namespace prisme-ai -f values.yaml
5

Verify the Deployment

Check pod status and ensure all components are running correctly:
kubectl get pods -n prisme-ai
kubectl logs deployment/api-gateway -n prisme-ai

Configuration

PostgreSQL

Compared to the MongoDB values, there are only 3 places to update for PostgreSQL, all of which are indicated by a comment including “postgresql”:

Database permissions

Key: global.storage.permissions The driver must be set to postgresql, and the authentication URL including username and password must be provided in url (not recommended for production) or ideally in a url key (configurable via secretKeys.url) of the existingSecret. Example URL: postgres://user:[email protected]:20184/permissions?sslmode=require
The sslmode=require option is required to enforce SSL connection.

Database users

Key: prismeai-api-gateway.storage.users Same configuration structure as global.storage.permissions - set the driver to postgresql and configure the connection URL.

Database collections

Key: prismeai-runtime.storage.collections Same configuration structure as above - set the driver to postgresql and configure the connection URL.

Helm Best Practices

Version Control

  • Version your values.yaml using Git for better tracking.
  • Regularly upgrade Helm releases to latest stable charts.

Secrets Management

  • Store sensitive configurations securely using Kubernetes Secrets or external secret management solutions (e.g., HashiCorp Vault, AWS Secrets Manager).

Resource Optimization

  • Define clear resource requests and limits in your Helm chart configuration.
  • Regularly review and optimize these values according to observed resource usage.

Monitoring & Alerts

  • Integrate Helm deployments with Prometheus & Grafana Operator.
  • Configure alerts for critical components of Prisme.ai.

Common Helm Commands

  • Update repository:
    helm repo update
    
  • List releases:
    helm list -n prisme-ai
    
  • Upgrade release:
    helm upgrade prisme-core prismeai/prismeai-core -n prisme-ai -f values.yaml
    
  • Rollback:
    helm rollback prisme-core [revision] -n prisme-ai
    
  • Delete release:
    helm uninstall prisme-core -n prisme-ai
    
  • Check release history:
    helm history prisme-core -n prisme-ai
    
  • Debug issues:
    kubectl describe pod <pod-name> -n prisme-ai
    kubectl logs <pod-name> -n prisme-ai
    

Next Steps