# Example values for Okta authentication
# Copy and customize this file for your Okta setup
# 🔧 CUSTOMIZE THESE VALUES:
# 1. Replace YOUR_OKTA_DOMAIN with your Okta domain (e.g., dev-12345678.okta.com)
# 2. Replace YOUR_OKTA_CLIENT_ID with your Okta application client ID
# 3. Replace YOUR_OKTA_CLIENT_SECRET with your Okta application client secret
# 4. Update your-k8s-domain.com with your ingress domain
# 5. Update Schema Registry URLs for your Kubernetes cluster
replicaCount: 2
image:
repository: aywengo/kafka-schema-reg-mcp
pullPolicy: Always
tag: "2.0.0"
# 🟧 Okta Authentication Configuration (OAuth 2.1 Generic)
auth:
enabled: true
oauth2:
issuerUrl: "https://YOUR_OKTA_DOMAIN/oauth2/default"
audience: "api://YOUR_API_IDENTIFIER"
validScopes: "read,write,admin"
defaultScopes: "read"
requiredScopes: "read"
clientRegistrationEnabled: true
revocationEnabled: true
createSecret:
enabled: true
clientId: "YOUR_OKTA_CLIENT_ID"
clientSecret: "YOUR_OKTA_CLIENT_SECRET"
# Schema Registry Configuration
schemaRegistry:
multiRegistry:
enabled: true
registries:
- name: "development"
url: "http://schema-registry-dev.kafka.svc.cluster.local:8081"
viewonly: false
- name: "staging"
url: "http://schema-registry-staging.kafka.svc.cluster.local:8081"
viewonly: false
- name: "production"
url: "http://schema-registry-prod.kafka.svc.cluster.local:8081"
viewonly: true
# Service configuration
service:
type: ClusterIP
port: 80
targetPort: 8080
# Ingress configuration
ingress:
enabled: true
className: "nginx"
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-prod"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
nginx.ingress.kubernetes.io/cors-allow-origin: "*"
nginx.ingress.kubernetes.io/cors-allow-methods: "GET, POST, OPTIONS"
nginx.ingress.kubernetes.io/cors-allow-headers: "Content-Type, Authorization"
hosts:
- host: mcp-schema-registry.your-k8s-domain.com
paths:
- path: /
pathType: Prefix
tls:
- secretName: mcp-schema-registry-tls
hosts:
- mcp-schema-registry.your-k8s-domain.com
# Resources
resources:
limits:
cpu: 1000m
memory: 1Gi
requests:
cpu: 200m
memory: 512Mi
# Autoscaling
autoscaling:
enabled: true
minReplicas: 2
maxReplicas: 5
targetCPUUtilizationPercentage: 70
# App configuration
app:
viewonly: false
logLevel: "INFO"
port: 8080
# Security
podSecurityContext:
runAsNonRoot: true
runAsUser: 1000
fsGroup: 2000
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
runAsNonRoot: true
runAsUser: 1000
# Network policies
networkPolicy:
enabled: true
ingress:
enabled: true
from:
- namespaceSelector:
matchLabels:
name: ingress-nginx
- namespaceSelector:
matchLabels:
name: kafka
egress:
enabled: true
to:
- namespaceSelector:
matchLabels:
name: kafka
# Allow HTTPS access to Okta
- podSelector: {}
ports:
- protocol: TCP
port: 443
# Pod disruption budget
podDisruptionBudget:
enabled: true
minAvailable: 1
# Extra environment variables for Okta integration
extraEnvVars:
- name: OKTA_DOMAIN
value: "your-domain.okta.com"