Configuration Reference
Introduction
This document provides a comprehensive reference for all configuration options available in our Helm chart. The configuration is managed through a values.yaml
file that you can customize according to your requirements.
Global Configuration
These settings affect the entire deployment.
global.imageRegistry
Global Docker image registry
artifactory.company.com
Yes
global.imagePullSecrets
Global Kubernetes imagePullSecrets
[]
No
global.storageClass
Global StorageClass for Persistent Volume Claims
""
No
global.env
Global environment variables
{}
No
Image Configuration
image.registry
Image registry (overrides global)
artifactory.company.com
image.repository
Image repository
maisa-system
image.tag
Image tag (defaults to Chart version)
1.2.0
image.pullPolicy
Image pull policy
IfNotPresent
image.debug
Enable image debugging
false
API Server Configuration
Controls the API server component.
api.enabled
Deploy API server
true
api.replicaCount
Number of API server replicas
1
api.service.port
Port for the API server
8080
api.metrics.port
Port for metrics
9090
api.resources.limits.cpu
CPU limit
1000m
api.resources.limits.memory
Memory limit
1Gi
api.resources.requests.cpu
CPU request
500m
api.resources.requests.memory
Memory request
512Mi
Database Configuration
Settings for the database component.
Internal Database
database.internal.enabled
Use internal database
true
database.internal.persistence.enabled
Enable persistence
true
database.internal.persistence.size
Persistence size
8Gi
database.internal.resources.limits.cpu
CPU limit
1000m
database.internal.resources.limits.memory
Memory limit
2Gi
database.internal.resources.requests.cpu
CPU request
500m
database.internal.resources.requests.memory
Memory request
1Gi
database.internal.password
Database password (auto-generated if not provided)
""
External Database
database.external.enabled
Use external database
false
database.external.host
External database host
""
database.external.port
External database port
5432
database.external.user
External database user
""
database.external.password
External database password
""
database.external.database
External database name
maisa
database.external.sslMode
SSL mode for database connection
require
Worker Configuration
Settings for the worker component that processes background jobs.
worker.enabled
Deploy worker
true
worker.replicaCount
Number of worker replicas
1
worker.concurrency
Job concurrency
5
worker.queue.retryDelay
Retry delay in seconds
60
worker.queue.maxRetries
Maximum retry attempts
3
worker.resources.limits.cpu
CPU limit
1000m
worker.resources.limits.memory
Memory limit
1Gi
worker.resources.requests.cpu
CPU request
500m
worker.resources.requests.memory
Memory request
512Mi
worker.autoscaling.enabled
Enable autoscaling
false
worker.autoscaling.minReplicas
Minimum replicas
1
worker.autoscaling.maxReplicas
Maximum replicas
5
Scheduler Configuration (New in 1.2.0)
Settings for the scheduler component that triggers periodic jobs.
scheduler.enabled
Deploy scheduler
true
scheduler.schedules.dataSync
Cron schedule for data sync
"0 */1 * * *"
scheduler.schedules.reportGeneration
Cron schedule for report generation
"0 0 * * *"
scheduler.schedules.cleanup
Cron schedule for cleanup jobs
"0 1 * * 0"
scheduler.resources.limits.cpu
CPU limit
500m
scheduler.resources.limits.memory
Memory limit
512Mi
scheduler.resources.requests.cpu
CPU request
100m
scheduler.resources.requests.memory
Memory request
128Mi
Ingress Configuration
ingress.enabled
Enable ingress
false
ingress.className
Ingress class name
""
ingress.annotations
Ingress annotations
{}
ingress.hosts[0].host
Hostname
chart-example.local
ingress.hosts[0].paths[0].path
Path
/
ingress.hosts[0].paths[0].pathType
Path type
Prefix
ingress.tls
TLS configuration
[]
Persistence Configuration
Configuration for persistent storage.
persistence.enabled
Enable persistence
true
persistence.storageClass
Storage class
""
persistence.accessModes
Access modes
["ReadWriteOnce"]
persistence.size
Size
10Gi
persistence.annotations
Annotations for the PVC
{}
persistence.existingClaim
Existing PVC (if you don't want to create a new one)
""
RBAC and Service Account
serviceAccount.create
Create service account
true
serviceAccount.name
Service account name
""
serviceAccount.annotations
Annotations for the service account
{}
rbac.create
Create RBAC resources
true
rbac.rules
Rules for the role
[]
Security Configuration
security.networkPolicy.enabled
Enable network policies
true
security.podSecurityContext.runAsNonRoot
Run as non-root user
true
security.podSecurityContext.runAsUser
User ID
1001
security.podSecurityContext.fsGroup
Group ID
1001
security.containerSecurityContext.allowPrivilegeEscalation
Allow privilege escalation
false
security.containerSecurityContext.capabilities.drop
Drop capabilities
["ALL"]
security.audit.enabled
Enable audit logging
true
Feature Flags
Enable or disable specific features.
features.analytics.enabled
Enable analytics module
true
features.analytics.retention
Data retention in days
90
features.notifications.enabled
Enable notifications
true
features.notifications.channels
Notification channels
["email", "slack"]
features.export.enabled
Enable export functionality
true
features.export.formats
Export formats
["csv", "pdf", "excel"]
features.rateLimit.enabled
Enable API rate limiting
true
features.rateLimit.requestsPerMinute
Requests per minute
100
Breaking Changes from 1.1.0 to 1.2.0
api.port
Renamed to api.service.port
Update your values.yaml to use the new parameter name
database.enabled
Moved to database.internal.enabled
Update your values.yaml to use the new parameter location
database.password
Moved to database.internal.password
Update your values.yaml to use the new parameter location
externalDatabase.*
Moved to database.external.*
Update your values.yaml to use the new parameter location
features.reporting
Removed in favor of features.export
Use features.export
with the appropriate formats
ingress.annotations.kubernetes.io/ingress.class
Deprecated
Use ingress.className
instead
Upgrading from 1.1.0
To upgrade from version 1.1.0 to 1.2.0, follow these steps:
Update your Helm repository:
Create a backup of your values.yaml file:
Adjust your values.yaml file to account for the breaking changes:
Upgrade your installation:
It's recommended to perform the upgrade in a test environment before upgrading your production system.
Complete Example
Last updated