Hermes Agent: самообучающийся ИИ-агент в контейнере на microsrv
Что умеет Hermes Agent от Nous Research и как развернуть его в контейнере на microsrv: официальный образ по digest, режим gateway, дашборд с basic auth и публикация через HTTPS-шлюз.
microsrv
облако для разработчиков
SSH, доменное имя и TLS работают из коробки — без настройки nginx и certbot. ВМ запускаются на прерываемых ресурсах крупных облаков, поэтому стоят дешевле, а живая миграция сохраняет процессы, диски, IP-адреса и соединения.
Трафик идёт
HTTPS и внутреннее соединение активны
> как это работает
Вы создаёте ВМ, подключаетесь по SSH и разворачиваете сервисы как обычно — домен и TLS работают из коробки. ВМ используют свободные мощности крупных облаков, поэтому стоят примерно на 25% дешевле, чем в обычных облаках, а система следит за хостами и сохраняет диски и сетевые адреса.
01
Во время живой миграции microsrv переносит оперативную память и запущенные процессы на новый хост. Приложение не перезапускается и не теряет данные в памяти, а сетевые адреса и соединения остаются прежними.
Оркестратор отслеживает свободные vCPU и память на соседних серверах, чтобы обеспечить место для переноса ВМ.
Оплаченные vCPU выделены только вашей ВМ и не используются другими клиентами.
Сигнал провайдера запускает живую миграцию оперативной памяти. Запущенные процессы продолжают выполняться на новом хосте без перезапуска приложения.
Если времени на живую миграцию недостаточно, ВМ автоматически запускается из реплицированной копии.
ВМ запускаются на прерываемых серверах даже там, где провайдеры отключают аппаратную вложенную виртуализацию.
02
Провайдеры продают свободные серверные мощности со скидкой до 70%, но могут забрать их, если ресурсы понадобятся клиентам со стандартным тарифом.
Обычно на таких ресурсах запускают только некритичные задачи. Наш оркестратор берёт повседневное управление на себя: отслеживает сигналы провайдера, резервирует место на соседних серверах и автоматически переносит или восстанавливает ВМ перед отключением хоста.
В примерах ниже итоговая цена примерно на 25% ниже, чем у того же провайдера.
прерываемые ресурсы + оркестратор microsrv = стабильная ВМ по более низкой цене
Посмотреть сравнение цен →03
Создайте ВМ, подключитесь по SSH и разверните сервисы. Перенос между хостами происходит автоматически.
Выберите vCPU, память и диски. Задайте начальную конфигурацию с помощью cloud-init.
Получите постоянный внутренний IP-адрес и реплицируемые диски, данные на которых сохраняются при переносе.
Подключайтесь через SSH-шлюз или опубликуйте сервис через HTTPS-шлюз — с доменным именем и TLS.
Запускайте веб-приложения, базы данных или фоновые задачи. При отзыве хоста ВМ перенесётся или восстановится без вашего участия.
04
Публичные сервисы, внутренние системы и фоновые задачи работают так же, как на традиционных ВМ.
Веб-приложения, базы данных, ИИ-агенты и фоновые воркеры получают выделенные vCPU, частную сеть и постоянный SSH-адрес.
> тарифы
ВМ запускаются на прерываемых ресурсах, а платформа обеспечивает доступность на уровне 99,9%. В таблице ниже приведён расчёт для типичного кластера из трёх узлов.
Типовая нагрузка
3 × (4 выделенных vCPU · 8 ГБ памяти · SSD 40 ГБ) — небольшой кластер или группа узлов Kubernetes
microsrv на ваших серверах
Установите microsrv на свои серверы или в своё облако. Управляйте ВМ, сетью и переносами из одного места.
Ориентировочная месячная стоимость для 3 × (4 vCPU · 8 ГБ · SSD 40 ГБ). Для «Облака A» и «Облака B» указаны стандартные тарифы из общедоступных калькуляторов провайдеров. Итоговая цена зависит от региона и условий размещения.
> возможности для инженеров
Сетевая изоляция, безопасный доступ и публикация сервисов доступны сразу — без ручной настройки дополнительной инфраструктуры.
Подключайтесь командой ssh -A <vm>@msrv.space. Порт 22 недоступен из интернета, а публичный IP-адрес для ВМ не требуется.
Передавайте SSH-ключи, пользовательские скрипты и конфигурацию при создании виртуальной машины.
Изолированные частные сети с постоянными внутренними IP-адресами. Защита от подмены IP- и MAC-адресов работает прямо в ядре.
Обращайтесь к внешним API, Git и реестрам контейнеров, не открывая машину для входящих подключений.
Рабочий ноутбук подключается к VPC через WireGuard-шлюз. А благодаря Kilo узлы microsrv могут стать частью вашего Kubernetes-кластера.
Публикуйте HTTPS-сервисы и TCP-базы данных с постоянными именами <vm>.msrv.space и автоматическими сертификатами.
При живой миграции запущенное приложение не перезапускается, а eBPF сохраняет открытые TCP-соединения.
ВМ не нужен публичный IP-адрес, а её SSH-порт недоступен из интернета. SSH-адрес не меняется при переносе.
$ ssh -A <vm>@msrv.spacemicrosrv: соединение с <vm> установленоWelcome to Ubuntu 24.04.2 LTS (GNU/Linux 6.8.0-60-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com System information: 4 vCPU · 8 GB RAM · 40 GB SSDЧастный адрес: 10.42.0.17 Last login: Fri Jul 24 20:51:08 2026 from 10.42.0.1ubuntu@<vm>:~$Опубликуйте веб-приложение или TCP-сервис, не назначая ВМ публичный IP-адрес. HTTPS-шлюз принимает HTTPS-трафик и направляет TCP-соединения по TLS/SNI.
$ curl -v https://<vm>.msrv.space* Host <vm>.msrv.space:443 was resolved* Connected to <vm>.msrv.space port 443* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384> GET / HTTP/2> Host: <vm>.msrv.space< HTTP/2 200< server: microsrv-gateway< content-type: application/json {"hello":"from <vm>"}$$ psql "host=<vm>.msrv.space sslmode=require"psql (16.3, server 16.3)SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384)Type "help" for help. <vm>=> SELECT current_database(), inet_server_addr(); current_database | inet_server_addr------------------+------------------ app | 10.42.0.17(1 row) <vm>=>У каждой частной сети есть WireGuard-шлюз: рабочий компьютер получает адрес внутри VPC, поэтому запросы к базе идут напрямую по внутреннему IP — без публикации портов наружу.
$ wg-quick up microsrv-vpc[#] ip link add microsrv-vpc type wireguard[#] ip address add 10.50.0.200/32 dev microsrv-vpc[#] ip route add 10.50.0.0/16 dev microsrv-vpcпир vpc-production: рукопожатие завершено user@laptop:~$ ping -c 2 10.50.0.12PING 10.50.0.12 (10.50.0.12) 56(84) bytes of data.64 bytes from 10.50.0.12: icmp_seq=1 ttl=64 time=4.05 ms64 bytes from 10.50.0.12: icmp_seq=2 ttl=64 time=3.87 ms --- 10.50.0.12 ping statistics ---2 packets transmitted, 2 received, 0% packet lossuser@laptop:~$$ psql -h 10.50.0.21 -U apppsql (16.3, server 16.3)Type "help" for help. app=> SELECT inet_server_addr(); inet_server_addr ------------------ 10.50.0.21(1 row) app=>> в планах
Эти функции ещё не готовы и пока не входят в услугу.
> блог
Короткие заметки о прерываемых ресурсах, сети и о том, как microsrv обеспечивает непрерывную работу ВМ.
Что умеет Hermes Agent от Nous Research и как развернуть его в контейнере на microsrv: официальный образ по digest, режим gateway, дашборд с basic auth и публикация через HTTPS-шлюз.
Как архитектурно совместить скорость контейнеров gVisor и свободу виртуальных машин в одном приватном облаке на примере собственного стека Git и CI/CD.
Разбор живой миграции: предварительное копирование, изменённые страницы, финальная передача, холодный перезапуск как резервный сценарий и перенос ВМ оркестратором microsrv до отзыва хоста.