Add platform infrastructure configuration

This commit is contained in:
donghyeon-ka
2026-08-28 17:35:41 +09:00
parent fa76531e5b
commit 16c337bcc9
302 changed files with 83259 additions and 1 deletions
+23
View File
@@ -0,0 +1,23 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: keycloak-http
labels:
app.kubernetes.io/name: keycloak
app.kubernetes.io/instance: keycloak
app.kubernetes.io/component: identity-provider
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web
spec:
ingressClassName: traefik
rules:
- host: id.learn.hyeonworks.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: keycloak-service
port:
number: 8080
+94
View File
@@ -0,0 +1,94 @@
apiVersion: k8s.keycloak.org/v2beta1
kind: Keycloak
metadata:
name: keycloak
labels:
app.kubernetes.io/name: keycloak
app.kubernetes.io/instance: keycloak
app.kubernetes.io/component: identity-provider
spec:
instances: 1
db:
vendor: postgres
host: platform-postgres-rw.platform-data.svc.cluster.local
port: 5432
database: keycloak
schema: public
usernameSecret:
name: keycloak-db-credentials
key: username
passwordSecret:
name: keycloak-db-credentials
key: password
poolInitialSize: 5
poolMinSize: 5
poolMaxSize: 20
hostname:
hostname: https://id.learn.hyeonworks.com
strict: true
http:
httpEnabled: true
httpPort: 8080
serviceHttpPort: 8080
proxy:
headers: xforwarded
ingress:
enabled: false
additionalOptions:
- name: metrics-enabled
value: "true"
serviceMonitor:
enabled: true
interval: 30s
scrapeTimeout: 10s
labels:
observability.hyeonworks.com/instance: home
networkPolicy:
enabled: true
http:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
podSelector:
matchLabels:
app.kubernetes.io/name: traefik
https:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
podSelector:
matchLabels:
app.kubernetes.io/name: traefik
management:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: keycloak
podSelector:
matchLabels:
app.kubernetes.io/name: keycloak-operator
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: observability
podSelector:
matchLabels:
app.kubernetes.io/name: prometheus
app.kubernetes.io/instance: observability-core-kube-pr-prometheus
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: "2"
memory: 2Gi
transaction:
xaEnabled: false
@@ -0,0 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- keycloak.yaml
- ingress.yaml