stack.basicstack.de/apps/opencloud/openldap-deployment.yaml

148 lines
3.1 KiB
YAML
Raw Normal View History

---
# OpenLDAP Deployment for OpenCloud
# Provides external LDAP directory for user and group storage
# OpenLDAP Data Storage
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: openldap-data
namespace: opencloud
spec:
accessModes:
- ReadWriteOnce
storageClassName: hcloud-volumes-encrypted
resources:
requests:
storage: 10Gi
---
# OpenLDAP Config Storage
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: openldap-config
namespace: opencloud
spec:
accessModes:
- ReadWriteOnce
storageClassName: hcloud-volumes-encrypted
resources:
requests:
storage: 1Gi
---
# OpenLDAP Service
apiVersion: v1
kind: Service
metadata:
name: openldap
namespace: opencloud
spec:
type: ClusterIP
selector:
app: openldap
ports:
- name: ldap
port: 389
targetPort: 389
protocol: TCP
- name: ldaps
port: 636
targetPort: 636
protocol: TCP
---
# OpenLDAP Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
name: openldap
namespace: opencloud
spec:
replicas: 1
selector:
matchLabels:
app: openldap
template:
metadata:
labels:
app: openldap
spec:
containers:
- name: openldap
image: osixia/openldap:1.5.0
env:
# Organization and domain
- name: LDAP_ORGANISATION
value: "BasicStack"
- name: LDAP_DOMAIN
value: "basicstack.de"
# Admin credentials
- name: LDAP_ADMIN_PASSWORD
valueFrom:
secretKeyRef:
name: openldap-admin-secret
key: admin-password
# Config admin password
- name: LDAP_CONFIG_PASSWORD
valueFrom:
secretKeyRef:
name: openldap-admin-secret
key: config-password
# Base DN will be: dc=basicstack,dc=de
# Admin DN will be: cn=admin,dc=basicstack,dc=de
# Logging
- name: LDAP_LOG_LEVEL
value: "256"
# TLS disabled for internal cluster communication
- name: LDAP_TLS
value: "false"
# Remove default database and start fresh
- name: LDAP_REMOVE_CONFIG_AFTER_SETUP
value: "false"
ports:
- containerPort: 389
name: ldap
- containerPort: 636
name: ldaps
volumeMounts:
- name: openldap-data
mountPath: /var/lib/ldap
- name: openldap-config
mountPath: /etc/ldap/slapd.d
resources:
requests:
memory: "256Mi"
cpu: "100m"
limits:
memory: "512Mi"
cpu: "500m"
livenessProbe:
tcpSocket:
port: 389
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 5
readinessProbe:
tcpSocket:
port: 389
initialDelaySeconds: 20
periodSeconds: 5
timeoutSeconds: 3
volumes:
- name: openldap-data
persistentVolumeClaim:
claimName: openldap-data
- name: openldap-config
persistentVolumeClaim:
claimName: openldap-config