Hacker News

Безпечний режим YOLO: запуск агентів LLM у vms за допомогою Libvirt і Virsh

Безпечний режим YOLO: запуск агентів LLM у vms за допомогою Libvirt і Virsh Цей комплексний аналіз безпечних пропонує детальну перевірку — Mewayz Business OS.

3 min read

Mewayz Team

Editorial Team

Hacker News

Безпечний режим YOLO: запуск агентів LLM у віртуальних машинах за допомогою Libvirt і Virsh

Безпечний режим YOLO дозволяє надавати агентам LLM майже необмежені привілеї виконання всередині ізольованих віртуальних машин, поєднуючи швидкість автономної роботи з гарантіями стримування віртуалізації на апаратному рівні. Поєднавши рівень керування libvirt із елементами командного рядка virsh, команди можуть так агресивно використовувати агентів штучного інтелекту, що навіть катастрофічна галюцинація не зможе вийти за межі віртуальної машини.

Що саме таке «безпечний режим YOLO» для агентів LLM?

Фраза «Режим YOLO» в інструментах штучного інтелекту стосується конфігурацій, у яких агенти виконують дії, не чекаючи підтвердження від людини на кожному кроці. У стандартних розгортаннях це справді небезпечно — неправильно налаштований агент може за лічені секунди видалити робочі дані, викрасти облікові дані або зробити незворотні виклики API. Безпечний режим YOLO усуває цю напругу, переносячи гарантію безпеки з рівня агента на рівень інфраструктури.

Замість того, щоб обмежувати те, що модель хоче робити, ви обмежуєте те, на що середовище дозволяє їй впливати. Агент усе ще може виконувати команди оболонки, встановлювати пакети, писати файли та викликати зовнішні API, але кожна з цих дій відбувається всередині віртуальної машини без постійного доступу до вашої хост-мережі, ваших секретів виробництва чи вашої фактичної файлової системи. Якщо агент руйнує своє середовище, ви просто відновлюєте знімок і йдете далі.

«Найбезпечніший агент штучного інтелекту — це не той, який питає дозвіл на все — це той, чий радіус вибуху був фізично обмежений, перш ніж він здійснив одну дію».

Як Libvirt і Virsh забезпечують рівень обмеження?

Libvirt — це API та демон із відкритим кодом, який керує платформами віртуалізації, включаючи KVM, QEMU та Xen. Virsh — це інтерфейс командного рядка, який дає операторам можливість контролювати життєвий цикл віртуальної машини, знімки, мережу та обмеження ресурсів за допомогою сценаріїв. Разом вони утворюють надійну площину керування для інфраструктури безпечного режиму YOLO.

Основний робочий процес виглядає так:

Надайте базовий образ віртуальної машини — створіть мінімальний гостьовий Linux (Ubuntu 22.04 або Debian 12 добре працюють) із попередньо встановленим середовищем виконання агента. Використовуйте virsh define із власною конфігурацією XML, щоб установити строгі ЦП, пам’ять і дискові квоти.

Знімок перед кожним запуском агента — запустіть virsh snapshot-create-as --name clean-state безпосередньо перед передачею віртуальної машини агенту. Це створює точку відкату, яку можна відновити менш ніж за три секунди.

💡 ВИ ЗНАЛИ?

Mewayz замінює 8+ бізнес-інструментів в одній платформі

CRM · Виставлення рахунків · HR · Проєкти · Бронювання · eCommerce · POS · Аналітика. Безкоштовний план назавжди.

Почати безкоштовно →

Ізолюйте мережевий інтерфейс — налаштуйте віртуальну мережу лише з NAT у libvirt, щоб віртуальна машина могла підключатися до Інтернету для викликів інструментів, але не могла досягати вашої внутрішньої підмережі. Використовуйте virsh net-define з обмеженою конфігурацією мосту.

Ввести облікові дані агента під час виконання — монтувати том tmpfs, що містить ключі API, лише на час виконання завдання, а потім відключити перед відновленням знімка. Ключі ніколи не зберігаються в зображенні.

