2026-01-29 11:23:55 +05:30

144 lines
3.1 KiB
YAML

# Production/Default configuration for Scheduler Service
replicaCount: 2
# CRITICAL: Backstage Kubernetes plugin discovery label
commonLabels:
backstage.io/kubernetes-id: "schedulerservice"
image:
repository: gcr.io/prj-onlinesales-prod-01/schedulerservice
pullPolicy: IfNotPresent
tag: "latest"
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
serviceAccount:
create: true
annotations: {}
name: ""
podAnnotations:
reloader.stakater.com/auto: "true"
podLabels: {}
podSecurityContext:
fsGroup: 1000
runAsNonRoot: true
runAsUser: 1000
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: false
runAsNonRoot: true
runAsUser: 1000
capabilities:
drop:
- ALL
service:
type: ClusterIP
port: 8080
targetPort: 8080
annotations: {}
ingress:
enabled: false
className: "nginx"
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: "false"
hosts:
- host: schedulerservice.example.com
paths:
- path: /schedulerService
pathType: Prefix
tls: []
resources:
limits:
cpu: 1000m
memory: 1Gi
requests:
cpu: 250m
memory: 512Mi
livenessProbe:
httpGet:
path: /schedulerService/jobTrigger?jsonQuery=%7B%22application%22%3A%22nagios%22%2C%22jobName%22%3A%22monitoring_scheduler_svc%22%7D
port: http
initialDelaySeconds: 60
periodSeconds: 30
timeoutSeconds: 30
failureThreshold: 5
successThreshold: 1
readinessProbe:
httpGet:
path: /schedulerService/jobTrigger?jsonQuery=%7B%22application%22%3A%22nagios%22%2C%22jobName%22%3A%22monitoring_scheduler_svc%22%7D
port: http
initialDelaySeconds: 30
periodSeconds: 15
timeoutSeconds: 30
failureThreshold: 5
startupProbe:
httpGet:
path: /schedulerService/jobTrigger?jsonQuery=%7B%22application%22%3A%22nagios%22%2C%22jobName%22%3A%22monitoring_scheduler_svc%22%7D
port: http
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 30
failureThreshold: 30
autoscaling:
enabled: true
minReplicas: 2
maxReplicas: 10
targetCPUUtilizationPercentage: 70
targetMemoryUtilizationPercentage: 80
pdb:
enabled: true
minAvailable: 1
nodeSelector: {}
tolerations: []
affinity: {}
# External service dependencies
externalServices: {}
config:
enabled: true
mountPath: /etc/onlinesales/config/schedulerService
files:
schedulerService.cfg: |
LOG_CONFIG_FILE=/etc/onlinesales/config/schedulerService/log.cfg
DB_CONFIG_FILE=/etc/onlinesales/config/schedulerService/hibernate.cfg.xml
authConfig.cfg: |
{
"authEnable": false,
"authServiceUrl": "http://hades-service/hades/authorize"
}
log.cfg: |
log4j.rootLogger=INFO, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
env: []
# MySQL subchart disabled for production (use external DB)
mysql:
enabled: false
# External Database configuration (used when mysql.enabled=false)
externalDatabase:
host: ""
port: "3306"
database: "os_scheduling_db"
username: "scheduler_user"
password: ""