Планирование инфра-узлов для хранилища логов
В этом руководстве объясняются аспекты планирования запуска плагинов хранилища Logging на выделенных инфраструктурных узлах Kubernetes.
Содержание
ЦелиГде настраивать размещениеПеред настройкой размещенияПроверка Local PV и nodeAffinityИсторические узлы Kafka и ZooKeeperУстранение неполадокЦели
- Изоляция ресурсов: предотвращение конкуренции с рабочими нагрузками бизнеса.
- Обеспечение стабильности: снижение числа выселений и конфликтов при планировании.
- Упрощение управления: централизация инфраструктурных компонентов с едиными правилами планирования.
Где настраивать размещение
- Для Alauda Container Platform Log Storage for Elasticsearch настройте размещение через
spec.valuesOverride.ait/chart-alauda-log-center.global.nodeSelectorиspec.valuesOverride.ait/chart-alauda-log-center.global.tolerationsв Installation. - Для Alauda Container Platform Log Storage for ClickHouse настройте размещение через Advanced Configuration в консоли или через
spec.config.components.nodeSelectorиspec.config.components.tolerationsв Installation.
Не исправляйте с помощью патча сгенерированные ресурсы StatefulSets, Deployments или ClickHouseInstallation как стандартный способ размещения рабочих нагрузок хранилища Logging на инфра-узлах.
Перед настройкой размещения
- Спланируйте инфра-узлы в соответствии с Планирование узлов кластера.
- Проверьте, использует ли ваше хранилище LocalVolume или другие PV с
spec.nodeAffinity. - Убедитесь, что выбранные инфра-узлы могут удовлетворить как правила планирования, так и ограничения размещения хранилища.
Проверка Local PV и nodeAffinity
Если ваши компоненты используют локальное хранилище (например, TopoLVM, local PV), проверьте, есть ли у PV поле spec.nodeAffinity. Если есть, выполните одно из следующих действий:
- Добавьте все узлы, на которые ссылается
pv.spec.nodeAffinity, в группу инфра-узлов, или - Выполните повторное развертывание компонентов, используя storage class без node affinity (например, Ceph/RBD).
Пример (Elasticsearch):
Если PV показывает:
Тогда данные Elasticsearch закреплены за узлом 192.168.135.243. Убедитесь, что этот узел входит в группу инфра-узлов, или выполните миграцию хранилища.
Этот же принцип применяется к любому компоненту хранилища Logging, который использует локальное хранилище, привязанное к узлу.
Исторические узлы Kafka и ZooKeeper
По историческим причинам убедитесь, что узлы Kafka и ZooKeeper также помечены/tainted как infra:
Устранение неполадок
Распространенные проблемы и способы их решения:
Пример ошибки:
Исправление: добавьте соответствующие tolerations в конфигурацию плагина и убедитесь, что выбранные инфра-узлы также удовлетворяют требуемым ограничениям размещения хранилища.