Обновить
17.82

Виртуализация *

Виртуализируем машины, ресурсы, приложения

Сначала показывать
Порог рейтинга
Уровень сложности

Забываем про ручное создание ВМ: как автоматизировать Proxmox с Terraform

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели7.6K

Автоматизируем создание виртуальных машин в Proxmox с помощью Terraform: от подготовки единого образа и настройки провайдера до управления инфраструктурой как кодом и хранения state в GitLab.

Читать далее

Новости

Старые Mac mini, Proxmox и немного упрямства: как я собрал свою инфраструктуру вместо облака

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели8.5K

В каждом офисе есть кладбище техники. У нас это были старые Mac mini — аккуратно сложенные, тихие, бесполезные. Когда-то на них работали, потом они перестали тянуть современные задачи, а дальше стандартный сценарий: «Давайте не выкидывать, вдруг пригодятся».

Как оказалось, пригодились.

Привет, Хабр! Меня зовут Николай, я занимаюсь выстраиванием инфраструктуры в web-продакшне RocketDev. В этой статье я расскажу, как дал вторую жизнь офисному железу и приспособил его для рабочих задач.

Читать далее

Опыт zVirt на Standoff Bug Bounty: какие уязвимости нашли и как мы их исправили

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели5.8K

Признавать уязвимости в Enterprise-продукте непросто. Но на той стадии развития, когда среди его пользователей крупные организации, которым важны требования регуляторов и риски, внутренних проверок и пен-тестов становится уже недостаточно. Участие в bugbounty — это показатель зрелости продукта и для рынка, и для самого разработчика.

Багбаунти (bug bounty) — это программа денежных вознаграждений за найденные уязвимости. В ноябре 2024 года мы в команде Orion soft запустили такую программу для нашей платформы виртуализации zVirt на площадке Standoff Bug Bounty.

Сегодня я расскажу о нашем опыте bugbounty, расскажу, какие уязвимости были найдены в ходе тестирования и как мы их исправляли.

Читать далее

KubeVirt: мифы и реальность об оверхедах виртуализации в Kubernetes

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели7.2K

Когда заходит речь о запуске виртуальных машин в Kubernetes через KubeVirt, первый вопрос, который возникает у инженеров: «А какой там оверхед?» Давайте разберём этот вопрос детально, рассмотрев каждую подсистему отдельно: вычисления, хранилище и сеть.

Статья основана на обсуждении в профессиональном сообществе.

Читать далее

Как привычка к ручному труду тормозит API-миграцию в облако [чек-лист по оценке стратегии и окупаемости миграции]

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели5.3K

Классическая бытовая дилемма: после ужина в раковине лежат две тарелки. Загружать посудомойку кажется избыточным оверхедом — быстрее сполоснуть руками. Но если вы только что приняли званный ужин на 10+ персон, ручная мойка уже покажется более утомительной.

В инфраструктурных задачах этот «парадокс посудомойки» преследует нас постоянно. Когда нужно мигрировать пару виртуальных машин, инженеру проще и быстрее сделать всё руками, чем настраивать сложные паплайны. Но сегодня, на фоне массового импортозамещения, смены гипервизоров (привет, VMware!) и курса на построение гибридных сред, масштаб задач изменился. В условиях миграции сотен ВМ привычка полагаться на ручной труд становится непозволительной роскошью.

В идеальном мире миграция — это «черный ящик»: нажал кнопку, и всё переехало. Но в условиях фрагментированного отечественного рынка виртуализации мы сталкиваемся с разной степенью зрелости API. Под катом попробуем разобраться, как устроены решения для миграции и какие функции берет на себя агент на стороне-приемнике.

Контроллер vs. Человек

Цена отклика: ввод, курсор и интерактив в SPICE

Уровень сложностиСложный
Время на прочтение17 мин
Охват и читатели8.6K

Можно получить идеальные 60 FPS и зелёные метрики — и всё равно услышать от пользователей «невозможно работать». Потому что мозг прощает “мыло”, но не прощает задержку: курсор начинает жить своей жизнью, клики “не туда”, печать с запозданием.

В этой части разбираю Input Channel, Cursor Channel и round-trip latency: почему SPICE таскает курсор отдельным каналом, откуда берётся эффект «курсор на резинке», чем отличается server mouse mode от client mouse mode, и почему без usb-tablet / vdagent всё быстро превращается в квест.

Третья статья серии — про то, что реально определяет UX в VDI: не картинка, а отклик.

Читать далее

Экран как услуга: Display Image, Streaming и 4K в SPICE

Уровень сложностиСложный
Время на прочтение23 мин
Охват и читатели11K

Парадокс: SPICE отлично справляется с рабочим столом, но спотыкается на видео. Статичный документ — чёткий, быстрый, экономный по трафику. Включили ролик на YouTube — и всё поплыло.

