TG Telegram Group & Channel
ServerAdmin.ru | United States America (US)
Create: Update:

В Proxmox есть давняя проблема с LXC контейнерами. Внутри них вы видите нагрузку LA (Load Average) не контейнера, а хоста. Это сбивает с толку мониторинг. Например Zabbix, если к контейнеру прикреплён стандартный шаблон Linux.

Давно знаю про эту проблему. В реальной работе редко использую LXC, отдавая предпочтение обычным виртуалкам. Если сталкивался со спамом уведомлений на эту тему, то обычно просто отключал соответствующий триггер.

В этот раз опять с этим столкнулся и решил всё же исправить ошибку и заодно сделать заметку, чтобы потом заново не искать решение проблемы. Оно относительно простое и быстро гуглится. На официальном форуме Proxmox много тем по этой проблеме, начиная с 2018 года, может и раньше упоминали, я не искал.

Достаточно добавить соответствующий ключ запуска к службе lxc, запуск которой описан в файле /usr/lib/systemd/system/lxcfs.service. Вместо

ExecStart=/usr/bin/lxcfs /var/lib/lxcfs

делаем:

ExecStart=/usr/bin/lxcfs -l /var/lib/lxcfs

Перечитываем настройки и перезапускаем службу:

# systemctl daemon-reload
# systemctl restart lxcfs.service

Это решение в лоб, чтобы было понятно, что конкретно делаем. Более корректно менять настройки systemd через переопределение их в override.conf. Для этого создаём файл /etc/systemd/system/lxcfs.service.d/override.conf:

# systemctl edit lxcfs

Пишем туда:

[Service]
ExecStart=
ExecStart=/usr/bin/lxcfs -l /var/lib/lxcfs/

И тоже перечитываем настройки и перезапускаем службу:

# systemctl daemon-reload
# systemctl restart lxcfs.service

Хотя лично мне кажется, в данном случае лучше переписать оригинальный файл юнита. Если с каким-то обновлением прилетит его изменение, лучше полностью его заменить, чтобы не было потом проблем совместимости с изменениями в override.conf.

После этого надо остановить все контейнеры и запустить заново. Теперь внутри LXC вы будете видеть LA непосредственно контейнера.

Не понимаю, почему эту настройку до сих пор по умолчанию не применяют в Proxmox. Специально обновился до самой свежей на момент написания заметки версии 8.4.1 и убедился, что этого ключа для службы нет, а проблема актуальна. Мне в очередной раз о ней напомнил Zabbix, когда подключил новый хост с LXC к мониторингу.

В LXC Merge request для решения этого вопроса принят ещё в 2018 году. Вот ответ на форуме от сотрудника поддержки:

"Seems like it's working well for some users, but to be honest i don't see any reason to make it default still. it's rather easy to add the flag and it's a specific use case..."

"Похоже, у некоторых пользователей это нормально работает, но, честно говоря, я не вижу причин устанавливать его по умолчанию. Добавить флаг нетрудно, кому надо, делает это..."

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#proxmox #lxc

В Proxmox есть давняя проблема с LXC контейнерами. Внутри них вы видите нагрузку LA (Load Average) не контейнера, а хоста. Это сбивает с толку мониторинг. Например Zabbix, если к контейнеру прикреплён стандартный шаблон Linux.

Давно знаю про эту проблему. В реальной работе редко использую LXC, отдавая предпочтение обычным виртуалкам. Если сталкивался со спамом уведомлений на эту тему, то обычно просто отключал соответствующий триггер.

В этот раз опять с этим столкнулся и решил всё же исправить ошибку и заодно сделать заметку, чтобы потом заново не искать решение проблемы. Оно относительно простое и быстро гуглится. На официальном форуме Proxmox много тем по этой проблеме, начиная с 2018 года, может и раньше упоминали, я не искал.

Достаточно добавить соответствующий ключ запуска к службе lxc, запуск которой описан в файле /usr/lib/systemd/system/lxcfs.service. Вместо

ExecStart=/usr/bin/lxcfs /var/lib/lxcfs

делаем:

ExecStart=/usr/bin/lxcfs -l /var/lib/lxcfs

Перечитываем настройки и перезапускаем службу:

# systemctl daemon-reload
# systemctl restart lxcfs.service

Это решение в лоб, чтобы было понятно, что конкретно делаем. Более корректно менять настройки systemd через переопределение их в override.conf. Для этого создаём файл /etc/systemd/system/lxcfs.service.d/override.conf:

# systemctl edit lxcfs

Пишем туда:

[Service]
ExecStart=
ExecStart=/usr/bin/lxcfs -l /var/lib/lxcfs/

И тоже перечитываем настройки и перезапускаем службу:

# systemctl daemon-reload
# systemctl restart lxcfs.service

Хотя лично мне кажется, в данном случае лучше переписать оригинальный файл юнита. Если с каким-то обновлением прилетит его изменение, лучше полностью его заменить, чтобы не было потом проблем совместимости с изменениями в override.conf.

После этого надо остановить все контейнеры и запустить заново. Теперь внутри LXC вы будете видеть LA непосредственно контейнера.

Не понимаю, почему эту настройку до сих пор по умолчанию не применяют в Proxmox. Специально обновился до самой свежей на момент написания заметки версии 8.4.1 и убедился, что этого ключа для службы нет, а проблема актуальна. Мне в очередной раз о ней напомнил Zabbix, когда подключил новый хост с LXC к мониторингу.

В LXC Merge request для решения этого вопроса принят ещё в 2018 году. Вот ответ на форуме от сотрудника поддержки:

"Seems like it's working well for some users, but to be honest i don't see any reason to make it default still. it's rather easy to add the flag and it's a specific use case..."

"Похоже, у некоторых пользователей это нормально работает, но, честно говоря, я не вижу причин устанавливать его по умолчанию. Добавить флаг нетрудно, кому надо, делает это..."

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#proxmox #lxc


>>Click here to continue<<

ServerAdmin.ru






Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)