zero/k8s: use deployments (#5248)

* zero/k8s: use deployments

* secret mount readonly

Co-authored-by: Joe Kralicky <joekralicky@gmail.com>

* adjust according to comments

---------

Co-authored-by: Joe Kralicky <joekralicky@gmail.com>
This commit is contained in:
Denis Mishin 2024-08-29 15:16:32 -04:00 committed by GitHub
parent ef08c32c82
commit 5fd8cf60d5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
13 changed files with 61 additions and 21 deletions

View file

@ -1,15 +1,15 @@
apiVersion: apps/v1
kind: StatefulSet
kind: Deployment
metadata:
name: pomerium
spec:
serviceName: "pomerium-proxy"
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: pomerium-zero
template:
spec:
serviceAccountName: pomerium-zero
containers:
- name: pomerium
terminationGracePeriodSeconds: 10

View file

@ -1,5 +1,5 @@
apiVersion: apps/v1
kind: StatefulSet
kind: Deployment
metadata:
name: pomerium
spec:
@ -19,6 +19,10 @@ spec:
fieldRef:
apiVersion: v1
fieldPath: metadata.namespace
- name: BOOTSTRAP_CONFIG_FILE
value: "/var/run/secrets/pomerium/bootstrap.dat"
- name: BOOTSTRAP_CONFIG_WRITEBACK_URI
value: "secret://$(POMERIUM_NAMESPACE)/pomerium/bootstrap"
- name: POD_IP
valueFrom:
fieldRef:

View file

@ -1,5 +1,5 @@
apiVersion: apps/v1
kind: StatefulSet
kind: Deployment
metadata:
name: pomerium
spec:

View file

@ -1,5 +1,5 @@
apiVersion: apps/v1
kind: StatefulSet
kind: Deployment
metadata:
name: pomerium
spec:

View file

@ -1,5 +1,5 @@
apiVersion: apps/v1
kind: StatefulSet
kind: Deployment
metadata:
name: pomerium
spec:

View file

@ -1,5 +1,5 @@
apiVersion: apps/v1
kind: StatefulSet
kind: Deployment
metadata:
name: pomerium
spec:

View file

@ -1,5 +1,5 @@
apiVersion: apps/v1
kind: StatefulSet
kind: Deployment
metadata:
name: pomerium
spec:

View file

@ -1,5 +1,5 @@
apiVersion: apps/v1
kind: StatefulSet
kind: Deployment
metadata:
name: pomerium
spec:
@ -13,22 +13,22 @@ spec:
- name: TMPDIR
value: "/tmp/pomerium"
- name: XDG_CACHE_HOME
value: "/var/cache"
value: "/tmp/pomerium/cache"
- name: XDG_DATA_HOME
value: "/var/cache"
value: "/tmp/pomerium/cache"
volumeMounts:
- mountPath: "/tmp/pomerium"
name: tmp
- mountPath: "/var/cache"
name: pomerium-cache
- mountPath: "/var/run/secrets/pomerium"
name: bootstrap
readOnly: true
volumes:
- name: tmp
emptyDir: {}
volumeClaimTemplates:
- metadata:
name: pomerium-cache
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 100Mi
- name: bootstrap
secret:
optional: true
secretName: pomerium
items:
- key: bootstrap
path: bootstrap.dat

View file

@ -3,5 +3,6 @@ commonLabels:
app.kubernetes.io/name: pomerium-zero
resources:
- namespace.yaml
- ./rbac
- ./deployment
- ./service

View file

@ -0,0 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- role.yaml
- role_binding.yaml
- service_account.yaml

14
k8s/zero/rbac/role.yaml Normal file
View file

@ -0,0 +1,14 @@
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: pomerium-zero
rules:
- apiGroups:
- ""
resources:
- secrets
verbs:
- patch
resourceNames:
- pomerium

View file

@ -0,0 +1,11 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: pomerium-zero
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: pomerium-zero
subjects:
- kind: ServiceAccount
name: pomerium-zero

View file

@ -0,0 +1,4 @@
apiVersion: v1
kind: ServiceAccount
metadata:
name: pomerium-zero