Keeping your Prisme.ai platform up to date ensures you have access to the latest features, security patches, and performance improvements. This guide covers the process for updating your self-hosted Prisme.ai installation safely and efficiently.

Update Strategy

Standard updates include minor version changes and patches that don’t require significant infrastructure modifications.

These updates typically include:

  • Bug fixes
  • Security patches
  • Minor feature enhancements
  • Performance optimizations

Pre-Update Checklist

Before proceeding with any update, complete the following checklist:

1

Backup Your Environment

Create complete backups of your client-managed databases and configurations.

# Back up MongoDB data
mongodump --uri="mongodb://username:password@hostname:port/database" --out=/path/to/backup/mongo

# Back up Elasticsearch/OpenSearch
elasticdump --input=http://elasticsearch:9200/index --output=/path/to/backup/elasticsearch.json

# Back up Redis
redis-cli -h redis-host -a password --rdb /path/to/backup/redis.rdb

# Back up S3 storage
aws s3 sync s3://your-prisme-bucket /path/to/backup/s3-data

See the Backup & Restore page for detailed instructions.

2

Review Release Notes

Carefully review the release notes for the target version to understand:

  • Changes to Helm charts
  • Terraform module updates
  • Database schema changes
  • Required infrastructure modifications

Release notes are available in the Prisme.ai customer portal and within the release artifacts.

3

Check System Requirements

Verify your infrastructure meets the requirements for the new version.

4

Update Terraform Modules

If you’re using Terraform for infrastructure management, update your modules to the versions compatible with the new Prisme.ai release.

# Update Terraform module versions in your .tf files

module "prisme_platform" {
  source  = "prisme-ai/platform/aws"
  version = "x.y.z"  # Update to match your Prisme.ai target version
  
  # Your existing configuration...
}

# Run terraform plan to validate changes
terraform plan
5

Prepare Rollback Plan

Document a detailed rollback plan in case issues occur during the update.

Your rollback plan should include:

  • Specific commands to restore databases from backup
  • Helm rollback commands
  • Terraform destroy/apply commands for affected resources
  • Recovery time objectives
  • Verification steps after rollback

Update Process

1

Update Helm Repository

Refresh your Helm repository to get the latest charts.

helm repo update prisme
2

Review Chart Values

Compare your current values with the new chart’s default values to identify changes.

# Get current values
helm get values prisme-core -n prisme-system > current-values.yaml

# Compare with new chart defaults
helm show values prisme/prisme-core --version X.Y.Z > new-defaults.yaml

# Use a diff tool to compare
diff current-values.yaml new-defaults.yaml
3

Upgrade Core Components

Update the core Prisme.ai components first.

helm upgrade prisme-core prisme/prisme-core --version X.Y.Z \
  -f values.yaml \
  --namespace prisme-system

The core components handle compute operations and must be updated before product modules.

4

Update Product Modules

After the core is updated, upgrade each product module.

# Update AI SecureChat
helm upgrade prisme-securechat prisme/prisme-securechat --version X.Y.Z \
  -f securechat-values.yaml \
  --namespace prisme-system
  
# Update AI Knowledge
helm upgrade prisme-knowledge prisme/prisme-knowledge --version X.Y.Z \
  -f knowledge-values.yaml \
  --namespace prisme-system
  
# Repeat for other product modules: AI Store, AI Builder, AI Governance, etc.
5

Monitor Update Progress

Watch the deployment progress to ensure all pods are successfully updated.

kubectl get pods -n prisme-system -w
6

Verify Connectivity to External Databases

Ensure all services can connect to your managed databases.

# Check MongoDB connectivity
kubectl exec -it -n prisme-system deploy/prisme-api -- mongosh --eval "db.adminCommand('ping')"

# Check Elasticsearch/OpenSearch connectivity
kubectl exec -it -n prisme-system deploy/prisme-api -- curl -s elasticsearch:9200

# Check Redis connectivity
kubectl exec -it -n prisme-system deploy/prisme-api -- redis-cli -h redis-host ping

Database Compatibility Considerations

MongoDB / Compatible

  • Recommended version: 4.4+
  • Required indexes will be created automatically
  • Schema migrations happen on startup
  • Connection string format: mongodb://username:password@host:port/database

Elasticsearch / OpenSearch

  • Elasticsearch 7.10+ or OpenSearch 1.3+
  • Check index mappings compatibility
  • Some updates require reindexing
  • Set elasticsearch.existingUrl in values.yaml

Redis

  • Redis 6.0+ recommended
  • Used for caching and message queuing
  • Persistence configuration recommended
  • Cluster mode supported in Prisme.ai v3.2+

Object Storage (S3)

  • S3-compatible storage required
  • Used for document storage
  • Configure using storage.s3.* parameters
  • Verify bucket permissions after updates

Post-Update Tasks

After completing the update, perform these essential post-update tasks:

1

Verify Database Connectivity

Ensure all services can connect to your managed databases.

# Check from a pod within the cluster
kubectl exec -it -n prisme-system deploy/prisme-api -- curl -s <internal-elasticsearch-url>:9200
kubectl exec -it -n prisme-system deploy/prisme-api -- mongosh --eval "db.adminCommand('ping')"
2

Run Database Optimization Tasks

Optimize database performance after the update.

# Run MongoDB index optimization
kubectl exec -it -n prisme-system deploy/prisme-api -- node /app/scripts/optimize-indexes.js

# Run Elasticsearch optimization
kubectl exec -it -n prisme-system deploy/prisme-api -- node /app/scripts/optimize-indices.js
3

Verify Product Functionality

Test each Prisme.ai product to ensure they work as expected:

  • AI SecureChat
  • AI Store
  • AI Knowledge
  • AI Builder
  • AI Governance
  • AI Insights
4

Check Resource Utilization

Monitor resource usage to ensure the system is functioning efficiently.

# Check pod resource usage
kubectl top pods -n prisme-system

# Check node resource usage
kubectl top nodes

Rollback Procedure

If you encounter critical issues after an update:

1

Roll Back Helm Releases

Use Helm rollback to return to the previous version.

# List Helm release history
helm history prisme-core -n prisme-system

# Rollback to previous revision
helm rollback prisme-core [REVISION] -n prisme-system

# Repeat for other releases
helm rollback prisme-securechat [REVISION] -n prisme-system
2

Restore Databases

If necessary, restore databases from your pre-update backups.

# Restore MongoDB
mongorestore --uri="mongodb://username:password@hostname:port/database" /path/to/backup/mongo

# Restore Elasticsearch/OpenSearch
elasticdump --input=/path/to/backup/elasticsearch.json --output=http://elasticsearch:9200/index

# Restore Redis
redis-cli -h redis-host -a password SHUTDOWN SAVE
# Copy backup RDB file to Redis data directory

# Restore S3 data if needed
aws s3 sync /path/to/backup/s3-data s3://your-prisme-bucket
3

Revert Terraform Changes

If you used Terraform for the update, revert to the previous state.

# Revert to previous Terraform state
git checkout [previous-commit] terraform/
terraform plan
terraform apply

Next Steps