Fünf wichtige Features von Portainer
Fünf wichtige Features von Portainer 1. Docker Environments 2. Zugriffskontrolle 3. CI/CD …
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-scheduler
Und 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}
done
Fünf wichtige Features von Portainer 1. Docker Environments 2. Zugriffskontrolle 3. CI/CD …
Die Veröffentlichung von Kubernetes 1.29 bringt eine spannende Neuerung mit sich: eine …
In einer komplexen IT-Landschaft kann das Überwachen und Verstehen von Anwendungsleistungen zu einer …