Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Оплата
Новости
Доставка
Загрузки
Форум
Настройка
    info@proxmox.su
    +7 (495) 320-70-49
    Заказать звонок
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Телефоны
    +7 (495) 320-70-49
    Заказать звонок
    0
    0
    0
    Аспро: ЛайтШоп
    • +7 (495) 320-70-49
      • Назад
      • Телефоны
      • +7 (495) 320-70-49
      • Заказать звонок
    • info@proxmox.su
    • Москва, Бакунинская улица, 69с1
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Proxmox Виртуальная Среда
    Открытие лимитов файлов для непривилегированных контейнеров LXC.

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Открытие лимитов файлов для непривилегированных контейнеров LXC., Proxmox Виртуальная Среда
     
    gmbeniamin
    Guest
    #1
    0
    21.07.2021 17:28:00
    Мы размещаем несколько LXC контейнеров на наших выделенных серверах (Debian 10). В основном у нас игровые серверы, и мы заметили странно раздражающий паттерн. Наши игровые серверы получают следующие ошибки и отключаются. Это происходит случайным образом и, как правило, когда на каждом сервере больше всего игроков. Код: terminate called after throwing an instance of 'boost::wrapexcept<boost::system::system_error>'
     what(): boost::random_device: не удалось открыть псевдо-устройство случайных чисел /dev/urandom: недостаточно файловых дескрипторов и Как можно установить более высокий лимит для каждого lxc не привелигированного контейнера? Мы смотрели другие туториалы, но не смогли заставить это работать. Контейнер учитывает ли это в отношении хоста? Нужно ли нам увеличить лимит открытых файлов для ОС выделенного сервера и для lxc не привелигированного контейнера? У нас более 2 лет опыта использования proxmox, но мы в основном пользовались интерфейсом и имеем ограниченные знания на стороне сервера.
     
     
     
    oguz
    Guest
    #2
    0
    22.07.2021 15:38:00
    Привет! Ты можешь установить опцию конфигурации для контейнера: lxc.prlimit.nofile: 65536 и перезапустить контейнер. Тогда, когда ты запустишь ulimit -a в контейнере, ты увидишь, что лимит на открытые файлы увеличился.
     
     
     
    gmbeniamin
    Guest
    #3
    0
    22.07.2021 23:36:00
    РЕДАКТИРОВАНИЕ: Забыл упомянуть, что это решение отлично работает, и мы добавили эту опцию во все файлы конфигурации наших lxc контейнеров. Возможно ли добавить эту опцию к каждому новому LXC контейнеру, без необходимости ручного добавления?
     
     
     
    yswery
    Guest
    #4
    0
    23.07.2021 02:05:00
    Можно применить это к /usr/share/lxc/config/common.conf, тогда это будет применяться ко всем контейнерам LXC сразу.
     
     
     
    gmbeniamin
    Guest
    #5
    0
    23.07.2021 13:56:00
    Я проверил файл и заметил lxc.pty.max = 1024. Это как-то связано с открытыми файлами? Спрашиваю, потому что в моей первой ошибке появилось слово "pseudo". В /usr/share/lxc/config/common.conf нужно просто добавить lxc.prlimit.nofile: 65536? Кажется, слишком просто, и не хочу устроить тут какой-нибудь переполох в продакшене.
     
     
     
    yswery
    Guest
    #6
    0
    23.07.2021 16:38:00
    Как загружаются конфигурации LXC: сначала идёт /usr/share/lxc/config/common.conf, потом всё, что есть в /usr/share/lxc/config/common.conf.d/*, затем, например, OS-специфичные файлы, как /usr/share/lxc/config/debain.common.conf, и в конце – файл VMID.conf. Именно в таком порядке загружаются файлы, если посмотреть на них. Можно создать новый файл в /usr/share/lxc/config/common.conf.d/prlimit.conf, например, и добавить туда lxc.prlimit.nofile: 65536. Но учтите, что это будет перезаписано, если в вашем VMID.conf для той же переменной конфигурации будет указано что-то другое. Надеюсь, стало понятнее.
     
     
     
    gmbeniamin
    Guest
    #7
    0
    23.07.2021 20:48:00
    Вчера я изменил файл VMID.conf и добавил опцию lxc.prlimit.nofile: 65536. После того, как я прочитал ваш ответ, я создал файл в /usr/share/lxc/config/common.conf.d/prlimit.conf <-- это файл. Когда я попытался остановить запущенный LXC контейнер, я получил следующую ошибку: Код: lxc-stop: 133: confile.c: parse_line: 2684 Недопустимый аргумент - Недопустимая строка конфигурации: lxc.prlimit.nofile: 65536
    lxc-stop: 133: parse.c: lxc_file_for_each_line_mmap: 132 Не удалось разобрать файл конфигурации "/usr/share/lxc/config/common.conf.d//prlimit.conf" на строке "lxc.prlimit.nofile: 65536"
    lxc-stop: 133: parse.c: lxc_file_for_each_line_mmap: 132 Не удалось разобрать файл конфигурации "/usr/share/lxc/config/common.conf" на строке "lxc.include = /usr/share/lxc/config/common.conf.d/"
    lxc-stop: 133: parse.c: lxc_file_for_each_line_mmap: 132 Не удалось разобрать файл конфигурации "/usr/share/lxc/config/debian.common.conf" на строке "lxc.include = /usr/share/lxc/config/common.conf"
    lxc-stop: 133: parse.c: lxc_file_for_each_line_mmap: 132 Не удалось разобрать файл конфигурации "/var/lib/lxc/133/config" на строке "lxc.include = /usr/share/lxc/config/debian.common.conf"
    Не удалось загрузить конфигурацию для 133
    lxc-stop: 133: tools/lxc_stop.c: main: 145 Ошибка при открытии контейнера
    Команда 'lxc-stop -n 133 --kill' завершилась с кодом ошибки 1. Это связано с тем, что опция уже есть в файле VMID.conf? EDIT: Я также заметил, что лимит не применяется для других пользователей. При использовании ulimit -a для пользователя root отображается правильное количество открытых файлов. При использовании той же команды для другого пользователя отображается 1024. Как можно увеличить лимит открытых файлов для этого пользователя?
     
     
     
    gmbeniamin
    Guest
    #8
    0
    08.11.2021 23:52:00
    Когда я подключаюсь к контейнеру через SSH (Termius), команда ulimit -a показывает только 1024. При использовании ulimit -Hn мы видим правильное число файлов, но ulimit -Sn показывает только 1024. Нужно ли нам менять лимиты на хост-ноде (выделенном сервере)?
     
     
     
    mathx
    Guest
    #9
    0
    03.05.2024 03:59:00
    Да, Yep ломает всё. Эта инструкция неверная и опасная. (PVE 7.1 здесь)
     
     
     
    linkdaz
    Guest
    #10
    0
    17.05.2025 17:29:00
    Заметил, что в директории conf.d есть другие файлы, в которых формат указания оверхрайдов отличается — там все написано как setting = value, а не setting: value. Если поменять на lxc.prlimit.nofile = 65536, то pct снова заработает. Кстати, если читать доки тут: https://linuxcontainers.org/lxc/manpages/man5/lxc.container.conf.5.html https://linux.die.net/man/2/setrlimit, то выходит, можно передавать два аргумента для этого? Мягкий и жёсткий лимит. lxc.prlimit.nofile = unlimited:unlimited, вероятно, тоже сработает. Ну, мне нужно было только один контейнер настроить, и я слишком ленив, чтобы дальше тестировать.
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

    Конфиденциальность Оферта
    © 2026 Proxmox.su
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры