Възелът изчерпа дисковото пространство. Всички pods изхвърлени. Нови pods насрочени на същия възел. Изхвърлени отново. Повторение завинаги.

Хронология:

  • 2:00 AM: Дискът на възела достига 90%
  • 2:05 AM: Kubelet започва да изхвърля pods
  • 2:06 AM: Pods пренасрочени към... същия възел (най-много налични ресурси)
  • 2:07 AM: Повече логове, повече използване на диска
  • 2:08 AM: Изхвърлени отново
  • 2:09 AM: Алармата се задейства (най-накрая)

Основна причина:

  • Приложението логва във файловата система на контейнера
  • Не е конфигурирана ротация на логове
  • ephemeral-storage лимити не са зададени
  • Възелът е tainted само след disk pressure, но taints се изчистват когато pods напуснат

Решението:

resources:
                                    limits:
                                    ephemeral-storage: "2Gi"
                                    requests:
                                    ephemeral-storage: "1Gi"

Плюс:

  • Логване към stdout (събирано от Fluentd)
  • Конфигуриране на ротация на логове на контейнера
  • Мониторинг на използване на диска на възела с аларми при 70%

Урок: Задайте ephemeral-storage лимити. Винаги.


← Назад към Научени Уроци