Kubernetes-Ressourcengrenzen: Der Balanceakt zwischen Vorhersehbarkeit und Effizienz
Es gibt eine Menge Diskussionen darüber, ob das Nichtverwenden von Kubernetes-Ressourcengrenzen …
Mit ayedo ist der Betrieb Ihrer Apps in Kubernetes ein Kinderspiel. Hin und wieder reichen die Boardmittel allerdings nicht aus, um den reibungslosen Betrieb Ihrer Anwendungen sicherzustellen. Einen nützlichen kleinen Life-Hack im Zusammenhang mit Terminating Pods möchten wir Ihnen in diesem Artikel vorstellen. Noch kein Kubernetes Cluster?
Mit ayedo Fleet können Sie Kubernetes 30 Tage kostenlos testen, ohne die operativen Kopfschmerzen. Probieren Sie’s aus.

Der CronJob:
apiVersion: batch/v1
kind: CronJob
metadata:
name: garbage-collector-cronjob
namespace: kube-system
spec:
schedule: '*/1 * * * *'
concurrencyPolicy: Forbid
suspend: false
jobTemplate:
metadata:
creationTimestamp: null
spec:
parallelism: 1
completions: 1
backoffLimit: 0
template:
metadata:
creationTimestamp: null
spec:
volumes:
- name: scripts
configMap:
name: garbage-collector-cm
defaultMode: 320
containers:
- name: garbage-collector
image: alpine/k8s:1.25.12
command:
- /scripts/remove-evicted-pods-all-ns.sh
resources: {}
volumeMounts:
- name: scripts
mountPath: /scripts
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
imagePullPolicy: IfNotPresent
restartPolicy: Never
terminationGracePeriodSeconds: 30
dnsPolicy: ClusterFirst
securityContext: {}
schedulerName: default-schedulerUnd die dazugehörige ConfigMap:
#!/bin/bash
namespace=""
node=$(kubectl get node | grep "worker" | grep "NotReady" | awk '{print $1}')
for pod in $(kubectl get pods -A -o=JSON --field-selector spec.nodeName=${node} | jq -r '.items[] |
select(.metadata.namespace | startswith("${namespace}")) | .metadata.name') ; do
namespace=$(kubectl get pods -A -o=JSON --field-selector metadata.name=${pod}| jq -r ' .items[] .metadata.namespace')
echo "Killing pod ${namespace}/${pod}"
kubectl delete pod -n ${namespace} --force ${pod}
doneEs gibt eine Menge Diskussionen darüber, ob das Nichtverwenden von Kubernetes-Ressourcengrenzen …
Jedes Jahr, kurz vor der offiziellen Eröffnung von KubeCon+CloudNativeCon, findet eine ganz …
Effizienz und Skalierbarkeit sind in der rasanten Welt der Softwareentwicklung oft entscheidende …