Deploying Prisme.ai on Microsoft Azure leverages managed Azure services for scalability, reliability, and ease of management. This guide walks through setting up Prisme.ai using Azure Kubernetes Service (AKS) and other Azure-native resources.Documentation Index
Fetch the complete documentation index at: https://docs.prisme.ai/llms.txt
Use this file to discover all available pages before exploring further.
Azure Prerequisites
Ensure these prerequisites are ready before deploying:- An active Azure subscription with sufficient privileges.
- Azure CLI installed and authenticated.
- Familiarity with Kubernetes and basic Azure services (AKS, CosmosDB/MongoDB/PostgreSQL, Redis, Blob storage).
Recommended Azure Infrastructure
Set up Prisme.ai using the following Azure-managed resources:Kubernetes (AKS)
Kubernetes (AKS)
- Service: Azure Kubernetes Service (AKS)
-
Recommended Configuration:
- 3-5 nodes with at least Standard_D4s_v4 (4 vCPU, 16GB RAM each)
- Cluster Autoscaler enabled
-
Best Practices:
- Use Azure Availability Zones for high availability
- Integrate Azure AD for AKS cluster authentication
-
Deployment Example:
MongoDB (Azure CosmosDB) or PostgreSQL
MongoDB (Azure CosmosDB) or PostgreSQL
- Service: Azure Cosmos DB API for MongoDB or Azure Database PostgreSQL
- Recommended Configuration:
- 3-node replication (multi-region optional)
- Provision throughput according to your workload (400-10,000 RU/s)
- Best Practices:
- Enable Geo-replication for disaster recovery
- Regularly monitor and scale throughput dynamically
- Use Microsoft Entra ID authentication with PostgreSQL
Search Engine (ElasticSearch / OpenSearch)
Search Engine (ElasticSearch / OpenSearch)
- Service: Elasticsearch on Elastic Cloud or ES/OS deployed via AKS-managed containers
- Recommended Configuration:
- Elasticsearch cluster with at least 3 nodes (8GB RAM per node)
- Best Practices:
- Snapshot regularly to Cloud Storage
- Secure using private networking and access controls
Redis Cache (Azure Cache for Redis)
Redis Cache (Azure Cache for Redis)
- Service: Azure Cache for Redis
- Recommended Configuration:
- Premium P1 or P2 tier for HA and clustering
- Multi-zone redundancy enabled
- Best Practices:
- Regularly perform maintenance and updates
- Integrate with Azure Monitor for metrics
- Use Microsoft Entra ID authentication with Redis
Object Storage (Azure Blob Storage)
Object Storage (Azure Blob Storage)
- Service: Azure Blob Storage
- Configuration:
- Separate containers for private uploads, public assets, and models
- Best Practices:
- Use Azure CDN to serve public assets efficiently
- Enable lifecycle management policies
File Storage (Azure Files)
File Storage (Azure Files)
- Service: Azure Files with Azure Storage Accounts
- Recommended Configuration:
- Premium SSD tier for optimal performance
- Integration with AKS using CSI drivers for persistent volumes
- Best Practices:
- Secure access via Private Endpoints
- Enable regular backups via Azure Backup
Azure Deployment Steps
Configure DNS & Networking
- Configure Azure DNS for your domains:
api.yourdomain.comstudio.yourdomain.com*.pages.yourdomain.com
- Use Azure Application Gateway as ingress if desired.
Passwordless authentication
Microsoft Entra ID authentication enable passwordless authentication using system-assigned or user-assigned managed identities. For both Redis and PostgreSQL, start following these common steps :- Create a managed identity :
- Allow our future Kubernetes deployments to endorse this manage identity using one of these 2 methods :
azureSystemIdentity values to true.
2b. Or, create a federated identity :
This will bind the managed identity with the Kubernetes service account which will be used our backend deployments :
- Here, all Prismeai backends services (everything except prismeai-console and prismeai-pages) will need a
serviceAccount.name: prismeai-backends-savalue in Helm value files. - CORE_NAMESPACE and APPS_NAMESPACE must be replaced with the expected core and apps namespace names.
azureManagedIdentityClientId values to the managed identity clientId.
Redis
- Open your Azure Managed Redis or Azure Cache For Redis
- Open Settings > Authentication in left menu
- Enable Microsoft Entra ID authentication and select your created managed identity
PostgreSQL
- Connect to the Postgres cluster with your Entra admin user :
- Create a postgres user attached to our managed identity (by using the same name) :
- Assign permissions :
- In Helm value files, specify the managed identity username (PrismeaiIdentity) for all 3 PostgreSQL clients :
global.permissions.userprismeai-api-gateway.storage.users.userprismeai-runtime.storage.collections.user
Security Best Practices
Azure AD Integration
- Secure your AKS cluster using Azure Active Directory integration.
- Implement RBAC for access management.
Private Networking
- Deploy AKS within a private Virtual Network (VNet).
- Utilize Azure Firewall or Network Security Groups (NSGs) for controlled access.
Secrets Management
- Store sensitive configurations in Azure Key Vault.
- Regularly rotate keys and passwords.
Monitoring & Alerts
- Utilize Azure Monitor and Azure Log Analytics.
- Set alerts for resource anomalies.
Next Steps
Helm Deployment
Deploy Prisme.ai using Helm on Kubernetes
Products Configuration
Configure your Prisme.ai AI products
Operations Management
Learn about scaling operations efficiently