Display Channel — это два разных мира в одном канале. Image Mode: независимое сжатие каждой изменившейся области, умное кэширование, глобальный словарь для повторяющихся элементов интерфейса. Stream Mode: попытка поймать видеопоток и пережать его на лету.

Детекция видео по косвенным признакам. MJPEG из 2009 года как дефолт. GStreamer как путь к H.264. И вечный компромисс между «красиво» и «быстро».

Разбираю анатомию Display Channel — от QXL-команд до финального рендеринга. Вторая статья серии.

Читать далее

SPICE: анатомия протокола доставки рабочего стола

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели9.1K

В 2007 году инженеры Qumranet приняли решение, которое определило судьбу протокола на следующие 17 лет: только TCP, никакого UDP. Простота победила производительность.

SPICE — протокол, который доставляет рабочий стол от виртуальной машины до пользователя. Открытый, бесплатный, дефолтный для всего Linux VDI. И при этом удивительно мало кто понимает, как он устроен внутри.

Почему курсор передаётся отдельным каналом? Зачем нужен глобальный словарь в GLZ? Как современные композитные менеджеры сломали красивую идею 2D-команд QXL?

Разбираю архитектуру SPICE — не список фич, а инженерные решения и их последствия. Первая статья серии.

Читать далее

Внутри ядра Docker: что на самом деле происходит при запуске контейнера

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели18K

Когда вы вводите в командную строку docker run nginx — кажется, что произошло какое-то волшебство: за считанные секунды появляется полностью изолированная среда. Но здесь нет никакой магии, а просто инженерия ядра Linux. Давайте подробнее разберём эту тему подробнее и изучим, что именно происходит внутри ядра, когда Docker создаёт контейнер.

Читать далее

Теория и практика интеграции СХД с OpenStack

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели9K

Всем привет! Меня зовут Карина Кошева. Я тестирую совместимость СХД с системами виртуализации в YADRO. Мы проводим такое тестирование, потому что нам важно проверять, насколько успешно система будет работать в инфраструктуре заказчика.

Нам важно не только проверить базовую функциональность, но и убедиться, что СХД выдержит типичные и нетипичные сценарии заказчика: высокую нагрузку сотен и тысяч ресурсов, постоянные операции чтения и записи, работу со снапшотами и редкие, но критичные сценарии отказов компонентов. Именно это дает нам тестирование под нагрузкой. Как мы проводим такое тестирование, читайте под катом.

Читать далее

Быстрая миграция на zVirt c любой платформы виртуализации: как это работает

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели7.1K

Привет, Хабр! Меня зовут Павел Князькин, я системный архитектор в Orion soft, занимаюсь развитием платформы виртуализации zVirt. Сегодня мы поговорим о миграции виртуальной инфраструктуры. 

Миграция с иностранных платформ виртуализации, таких как VMware, HyperV, XEN, а иногда даже и с других отечественных систем виртуализации становится актуальной задачей для многих организаций. Но их останавливают трудности перехода: нужно каким-то образом переместить ВМ из одной платформы виртуализации в другую.

В этой статье я подробно разберу механизмы миграции в zVirt и покажу, что перенести ВМ можно достаточно быстро, удобно и без лишних сложностей. Сравню агентский и безагентский подходы, расскажу, как произвести конвертацию физического сервера в ВМ (P2V) и объясню, почему необязательно платить за миграцию каждой «машины».

Читать далее

Российская серверная виртуализация: руководство по выбору платформы

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели8.9K

Привет, Хабр! Представьте: десять лет вы строили инфраструктуру на VMware. Миграции проходили гладко, кластеры работали стабильно — красота. Но привычная опора оказалась менее надежной, чем казалось. Старые версии VMware больше не поддерживаются, обновления безопасности не выходят, а новые лицензии не купить даже через параллельный импорт. И главный вопрос — что будет завтра? Сегодня западные вендоры меняют ценовую политику, а через год могут и вовсе отозвать лицензии.

Именно в такой ситуации сейчас оказались сотни российских компаний. Им приходится выбирать из десятков доступных решений, и первый порыв — открыть сравнительную таблицу, где напротив каждой функции VMware стоит галочка. Хочется сохранить привычную функциональность, да и сами российские вендоры позиционируют свои продукты как полноценную замену VMware. Но такой подход не работает: простое сравнение по набору функций редко дает точное представление о реальной альтернативе. И у Lada, и у BMW есть руль, но дьявол, как известно, в деталях.

В этом руководстве, основанном на реальном опыте внедрений, мы разберем оптимальный алгоритм подбора системы виртуализации.

Читать далее

Дружим proxmox с WiFi

Время на прочтение6 мин
Охват и читатели15K

Недавно ко мне в руки попал мини-пк Junibox K3+ и решил из него сделать домашний мини-сервер. Однако мне было лень тянуть новый провод для него, поэтому было решено подключить его с помощью WiFi. Оказалось, это не такая и тривиальная задача, как тыкнуть пару раз по нужным кнопкам, так как proxmox из коробки не приспособлен для работы беспровода. Я прочитал пару гайдов и готов поделиться полученными знаниями с такими же изыскателями.

