DEV-898: added self frickeled keyscloak stuff due to being not able to get it up and runninng with bitnami helm chart
parent
840b7286e1
commit
264c2992e2
Binary file not shown.
@ -0,0 +1,10 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: keycloak-cm-envvars
|
||||||
|
data:
|
||||||
|
KC_LOG_LEVEL: {{ .Values.keycloak.logLevel | default "INFO" }}
|
||||||
|
KC_PROXY: edge
|
||||||
|
KC_HOSTNAME: "keycloak-prodwork01.smardigo.digital"
|
||||||
|
KC_DB: "postgres"
|
||||||
|
KC_DB_URL: "jdbc:postgresql://postgres-cluster:5432/keycloak"
|
||||||
@ -0,0 +1,86 @@
|
|||||||
|
---
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: keycloak
|
||||||
|
name: keycloak
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: keycloak
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: keycloak
|
||||||
|
spec:
|
||||||
|
imagePullSecrets:
|
||||||
|
- name: harbor-pull-secret
|
||||||
|
securityContext: {}
|
||||||
|
containers:
|
||||||
|
-
|
||||||
|
securityContext:
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsNonRoot: true
|
||||||
|
allowPrivilegeEscalation: False
|
||||||
|
capabilities:
|
||||||
|
drop: ["ALL"]
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: keycloak-cm-envvars
|
||||||
|
- secretRef:
|
||||||
|
name: keycloak-secret-envvars
|
||||||
|
env:
|
||||||
|
- name: KC_DB_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: keycloak-admin.postgres-cluster.credentials.postgresql.acid.zalan.do
|
||||||
|
key: password
|
||||||
|
- name: KC_DB_USERNAME
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: keycloak-admin.postgres-cluster.credentials.postgresql.acid.zalan.do
|
||||||
|
key: username
|
||||||
|
{{- if .Values.keycloak.image.debug }}
|
||||||
|
- name: BITNAMI_DEBUG
|
||||||
|
value: {{ ternary "true" "false" .Values.keycloak.image.debug | quote }}
|
||||||
|
{{- end }}
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 8080
|
||||||
|
- name: https
|
||||||
|
containerPort: 8443
|
||||||
|
{{- if .Values.keycloak.resources }}
|
||||||
|
resources: {{- toYaml .Values.keycloak.resources | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.keycloak.httpRelativePath }}realms/master
|
||||||
|
port: http
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 1
|
||||||
|
timeoutSeconds: 5
|
||||||
|
failureThreshold: 3
|
||||||
|
successThreshold: 1
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.keycloak.httpRelativePath }}
|
||||||
|
port: http
|
||||||
|
periodSeconds: 1
|
||||||
|
timeoutSeconds: 5
|
||||||
|
failureThreshold: 3
|
||||||
|
successThreshold: 1
|
||||||
|
startupProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.keycloak.httpRelativePath }}
|
||||||
|
port: http
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 5
|
||||||
|
timeoutSeconds: 1
|
||||||
|
failureThreshold: 60
|
||||||
|
successThreshold: 1
|
||||||
|
image: {{ .Values.keycloak.image.registry }}/{{ .Values.keycloak.image.repository }}:{{ .Values.keycloak.image.tag }}
|
||||||
|
args:
|
||||||
|
- "start"
|
||||||
|
name: keycloak
|
||||||
@ -0,0 +1,26 @@
|
|||||||
|
{{- if .Values.keycloak.ingress.enabled }}
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
{{- if .Values.keycloak.ingress.annotations }}
|
||||||
|
annotations: {{- toYaml .Values.keycloak.ingress.annotations | nindent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
name: keycloak-ingress
|
||||||
|
spec:
|
||||||
|
ingressClassName: nginx
|
||||||
|
rules:
|
||||||
|
- host: {{ .Values.keycloak.ingress.hostname }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- backend:
|
||||||
|
service:
|
||||||
|
name: keycloak
|
||||||
|
port:
|
||||||
|
name: http
|
||||||
|
path: /
|
||||||
|
pathType: Prefix
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- {{ .Values.keycloak.ingress.hostname }}
|
||||||
|
secretName: keycloak-ingress-cert
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,16 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: ingress-nginx2keycloak
|
||||||
|
# allow traffic from minio-operator NS to current NS across all ports
|
||||||
|
spec:
|
||||||
|
ingress:
|
||||||
|
- from:
|
||||||
|
- namespaceSelector:
|
||||||
|
matchLabels:
|
||||||
|
kubernetes.io/metadata.name: ingress
|
||||||
|
podSelector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: keycloak
|
||||||
|
policyTypes:
|
||||||
|
- Ingress
|
||||||
@ -0,0 +1,7 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: keycloak-secret-envvars
|
||||||
|
stringData:
|
||||||
|
KEYCLOAK_ADMIN: {{ .Values.keycloak.auth.adminUser | quote }}
|
||||||
|
KEYCLOAK_ADMIN_PASSWORD: {{ .Values.keycloak.auth.adminPassword | quote }}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: keycloak
|
||||||
|
name: keycloak
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 8080
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: 8080
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: keycloak
|
||||||
@ -0,0 +1,27 @@
|
|||||||
|
apiVersion: monitoring.coreos.com/v1
|
||||||
|
kind: ServiceMonitor
|
||||||
|
metadata:
|
||||||
|
name: minio
|
||||||
|
labels:
|
||||||
|
release: kube-prometheus-stack
|
||||||
|
v1.min.io/tenant: {{ .Values.tenant.tenant.name }}
|
||||||
|
spec:
|
||||||
|
jobLabel: minio-{{ .Release.Name }}
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
v1.min.io/tenant: {{ .Values.tenant.tenant.name }}
|
||||||
|
endpoints:
|
||||||
|
- port: https-minio
|
||||||
|
interval: 30s
|
||||||
|
scrapeTimeout: 10s
|
||||||
|
path: /minio/v2/metrics/cluster
|
||||||
|
scheme: https
|
||||||
|
tlsConfig:
|
||||||
|
insecureSkipVerify: true
|
||||||
|
- port: https-minio
|
||||||
|
interval: 30s
|
||||||
|
scrapeTimeout: 10s
|
||||||
|
path: /minio/v2/metrics/node
|
||||||
|
scheme: https
|
||||||
|
tlsConfig:
|
||||||
|
insecureSkipVerify: true
|
||||||
Loading…
Reference in New Issue