Deployment strategy
Deploying FlowX.AI microservices involves breaking down the application into modular components that can be independently deployed, scaled, and maintained. All microservices are delivered as Docker containers, making them suitable for deployment on any container orchestration platform, such as Kubernetes or Docker Swarm.Deployment prerequisites
Before beginning the deployment process, ensure you have:- A Kubernetes cluster or Docker environment
- Access to a container registry
- Persistent storage for databases
- Network policies configured for inter-service communication
- Resource quotas and limits defined for each environment
Recommended installation order
1
Infrastructure Components
First, deploy the foundational infrastructure:
- Databases: PostgreSQL/Oracle for relational data, MongoDB for document storage
- Message Broker: Kafka and ZooKeeper
- Caching: Redis
- Identity Management: Keycloak or other OAuth2 provider
2
Core Components
Next, deploy these core services in order:
- Advancing Controller: Manages process advancement and orchestration
- Process Engine: Handles business process execution and state management
3
Backend Services
Once the core components are operational, deploy these services (can be deployed in parallel):
- Admin Service: Platform administration and configuration management
- Audit Core: Compliance auditing and activity tracking
- Task Management: Human task assignment and workflow
- Scheduler Core: Job scheduling and time-based operations
- Data Search: Indexing and searching capabilities
- Events Gateway: Event routing and processing
- Document Plugin: Document generation and management
- Notification Plugin: Communication and alerts management
- Any additional plugins or extensions
4
AI Platform Services
Deploy the AI Platform services for intelligent automation capabilities:The AI Platform is a set of Python services:
- Planner: Intent understanding and task orchestration
- Agent Builder: Configuration and runtime for low-code AI nodes
- Knowledgebase RAG: Retrieval-augmented generation over the knowledge base
- Embedder: Embedding generation
- Knowledgebase Indexer v2: Event-driven retrieval-vector indexing
- AI Developer: Automated code generation capabilities
- AI Analyst: Process analysis and optimization
- AI Designer: UI generation and design automation
- AI Assistant: FlowX.AI documentation assistant
- KB Enrichment: Design-time document intelligence over knowledge-base documents (new in 5.9.1, replaces
di-platform)
AI features (chat, AI nodes, agents) are optional, but the AI Platform chart itself is required infrastructure in 5.5+ â
integration-designer has hard startup dependencies on AI Platform endpoints and will not start without them. See the AI Platform setup guide for how to run FlowX without AI features.5
Frontend Components
Finally, deploy the frontend services:
- Designer: Process design environment for business analysts
- Web Components: UI components for custom applications
- Customer-facing UIs and portals
Environment variables reference
Environment variables are the primary configuration mechanism for FlowX.AI microservices. They provide a secure and flexible way to customize service behavior without modifying the container images. The following sections detail the most commonly used environment variables across FlowX.AI microservices. For service-specific variables, refer to the dedicated setup guides for each component.Authorization & access management
*Required for some services that need to make authenticated calls to other services
Database configuration
PostgreSQL/Oracle
*Required only for Oracle databases
MongoDB (NoSQL)
*Required if runtime MongoDB connection is enabled
Kafka configuration
The
KAFKA_BOOTSTRAP_SERVERS and KAFKA_SECURITY_PROTOCOL properties are preferred and aligned across all services. The legacy SPRING_KAFKA_BOOTSTRAPSERVERS and SPRING_KAFKA_SECURITY_PROTOCOL properties remain supported for backwards compatibility. If both are set, the new properties take precedence.*At least one of KAFKA_BOOTSTRAP_SERVERS or SPRING_KAFKA_BOOTSTRAPSERVERS must be set.Kafka authentication profile
FlowX.AI supports enabling Kafka authentication across all Java microservices using thekafka-auth Spring configuration profile. This feature simplifies the activation of secure Kafka communication.
To enable Kafka authentication, set the SPRING_PROFILES_ACTIVE environment variable:
You can activate multiple profiles by separating them with commas:
SPRING_PROFILES_ACTIVE=dev,kafka-auth
*Required when
kafka-auth profile is active
For more details, see the Kafka Authentication Configuration guide.
Redis configuration
FlowX.AI microservices use Redis for caching and real-time data management. Redis can be deployed in three modes: Standalone, Sentinel (high availability), and Cluster (horizontal scaling). Quick reference for common Redis variables:For complete Redis configuration including all deployment modes, SSL/TLS setup, and troubleshooting, see the Redis Configuration guide.
Logging configuration
Changing log levels at runtime
All FlowX microservices support dynamic log level adjustment without requiring a restart. This capability uses Spring Boot Actuatorâs loggers endpoint and is particularly useful for troubleshooting production issues. Prerequisites: Ensure theloggers endpoint is exposed in your management endpoints configuration:
Example usage:
ai.flowx with the specific logger package you want to modify.
Available log levels: TRACE, DEBUG, INFO, WARN, ERROR, OFF
Deployment best practices
High availability considerations
For production environments, configure these high availability features:- Database Clustering: Implement PostgreSQL/Oracle with replication
- MongoDB Replica Sets: Deploy MongoDB as a replica set with at least 3 nodes
- Kafka Clustering: Use at least 3 Kafka brokers with replication factor â„ 3
- Redis Sentinel/Cluster: Configure Redis for high availability
- Service Replicas: Run multiple instances of each microservice
- Load Balancing: Implement proper load balancing for service instances
- Affinity/Anti-Affinity Rules: Distribute service instances across nodes
Security recommendations
Secure your FlowX.AI deployment with these measures:- Network Segmentation: Isolate microservices using network policies
- Secret Management: Use Kubernetes Secrets or a vault solution
- TLS Everywhere: Enable TLS for all service-to-service communication
- OAuth2 Scopes: Configure fine-grained OAuth2 scopes for services
- Resource Isolation: Use namespaces and pod security policies
- Regular Updates: Keep all components updated with security patches
- Audit Logging: Enable comprehensive audit logging via the Audit Core service
Troubleshooting
Common issues and solutions
Diagnostic procedures
When troubleshooting FlowX.AI microservices:- Check Service Logs: Examine logs for error messages
- Verify Configurations: Ensure all required environment variables are set correctly
- Test Connectivity: Verify network connectivity between services
- Monitor Resources: Check CPU, memory, and disk usage
- Inspect Kafka Topics: Use Kafka tools to inspect message flow
- Review Database State: Examine database for data integrity issues
- Check OAuth2 Tokens: Verify token validity and permissions
Service-specific documentation
For detailed configuration of individual services, refer to:Core platform components
Process Engine Setup
Admin Setup
Advancing Controller Setup
Application Manager Setup
Runtime Manager Setup
Scheduler Core Setup
Audit Setup
Authorization Setup
Task Management Setup
Notifications Setup
Document Setup
Events Gateway Setup
AI Platform services
The AI Platform is a suite of AI services that provide intelligent automation capabilities across the entire application lifecycle.

