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

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