Skip to content

Latest commit

 

History

History
121 lines (97 loc) · 2.25 KB

keycloak.md

File metadata and controls

121 lines (97 loc) · 2.25 KB

Overview

The keycloak service provides the authentication. It is deployed as a Kubernetes pod and can be configured for scaling, resource allocation, and health monitoring. configuration is defined under deployments.keycloak in the values.yaml

Configuration Options

General Settings

  useJsonLogFormat: false  # Enables structured JSON logging
  clusterMode: true 

Horizontal Pod Autoscaling (HPA) And Replicas

  hpa:
    enabled: false          # Enables or disables HPA
    cpu: 70                # Target CPU utilization percentage
    maxReplicas: 5         # Maximum number of replicas
  replicas: 1              # Default number of replicas

Deployment Strategy

  rollout_strategy: "Recreate"  # Defines the rollout strategy

Image Configuration

  image:
    repository: lightruncom/keycloak
    tag: ""
    pullPolicy: IfNotPresent

Resource Allocation

  resources:
    cpu: 1000m       # CPU limit
    memory: 2Gi   # Memory limit

Pod Labels & Annotations

  podLabels: {}
  podAnnotations: {}
  annotations: {}  # Deprecated in favor of podAnnotations

Extra Environment Variables

extraEnvs: []

Security Contexts

  podSecurityContext: {}
  containerSecurityContext: {}

Service Annotations & Labels

  service:
    annotations: {}
    labels: {}

Volumes

  extraVolumes: []
  extraVolumeMounts: []

Init Containers

initContainers:
  cluster_cert:
    image:
      repository: lightruncom/chart-helper
      tag: latest
      pullPolicy: ""

Note: The cluster_cert init container is used only with internal_tls and keycloak cluster mode.

Pod Disruption Budget & Scheduling

  podDisruptionBudget: {}
  topologySpreadConstraints: []
  affinity: {}

Health Probes

startupProbe:
  initialDelaySeconds: 10
  periodSeconds: 10
  timeoutSeconds: 1
  successThreshold: 1
  failureThreshold: 30
livenessProbe:
  initialDelaySeconds: 200
  periodSeconds: 50
  timeoutSeconds: 30
  successThreshold: 1
  failureThreshold: 3
readinessProbe:
  initialDelaySeconds: 0
  periodSeconds: 10
  timeoutSeconds: 5
  successThreshold: 1
  failureThreshold: 3