Не удалось создать модуль из-за проблемы с дисковым пространством на узле AKS EE Linux. Как настроить ротацию журналов иLinux

Ответить
Anonymous
 Не удалось создать модуль из-за проблемы с дисковым пространством на узле AKS EE Linux. Как настроить ротацию журналов и

Сообщение Anonymous »

Мы столкнулись с ошибками создания модулей в AKS Edge из-за нехватки дисков ОС в /var/log, где kubelet не мог создать каталоги /var/log/pods (no space left on device). Это произошло, несмотря на достаточное пространство PVC и DiskPressure=False. Мы считаем, что это вызвано недостаточной ротацией/очисткой журнала по умолчанию на узлах AKS Edge, и нам нужны рекомендации или рекомендуемые базовые показатели для предотвращения исчерпания индексного дескриптора/диска ОС.
Вот что показано в описании модуля:

Предупреждение  FailedCreatePodSandBox  105s (x510 более 111 м)  kubelet  Не удалось создать изолированную программную среду модуля: mkdir /var/log/pods/loki_loki-0_5a21a36b-0aa3-4565-8479-9c32aa4c71e7: на устройстве не осталось места
У нас есть набор демонов, который устанавливает настройки ротации журналов. Но это не помогает.
apiVersion: v1
kind: ConfigMap
metadata:
name: sds-kubelet-patch-script
namespace: kube-system
data:
patch.sh: |
#!/bin/bash
CONFIG="/var/lib/kubelet/config.yaml"

# Remove existing lines if they exist
sed -i '/^containerLogMaxSize:/d' "$CONFIG"
sed -i '/^containerLogMaxFiles:/d' "$CONFIG"

# Append new values
echo "containerLogMaxSize: 10Mi" >> "$CONFIG"
echo "containerLogMaxFiles: 5" >> "$CONFIG"

echo "✅ Kubelet config patched. Restarting kubelet..."
systemctl restart kubelet
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
namespace: kube-system
name: sds-kubelet-patcher
labels:
k8s-app: sds-kubelet-patcher
spec:
selector:
matchLabels:
k8s-app: sds-kubelet-patcher
template:
metadata:
labels:
k8s-app: sds-kubelet-patcher
spec:
imagePullSecrets:
- name: xxx
hostPID: true
hostNetwork: true
nodeSelector:
kubernetes.io/os: "linux"
initContainers:
- name: patch-kubelet
image: xxx.azurecr.io/library/debian
command: ["nsenter"]
args: ["--mount=/proc/1/ns/mnt", "--", "sh", "-c", "$(PATCH_SCRIPT)"]
env:
- name: PATCH_SCRIPT
valueFrom:
configMapKeyRef:
name: sds-kubelet-patch-script
key: patch.sh
securityContext:
privileged: true
containers:
- name: wait
image: xxx.azurecr.io/pause:3.1


Подробнее здесь: https://stackoverflow.com/questions/798 ... to-setup-l
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»