Zum Hauptinhalt springen

Pod

Einstellungen auf Pod-Ebene. Gehören unter Deployment, StatefulSet, DaemonSet, Job oder CronJob.

BlockArtPlatz
Container … Image …Klammerunter ein Deployment, StatefulSet, Job oder CronJob
Init-Container … Image …Klammerunter ein Deployment, StatefulSet, Job oder CronJob
Pod-Label … = …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
Pod-Annotation … = …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
Image Pull Secret …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
läuft als ServiceAccount …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
Volume … aus PVC …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
Volume … aus ConfigMap …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
Volume … aus Secret …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
leeres Volume … im RAM …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
nur auf Nodes mit … = …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
Neustart-Regel …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
Update-Strategie …Stapelunter ein Deployment
Pod läuft nicht als root … fsGroup …Stapelunter ein Deployment, StatefulSet, Job oder CronJob
Beenden-Wartezeit … SekundenStapelunter ein Deployment, StatefulSet, Job oder CronJob

Container … Image …​

Container [1] Image [2]

Klammerblock – nimmt weitere Blöcke auf · Typ-ID pod_container · gehört unter ein Deployment, StatefulSet, Job oder CronJob

Ein Container im Pod. Lege Container-Blöcke (hellblau) hinein.

#FeldArtStandardAuswahl
1NAMETextdemo-app
2IMAGETextnginx:latest
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
containers:
- name: demo-app
image: nginx:latest

Init-Container … Image …​

Init-Container [1] Image [2]

Klammerblock – nimmt weitere Blöcke auf · Typ-ID pod_init_container · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1NAMETextwait-for-db
2IMAGETextbusybox:1.36
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
initContainers:
- name: wait-for-db
image: busybox:1.36

Pod-Label … = …​

Pod-Label [1] = [2]

Stapelblock · Typ-ID pod_label · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1KTextversion
2VTextv1
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
version: v1

Pod-Annotation … = …​

Pod-Annotation [1] = [2]

Stapelblock · Typ-ID pod_annotation · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1KTextprometheus.io/scrape
2VTexttrue
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
annotations:
prometheus.io/scrape: "true"

Image Pull Secret …​

Image Pull Secret [1]

Stapelblock · Typ-ID pod_pull_secret · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1NAMETextregistry-credentials
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
imagePullSecrets:
- name: registry-credentials

läuft als ServiceAccount …​

läuft als ServiceAccount [1]

Stapelblock · Typ-ID pod_service_account · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1NAMETextdemo-app
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
serviceAccountName: demo-app

Volume … aus PVC …​

Volume [1] aus PVC [2]

Stapelblock · Typ-ID pod_vol_pvc · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1NAMETextdata
2CLAIMTextdemo-app-data
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
volumes:
- name: data
persistentVolumeClaim:
claimName: demo-app-data

Volume … aus ConfigMap …​

Volume [1] aus ConfigMap [2]

Stapelblock · Typ-ID pod_vol_cm · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1NAMETextconfig
2CMTextdemo-app-config
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
volumes:
- name: config
configMap:
name: demo-app-config

Volume … aus Secret …​

Volume [1] aus Secret [2]

Stapelblock · Typ-ID pod_vol_secret · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1NAMETextcerts
2SECRETTextdemo-app-tls
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
volumes:
- name: certs
secret:
secretName: demo-app-tls

leeres Volume … im RAM …​

leeres Volume [1] im RAM [2]

Stapelblock · Typ-ID pod_vol_empty · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1NAMETexttmp
2MEMHäkchenaus
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
volumes:
- name: tmp
emptyDir: {}

nur auf Nodes mit … = …​

nur auf Nodes mit [1] = [2]

Stapelblock · Typ-ID pod_node_selector · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1KTextnode-role.kubernetes.io/worker
2VText(leer)
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
nodeSelector:
node-role.kubernetes.io/worker: ""

Neustart-Regel …​

Neustart-Regel [1]

Stapelblock · Typ-ID pod_restart_policy · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1RAuswahlAlwaysAlways, OnFailure, Never
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
restartPolicy: Always

Update-Strategie …​

Update-Strategie [1]

Stapelblock · Typ-ID pod_strategy · gehört unter ein Deployment

#FeldArtStandardAuswahl
1SAuswahlRollingUpdateRollingUpdate, Recreate
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
strategy:
type: RollingUpdate
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo

Pod läuft nicht als root … fsGroup …​

Pod läuft nicht als root [1] fsGroup [2]

Stapelblock · Typ-ID pod_security · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1NONROOTHäkchenan
2FSGROUPText(leer)
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
securityContext:
runAsNonRoot: true

Beenden-Wartezeit … Sekunden​

Beenden-Wartezeit [1] Sekunden

Stapelblock · Typ-ID pod_grace · gehört unter ein Deployment, StatefulSet, Job oder CronJob

#FeldArtStandardAuswahl
1SZahl30
Erzeugtes YAML mit Standardwerten
apiVersion: apps/v1
kind: Deployment
metadata:
name: demo
spec:
replicas: 1
selector:
matchLabels:
app: demo
template:
metadata:
labels:
app: demo
spec:
terminationGracePeriodSeconds: 30