Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Оплата
Новости
Доставка
Загрузки
Форум
Настройка
    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 Виртуальная Среда
    Память отсутствует в виртуальной машине

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Память отсутствует в виртуальной машине, Proxmox Виртуальная Среда
     
    masgo
    Guest
    #1
    0
    12.11.2021 02:19:00
    У меня есть виртуальная машина на Ubuntu 18.04 LTS, работающая на PVE 7, с выделенными 32 ГБ ОЗУ и включённой функцией ballooning. ВМ выполняет пакетную обработку и использует более 20 ГБ ОЗУ в течение нескольких минут, после чего возвращается к почти нулевому использованию (менее 500 МБ); именно поэтому и включен ballooning. Странное в том, что иногда ОЗУ пропадает. Я имею в виду, что общее количество ОЗУ, доступного ВМ, падает значительно ниже 32 ГБ во время работы. Минимум, который я видел, — это 14 ГБ; `htop` показывает только 14 ГБ всего, `free -h` показывает только 14 ГБ всего, а `/proc/meminfo` показывает только 14 ГБ `MemTotal`. Первоначально я предположил, что это может вызывать ramdisk, который я использую. Но ограничение ramdisk до 1 ГБ не улучшило ситуацию. ОЗУ по-прежнему пропадает, даже если перезагрузить ВМ изнутри. Если я делаю выключение ВМ из proxmox и перезапускаю её, полное количество ОЗУ восстанавливается. Есть идеи, что может быть причиной этого?
     
     
     
    Dunuin
    Guest
    #2
    0
    13.03.2022 10:41:00
    В Википедии есть статья, объясняющая это:
     
     
     
    masgo
    Guest
    #3
    0
    12.03.2022 14:30:00
    Код: агент: 1  
    шарик: 1024  
    загрузка: cdn  
    диск_загрузки: scsi1  
    ядра: 2  
    процессор: host  
    ide2: none,media=cdrom  
    память: 32768  
    имя: testvm  
    сеть0: virtio=52:54:00:19:f0:94,bridge=vmbr0,firewall=1,tag=19  
    numa: 1  
    при_загрузке: 1  
    тип_os: l26  
    защита: 1  
    scsi1: local-zfs:vm-403-disk-0,discard=on,size=18G  
    scsihw: virtio-scsi-pci  
    smbios1: uuid=f3f14df0-ea96-48db-9ccf-2ccc222c25ab  
    сокеты: 1  
    планшет: 0  
    vmgenid: 742530e1-b048-456d-8878-da2e5af5f8e6
     
     
     
    Dunuin
    Guest
    #4
    0
    12.03.2022 16:19:00
    Вот так работает баллонный механизм. Вы устанавливаете минимальное значение в 1 ГБ и максимальное в 32 ГБ ОЗУ. Как только ваш хост превышает 80% использования ОЗУ, начнется процесс баллонного расширения, и PVE постепенно уберет ОЗУ у гостей, пока не будет достигнуто 1 ГБ или до тех пор, пока использование ОЗУ хоста не станет меньше 80%. Это заставляет гостя освобождать ОЗУ, постепенно его уменьшая. Поэтому нормально, что у вашего гостя есть от 1 ГБ до 32 ГБ общей памяти. И баллонный механизм не будет обращать внимания на то, нужно ли этому гостю ОЗУ или нет. Он просто удалит его, и если операционная система гостя уже освободила все кэши и все равно нуждается в большем объеме ОЗУ, это приведет к завершению работы запущенных процессов. Так что, если вашим процессам иногда нужно 20+ ГБ ОЗУ, вам не стоит устанавливать минимальное значение ниже этого, чтобы ваш пакетный процесс не был завершен.
     
     
     
    masgo
    Guest
    #5
    0
    12.03.2022 22:29:00
    О, я не знал об этом лимите в 80%, в документации тоже нет никаких подсказок. Но теперь все стало ясно. После перезагрузки доступны все 32 ГБ, но затем объем снижается до примерно 14 ГБ. В этот момент на хосте остается ровно 80% оперативной памяти свободной. Как я могу на это повлиять? У сервера 128 ГБ ОЗУ. 80% означают, что остается около 25 ГБ свободными. Поскольку я использую ZFS, который действительно агрессивно использует кеш, это может занять 50% ОЗУ, и для виртуальных машин остается лишь крошечная доля. В данный момент у меня работает 7 виртуальных машин на этом сервере, у всех включено ballooning с максимальными настройками 4x4ГБ, 16 и 32 ГБ. Если все ВМ использовали бы максимальное количество ОЗУ, это означало бы 64 ГБ. Насколько я вижу, оставшиеся 64 ГБ должны быть вполне достаточны для ZFS и хоста PVE. Также используется KSM, который обычно возвращает около 16 ГБ, потому что 5 ВМ очень похожи на Windows ВМ, а две другие - на Ubuntu ВМ. Так как я могу изменить это значение 80% для ballooning? Две большие ВМ не нуждаются в ОЗУ всё время. На самом деле, одной из ВМ ОЗУ нужно только в рабочие часы, в то время как другая выполняет пакетную обработку вне рабочего времени. Это кажется идеальным вариантом для ballooning.
     
     
     
    Dunuin
    Guest
    #6
    0
    13.03.2022 10:50:00
    В вики есть статья, объясняющая это: если вы думаете, что ZFS не нуждается в 50% вашей оперативной памяти для кэширования, то вы можете ограничить размер ARC на свой вкус. Также описано в вики: не уверен, что можно изменить этот лимит для баллонирования. Никогда не видел опции для этого. У KSM также есть такой лимит (по умолчанию 80%), но этот лимит KSM можно изменить, редактируя "KSM_THRES_COEF=20" в файле "/etc/ksmtuned.conf".
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

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