Читать далее

Ближайшие события

GD32 Unleashed: тотальная эмуляция в QEMU

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели10K

Зачем эмулировать то, что можно купить за копейки? Тратить месяцы на создание виртуальной модели микроконтроллера, если реальная отладочная плата на базе GD32F303 стоит как пара чашек кофе? Ответ прост: хороший физический стенд — это не просто плата. Это проектирование, сборка, место в стойке, электропитание, обжиг кабелей и поддержка в рабочем состоянии. А самое главное — его часто нельзя раздать каждому разработчику. Но что, если можно запустить ту же прошивку, что и на реальном железе, в эмуляторе?

В этой статье я представляю результат работы нашей команды из отдела разработки встраиваемого ПО в YADRO. Наиболее полную на сегодняшний день модель SoC GD32F30X в QEMU и набор интерфейсов, которые делают взаимодействие с эмулируемой периферией «прозрачным» для хостовой системы.

Читать далее

Не ждать у моря API. Предсказуемая миграция без интеграций под каждую платформу

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели8.6K

Привет, Хабр! Я Виктор, в Хайстекс руковожу отделом разработки. Сегодня расскажу про фичу, которая снимает ложную дилемму «API или универсальность», потому что оба сценария можно применять параллельно.

При переносе виртуальных машин между облаками и частными контурами API-интеграция обычно даёт максимум автоматизации. Но как только целевых площадок становится больше одной-двух или появляется «собранная на коленке» платформа, выясняется, что у этой автоматизации есть цена. Миграция через API превращается в отдельный проект на недели разработки и тестирования. Этот пост — для инженеров и архитекторов, которые занимаются миграциями ВМ и упираются в стоимость и сроки поддержки API-интеграций под каждую новую целевую площадку.

Под катом — как сделать целевую сторону миграции воспроизводимой без зависимости от API конкретного облака и без ожидания поддержки со стороны платформы.

API vs D2T

Yandex Cloud восстанавливает доступность

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели11K

В Yandex Cloud наблюдается сетевая недоступность многих узлов в одной из зон.

Проблемы начались в 19:00 по Москве, по информации поддержки восстановление ожидается около 03:00.

Читать далее

Все, что вы хотели знать, но боялись спросить про Kubernetes + KubeVirt vs. Среда виртуализации + Kubernetes

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели8.6K

Привет, Хабр!

В последнее время меня часто спрашивают (интересно, и кто эти люди) про Kubernetes и виртуализацию, точнее про разные варианты совмещения того и другого, и можно без хлеба в одном флаконе. Проще говоря, что лучше, интереснее и эффективнее: прикрутить к Kubernetes дополнительную фичу, например, KubeVirt, чтобы можно было с помощью оркестратора Kubernetes управлять не только контейнерами, но и виртуальными машинами, или же взять классическую среду виртуализации, управляющую виртуальными машинами, и добавить в нее Kubernetes для управления контейнеризированными приложениями. Вопрос непраздный, да к тому же непростой, поэтому давайте разбираться по порядку. За подробностями добро пожаловать под кат.

Читать далее

Когда облако становится дорогим — переходим на выделенный сервер!?

Время на прочтение10 мин
Охват и читатели6.5K

В какой момент логично перейти на выделенный сервер и что вы получите взамен? Рассказываем о реальных цифрах, архитектуре и плюсах перехода.

Читать далее

Как я построил полностью изолированную пентест-лабораторию и почему ИИ нельзя доверять

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели12K

Как я построил полностью изолированную пентест-лабораторию и почему ИИ нельзя доверять

Уже месяц я изучаю создание пентест-инструментов (назовем это так, чтобы с модерацией проблем не было :-)) по книге "Black Hat Go", и до недавних пор я тестировал малварь на своём хосте, ибо в них нет ничего опасного, это простейшие утилиты по типу TCP-сканера.

Значит, нужно построить свою виртуальную и изолированную лабу. В них должно быть минимум 3 машины: Windows 11 в роли жертвы, Ubuntu server lts в роли C2 сервака, и, конечно, классический Metasploitable2 опять же в роли жертвы.

Читать, как я мучился последние 3 дня

zVirt Metrics vs Zabbix: где заканчивается универсальный мониторинг

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели8.4K

Zabbix — отличный универсальный инструмент. Но как только виртуалок становится не 20, а 200, всё превращается в бесконечный тюнинг: поднял лимит PHP, подкинул кэш, вырубил логирование — и надеешься, что доживёт до утра. Мы проверили, где эта грань на самом деле проходит и как себя ведёт альтернатива — zVirt Metrics. В статье — архитектура, производительность и честные цифры из тестов. Материал будет полезен инженерам, которые держат на себе мониторинг виртуализации и хотят, чтобы всё работало из коробки и без плясок с бубном при росте числа инсталляций zVirt.

Читать далее
1
23 ...

Вклад авторов