Автоматизуйте демонтаж і відновлення — після кожного сеансу агента ваш оркестратор викликає virsh snapshot-revert --napshotname clean-state, щоб повернути віртуальну машину до базового стану, незалежно від того, що зробив агент.

Цей шаблон означає, що запуск агента не має стану з точки зору хоста. Кожне завдання починається з відомого хорошого стану та завершується в одному. Агент може діяти вільно, оскільки інфраструктура робить свободу вільною від наслідків.

Які компроміси між продуктивністю та вартістю в реальному світі?

Запуск агентів LLM у повноцінних віртуальних машинах створює додаткові витрати порівняно з контейнерними підходами, такими як Docker. Гості KVM/QEMU зазвичай додають 50–150 мс затримки під час першого завантаження, хоча це фактично усувається, якщо віртуальна машина працює між завданнями та покладається на повернення знімків, а не на повне перезавантаження. На сучасному апаратному забезпеченні з прискоренням KVM правильно налаштована гостьова система втрачає менше 5% вихідної пропускної здатності процесора порівняно з «голим металом».

Накладні витрати на пам'ять більш значні. Мінімальна гостьова система Ubuntu споживає приблизно 512 МБ базового обсягу перед завантаженням середовища виконання агента. Для команд, які запускають десятки одночасних сеансів агентів, ці витрати лінійно масштабуються та потребують обережності

Frequently Asked Questions

Is libvirt compatible with cloud-hosted environments like AWS or GCP?

Libvirt with KVM requires access to hardware virtualization extensions, which are not available in standard cloud VMs due to nested virtualization restrictions. AWS supports nested virtualization on metal instances and some newer instance types like *.metal and t3.micro. GCP supports nested virtualization on most instance families when enabled at VM creation. Alternatively, you can run your libvirt host on a dedicated bare-metal provider like Hetzner or OVHcloud and manage it remotely via the libvirt remote protocol.

How do I prevent agents from consuming excessive disk or CPU inside the VM?

Libvirt's XML configuration supports hard resource limits through cgroups integration. Set <cpu> with a quota and period to cap CPU burst, and use <disk><iotune> to limit read/write throughput. For disk space, provision a thin-provisioned QCOW2 disk with a hard maximum size. The agent cannot write beyond the disk boundary regardless of what it attempts.

Can Safe YOLO Mode work with multi-agent frameworks like LangGraph or AutoGen?

Yes. Multi-agent frameworks typically have a coordinator process outside the VM and worker agents that execute tools inside it. The coordinator communicates with each VM over a restricted RPC channel — typically a Unix socket proxied through the hypervisor or a restricted TCP port on the NAT network. Each worker agent gets its own VM instance with its own snapshot baseline. The coordinator calls virsh snapshot-revert between task assignments to reset worker state.


If your team is deploying LLM agents and wants a smarter way to manage the coordination layer — from agent policies and team permissions to workflow automation and usage analyticsstart your Mewayz workspace today and put all 207 modules to work for your infrastructure from day one.

Спробуйте Mewayz безкоштовно

Універсальна платформа для CRM, виставлення рахунків, проектів, HR та іншого. Без кредитної картки.

Почніть керувати своїм бізнесом розумніше вже сьогодні.

Приєднуйтесь до 30,000+ компаній. Безплатний тариф назавжди · Без кредитної картки.

Знайшли це корисним? Поділіться цим.

Готові застосувати це на практиці?

Приєднуйтесь до 30,000+ бізнесів, які використовують Mewayz. Безкоштовний тариф назавжди — кредитна карта не потрібна.

Почати пробний період →

Готові вжити заходів?

Почніть свій безкоштовний пробний період Mewayz сьогодні

Бізнес-платформа все в одному. Кредитна картка не потрібна.

Почати безкоштовно →

14-денний безкоштовний пробний період · Без кредитної картки · Скасуйте в будь-який час