Ответы пользователя по тегу Виртуализация
  • Как создать 10 виртуальных машин на 1 ПК для собственного использования?

    @rPman
    Про много ip адресов:
    Идешь к своему провайдеру и просишь еще один ip адрес (купить), тебе дадут требования к роутеру (или сам роутер) и инструкции как этим пользоваться (с высокой вероятностью это будет не раздача реального ip а обычная трансляция NAT), ip адреса в сети машинам будут раздаваться по mac адресу, настройки которого в свойствах виртуальной машины, в настройках сети (если выберешь тип сети - сетевой мост, тогда виртуальная машина с точки зрения сети будет просто еще одна машина в твоей локальной сети, но если хочешь пускать на машины чужих людей, то изолируй их друг от друга отдельными сетями, например выделив специальную машину под роутер, настрой на нем фаервол и пускай все внутренние сети виртуалок к ней).

    Про создание 'аналог vps', пили скрипты автоматизации или бери готовое (под windows скорее всего нет), для virtualbox есть консольная утилита VBoxManage которая позволяет делать все что хочешь плюс еще в довесок скрытые функции.

    По организации виртуальных машин, есть следующие варианты:
    * подготавливаешь скрипты автоматической установки системы на виртуальную машину (я видел реализацию, когда виртуальная или реальная машина в режиме 'установка' запускалась с загрузкой по сети или с компакт диска, где ее ждал unattended/automated install (такие образы iso можно сделать чуть ли не штатно из большинства популярных дистрибутивов), который размечал разделы, копировал систему и прописывал настройки сети (я видел таких что прописывали статикой, не надо так) и по мелочи
    * подготавливаешь готовые образы виртуальных машин, которые являются стартовыми шаблонами, и делаешь простое копирование (используй cp --reflink=auto, тогда физически копия не будет занимать места на диске пока не начнутся туда записи, т.е. место будет занимать только изменения), затем диску меняешь uuid чтобы virtualbox не ругался на дубляж
    VBoxManage internalcommands sethduuid диск.vdi/vhd/vmdk

    * используешь штатный инструмент снапшотов vitualbox, когда шаблонные системы управлять ими немного муторно, но они очень быстрые и позволяют много сценариев эффективной работы с данными (например резервные копирование может быть снапшотом)

    p.s. на базе функционала virtualbox можно запилить очень мощный облачный хостинг, но в пределах одной машины (точнее без функционала кластера, например нет миграции), более продвинутые функции есть у qemu kvm, позволяет очень много интересного реализовать, на его базе redhat пилит свой платный продукт для этого, конкурирующий с vmware/xen.
    Ответ написан
  • Как пробросить порт в виртуальную машину?

    @rPman
    bridge internet adapter - сетевой мост
    там выбираешь, с каким сетевым адаптером нужен бридж, в этом режиме виртуальная машина как бы подключается через свитч к той же сети что и хост машина, т.е. ей должен быть выдан ip адрес (вручную или автоматически dhcp сервером локалки, если есть)

    нет никакого тут проброса портов, машины с точки зрения сети полностью независимы

    p.s. настройка rdp в virtualbox это доступ через сети ip хост машины к экрану (этакий ip kvm), ей сеть виртуавиртуалки побоку, даже если ее там не будет
    Ответ написан
  • Проблема при установке ubuntu linux на виртуальной машине. Unabled to boot?

    @rPman
    архитектура должна совпадать
    ты установил x86-64 а в настройках виртуальной машины выбрал 32-битную i686
    иди в настройки 'общие' -> 'версия' и меняй

    если хост система у тебя сама 32-битная, и очень очень надо, то остается только софтварная виртуализация qemu, будет медленней раз в 10 (операционка вообще может минут 15 запускаться)
    Ответ написан
    1 комментарий
  • Потянет ли этот ПК виртуальыне машины?

    @rPman
    память тестировал то?

    Всё работает, но если виртуалки долго не включаются, то система выдаёт ошибку: "Повреждён файл \Windows\System32\Config\SYSTEM" и больше не запускается.
    если виртуалку долго НЕ ВКЛЮЧАТЬ?
    и где именно ошибку пишет, в гостевой системе в виртуалке или хостовой системе?

    если поврежден файл на хост системе, может так оно и есть? SYSTEM это реестр
    чинить файл (я хз как) или хотя бы восстанавливать из бакапа

    для теста поставь чистую хост систему, подними там виртуалку и погоняй, денек другой, т.е. добейся проблемы.

    железо у тебя более чем подходит для работы виртуальной машины с поддержкой аппаратной виртуализации.
    Ответ написан
    7 комментариев
  • Как запустить Docker и Virtual Box одновременно?

    @rPman
    Никак.

    Точнее решение - убежать от wsl как можно дальше, перенести docker на linux, т.е. там чем он является и где должен быть по определению, запустив его хост в одной из VirtualBox машин.

    p.s. а не пробовал ли воспользоваться штатным (есть в т.ч. в win pro/ultimate версиях) майкрософтовским инструментарием виртуальных машин, как раз использующих hyper-v? интерфейс похож на немного усложненный и в то же время кастрированный по функционалу инструментарий virtualbox.
    Ответ написан
    Комментировать
  • Стоит ли увеличивать ОЗУ при VirtualBox или Nox?

    @rPman
    Виртуальная машина использует только физическую память, т.е. использовать больше памяти чем есть физически, с помощью файла подкачки почти невозможно (кажется qemu умеет). Если у тебя 8гб ram то виртуальную машину можно создать на 6гб (требуется 64-битная ос).

    Есть момент, при установке драйверов гостевой ос в виртуалке станет возможна ситуация когда свободная оперативная память в ней не занимает физически на хост системе, т.е. некоторая оптимизация, особенно актуально когда запускаешь несколько виртуальных машин и может получиться что в сумме память в них получается больше чем доступно на хосте физически.

    p.s. если тебе надо больше, то лучше купить физически оперативную память, стоит она дешевле гемороя, который тебе создаст файл подкачки
    Ответ написан
    1 комментарий
  • Падение производительности диска старых ВМ в KVM. TRIM или что?

    @rPman
    Ваш dd на хосте проверит только линейное чтение, особенно актуально для hdd дисков, и с ним у вас похоже все ок.

    Возможная причина падения скорости - фрагментация qcow2, пересоздаей (если есть снапшоты, то надо думать можно ли так) контейнер примерно так
    qemu-img convert -p -O qcow2 source.img destination.img


    Еще есть фрагментация дисков внутри самой виртуалки, плюс у ntfs mfat фрагментируется (если большими объемами создаются файлы, правятся и удаляются) плюс растет без уменьшения, размазанный по всему диску, это вообще решить можно только пофайловым копированием на новый диск.
    Ответ написан
    Комментировать
  • Устройство из системы в виртуальную машину?

    @rPman
    в windows это сделать нельзя.

    если бы устройство было usb, можно было бы попробовать, тот же virtualbox или qemu имеют для этого инструменты, но pci - нет

    Для вас решение (если нужно именно программное) только одно - установить гипервизор (xen/vmware/свой на базе linux и qemu/virtualbox/...) и пробросить уже его средствами хоть целый контроллер в нужную виртуальную машину, запустив по соседству как свою windows 10 так и нужную windows 7. И даже этот вариант может не сработать, или может потребовать изменение биос на машине, чтобы не инициализировало оборудование раньше времени.

    p.s. дешевле и надежнее всего решить проблему - железом, выделить отдельно машину под задачу.
    Ответ написан
    Комментировать
  • Как обойти ограничения CPU vmware vmvisor?

    @rPman
    Не получится, так как virtualbox уже использует необходимые процессорные директивы для аппаратной виртуализации и не эмулирует их как следует.

    Можно попытаться полную виртуализацию с помощью qemu, без использования аппаратной виртуализации, но даже если это заработает, то будет на столько медленно что это будет не обучение а мучение.

    upd. для изучения большинства интересных фишек типа миграции понадобится минимум две машины (плюс NAS, рекомендую взять третью, хоть старый хлам, и сделать на основе linux свой, iscsi на базе istgt более чем подойдет), обязательно требование - поддержка аппаратной виртуализации (все процессоры 5+ и большинство 10+ лет), если нужно закупать оборудование, максимально дешево, брать интеллевские процессоры, запаиваемые в mitx материнки (настоятельно рекомендую модели J4xxx или j5xxx, это самые последние чипсеты от интель, очень производительные за свои деньги)
    Ответ написан
    Комментировать
  • Как подключить диск с файлами к виртуальной машине ESXi через sata?

    @rPman
    На сколько я знаю, в win10 (когда то в win7 я спокойно подключал виртуалке) системный диск так не подключить, а если диск не используется, то сначала его нужно перевести в состояние offline (в оснастке управление дисками нажать на диске правую кнопку и выбрать offline/вне сети)

    p.s. кажется при использовании qemu/kvm можно эмулировать диск, подключив только физический раздел, а симулированный mbr и прочее сохранить в файле.
    Ответ написан
    Комментировать
  • Как использовать только ВПН на виртуальной машине? (дроп впн'а = дроп интернет соединения)?

    @rPman
    Да, есть очень красивое решение - сломать интернет в гостевой системе, отключив шлюз по умолчанию, т.е. локальная сеть будет работать (до хост системы и ее роутера для выхода в интернет) но интернет нет.

    Зтем добавляешь route add vpn сервер провайдера на шлюз, и получаешь работающий vpn. При подключении vpn сеть будет работать через него, а при отключении - только до vpn сервера
    Ответ написан
  • Как виртуализировать физический сервер CentOs7?

    @rPman
    Хостер тебе дает два файла *.hdd, чем они являются? посекторной копией?
    в менеджере виртуальных машин создаешь машину, настраиваешь количество памяти процессор сеть, добавляешь два диска, каждый из своего файла, запускаешь машину

    если не стартует значит выбрать правильный загрузочный диск в настройках машины либо поменять порядок дисков (я хз как у вас организована была загрузка)

    Если была efi то нужно включить ее поддержку в виртуалке, я не знаю есть ли эта опция у hyper-v, но у других виртуалок типа qemu-kvm/virtualbox поддержка есть
    Ответ написан
    21 комментарий
  • Реплика или iscsi?

    @rPman
    Есть две разные задачи - защита данных и защита непрерывности процесса, т.е. чтобы ваше приложение продолжало работать.

    Каждый инструмент резервирования защищает от своей модели угроз, чаще всего это аппаратные проблемы и проблемы с подключением, но есть к примеру человеческий фактор, админ что то сломал, удалил, не так настроил и т.п. от этого тоже надо как то защищаться.

    Этого легче достичь средствами самого приложения, когда оно само готово к тому что его могут перезапустить, переместить между хостами, данные резервируются, логика дублируется (когда одна и та же задача отправляется сразу нескольким хостам, а затем ответ сравнивается), собираются логи которые можно 'проиграть' и восстановить ситуацию на нужный момент времени и т.п.

    Существуют решения на уровне ОС, позволяющие обеспечить непрерывность работы, защищаясь от сбоев в оборудовании, с помощью виртуальных машин и распределенных NAS.

    В зависимости от того, как много вы готовы потратить на готовые решения или реализацию своих, выбираете кластерную файловую систему (из бесплатных DRBD, как вы понимаете Linux) либо же настраиваете зеркалирование (software raid over iscsi например) и вручную перезапускаете центральный узел (потребует перезапуск и машин, запускаемых с них, с оговорками). В любом случае узел NAS не должен совмещаться с software node, на которых собственно происходит запуск приложений (с оговорками сами диски там могут быть, раздаваемые софтварным iscsi или nbd или aoe...), правило разделяй и властвуй тут действует.

    У виртуальных машин есть High Availability (kvm/xen/vmware/...), позволяет в короткие сроки перемещать виртуальную машину в пределах одного кластера, когда как машины в нем могут географически находиться в разных местах (машина приостанавливается suspend, память копируется, восстаналивается).
    ... и даже это делать налету, синхронизируя оперативную память между master и slave копиями машин (тогда перемещение между нодами в кластере будет секунды занимать) - само собой это накладывает высокие требования к сети. Это дорогие фишки взрослых виртуалок, у vmware

    p.s. к сожалению, выбери два из трех - быстро надежно дешево
    Ответ написан
    Комментировать
  • Как можно играть с двух устройств на одном компьютере удаленно?

    @rPman
    Знаю, что подобное можно реализовать, используя один компьютер, разделив его на два. То есть нужно два монитора, две мыши и две клавиатуры.
    ibik aster, платное (2 места первый год очень дешевое).
    Отличное решение, использую еще со времен windows 7, причем как с двумя видеокартами так и с одной, играли даже в mmorpg игры которые по разному ставят в колеса палки (разные пользователи windows, разные каталоги установки, часто срабатывало), сейчас win10 но я играю мало.

    Ошибочно считать что видеокарта в играх нагружается полностью. Зачастую больше нагрузка приходится на диск и оперативную память, а так же процессор. Поэтому - больше оперативки (минимум 8 но лучше 16гб)и ssd диск.
    Ответ написан
    2 комментария
  • Гипервизор нулевого уровня?

    @rPman
    xen, wmvare, своя ОС + virtualbox/kvm-qemu/lxc/openvz/uml

    по поводу мало ресурсов, сколько то потреблять будут, по факту хост системы это полноценный linux, с готовыми службами управления виртуализацией, как ни странно, заметно минимизировать можно только самому, как пример, серьезно перелопатив initramfs можно внедрить туда какой-нибудь гипервизор, будет ну просто меньше некуда но без удобного управления.
    Ответ написан
    Комментировать
  • Как организовать оптимальную работу виртуальных машин?

    @rPman
    Очень странное решение использовать виртуальные машины ДЛЯ браузера.

    Браузер отлично изолируется профилями операционной системы, мало того можно даже установку для каждого профиля сделать персональную (если нужны разные версии), так как они ставятся в каталог профиля пользователя.

    Посмотрите в биосе, включена ли виртуализация, опция так и называется, при отключенной, накладные расходы на работу виртуальной машины поднимаются на порядок, вместо 20% потерь - 80%

    p.s. при использовании linux можно использовать виртуальные машины, не добавляющих накладные расходы в принципе, все на основе openvz/lxc/chroot и т.п.
    Ответ написан
  • Какой нужно контейнер виртуализации?

    @rPman
    Для windows платформы не так много вариантов, если нет поддержки виртуализации.

    Самый универсальный но дико не эффективный вариант - программная виртуализация, есть у qemu и того же virtualbox. Использовать только если совсем плохо, так как падение производительности до 6-10 крат (напоминаю, что с поддержкой аппаратной виртуализации потери могут быть не больше 10%-30%), зато поддержка любой операционной системы на любом железе и OS.

    Существуют программы песочницы типа sandboxie, но с вероятностью 99% они потребуют поддержку виртуализации либо будут являться очень ненадежной песочницей (не полностью изолированное окружение).

    Только так вы сможете запускать windoows приложения, все остальные варианты - про linux.

    Если у вас 32-битная ревизия windows (даже если winxp) и нужно виртуализовать linux, то воспользуйтесь colinux, этот проект к сожалению больше не поддерживается и не развивается (а жаль, x64 поддержка была бы кстати) но позволяет запускать приложения вообще без потери производительности, это аналог user mode linux, подменяет вызовы ядра и работает как обычное приложение, даже сеть. Фактически это почти полноценная headless (без монитора) виртуальная машина.

    Есть у вас последние версии windows 10 (pro или ultimate ревизии) то вы можете воспользоваться штатной подсистемой linux for windows (добавляется компонента и устанавливается redhat/ubuntu из штатного магазина), это полная аналогия wine наоборот, позволяет запускать бинарники linux без виртуализации, максимальная производительность и поддержка x86/x64 архитектуры.

    p.s. оба этих варианта не умеют графический режим, но можно поставить сторонний xserver (например из пакета cygwin или даже нативный linux xorg на соседней машине/виртуалке) и настроить подключение.

    И конечно же вместо запуска бинарников linux можно установить полностью windows приложения, собранные из исходников linux и запускать свои приложения в нем (собирать, если нужны бинарники). Есть две независимых проекта - mingw (окружение msys) и cygwin. С точки зрения компиляции, это отдельные архитектуры, как linux-x86_64 или cygwin-x86_64 и даже mingw-x86_x64, взаимно не совместимы (нельзя подключать dll).

    Mingw используется, когда нужно собрать приложение, использующее библиотеки из мира linux, но при этом нотация файловых путей должна быть как в windows, и не только, например проще добиться поддержки opengl/opencl или работать с чисто windows directx...

    Cygwin используется, когда приложение почти не имеет поддержки для сборки под windows, в нем симулируется почти полностью linux окружение, даже пути файлов с обратными слешами и нет букв дисков - используется /cygdrive/c. Симуляция cygwin на порядок качественнее чем у mingw, т.е. можно вообще не тратить никаких усилий для портирования приложения, но скорость работы при использовании mingw выше, так как нет лишней прослойки системных вызовов.

    Оба этих окружения позволят запускать приложения php/perl/python/nodejs и они почти наверняка будут работать как ожидается. У обоих есть пакетный менеджер с готовыми бинарниками (у cygwin полнее база) и вы можете установить (и поддерживать обновления) окружение в пару кликов мыши.
    Ответ написан
    Комментировать
  • Windows 7 x32 после обновления запускается только в безопасном режиме, что делать?

    @rPman
    Если запускаетесь в safe mode уже хорошо, идите в панель управления - программы и компоненты - просмотр установленных обновлений
    и удаляете все, по дате, после которых появились проблемы

    в win10 даже есть для этого специальный мастер, позволяющий отменить обновление, даже если это смена ревизии.

    Точки восстановления делаются всегда при установке каждого обновления, драйвера и даже приложения, правда вы могли отключить их принудительно, это в свойства системы - защита системы

    p.s. а журнал что говорит?
    Ответ написан
    3 комментария
  • Аналог дифференцированных виртуальных дисков в Linux?

    @rPman
    unix way - не пытайтесь найти готовый комбаин, собирайте ваше решение из кирпичиков. Пусть за iscsi отвечает тот же istgt а за снапшоты - btrfs.

    Если закрыть глаза именно на iscsi (мало ли вы виртуальные машины через них подключаете локально, видел я такие конструкции) У qemu/kvm есть опции когда можно подключить диск но все изменения пишутся в отдельный файл. То же самое есть у всех крупных систем виртуализации, правда называется везде по разному.

    Если универсально, то исторически lvm позволяет делать снапшоты на блочных устройствах, но за счет значительного понижения производительности, т.е. вы можете создать 100500 снапшотов на основе вашего базового диска, и каждый отдать в свою отдельную машину. Не рекомендую для вашего случая 256 активных снапшотов это будет фейл.

    Вы можете воспользоваться copy on write файловыми системами например btrfs или zfs (хуже в linux работает), в них создание снапшота не понижает производительность (т.е. за это не приходится платить), правда сами файловые системы менее шустрые, так как сильно фрагментируют контент, но если сравнивать с lvm то на порядок эффективнее.

    p.s. windows машины очень активно пишут при обновлениях, гигабайтами, наступит момент, когда весь этот сыр бор будет создавать больше проблем чем пользы.
    btrfs и zfs имеют фичу - дедупликация, т.е. вы просто рядом складываете все копии ваших контейнеров а система сама находит одинаковые блоки и оптимизирует, правда в зачаточном уровне, btrfs только offline (это относительно новая фича, почти нет нормальных утилит, но если ставить самую свежую версию из исходников, там много что добавили вкусного) а у zfs под linux жутко низкая производительность (я игрался на десктопном железе, не рекомендуется для hdd только ssd), причем ничем не оправданная, и дикое потребление оперативной памяти (70 байт на блок, т.е. для 4кб блоков 1тб hdd будет кушать 18гб ram, правда никто не делает 4к блоки, 16 или 32 да), она будет оправдана в вашем случае и автоматически сократит занятое место одинаковыми машинами.

    p.p.s. только что установленный windows со включенным сжатием zfs занимает на диске 8гб места, btrfs чуть больше... через год использования место, занимаемое контейнером (никаких программ не установлено, это машина была исключительно для запуска google chrome) - 26гб (внутри контейнера 46гб).
    Ответ написан
    Комментировать
  • Один системник - два игрока. Как?

    @rPman
    Решение уже давно есть для windows 7..10 (и кажется даже для xp) - aster от ibik.ru
    Вы подключаете к одному компьютеру несколько мониторов, клавиатур и мышей, настраиваете каждому пользователя системы и сидите за одним компьютером как за несколькими независимыми. hdmi и usb позволяют разнести пользователей до 10 метров (по середине компьютер).

    Когда то давно на windows7 очень успешно им пользовался для 2 человек, сначала с 1 видеокартой потом с двумя, игры шли без проблем... вообще проблем не было, одни плюсы.

    Не очень секурно, вставленная флешка доступна сразу всем. Интернет тоже общий но я точно помню что то aster для этого предлагал. Со звуком да.. если у вас нет мониторов со своими колонками (hdmi) то нужны дополнительные звуковые карты.

    Возможно win10 добавит проблем,... изучите их форум.

    Альтернатив для windows пока не существует, либо они сложны, не эффективны или просто дороги.
    Ответ написан
    2 комментария