Проблемы с виртуальной машиной

Не запускается VirtualBox: причины и решения

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

Ошибка запуска VirtualBox: основные причины

Различные факторы могут повлиять на работу программы ВиртуалБокс. Она может перестать работать, даже если без труда запускалась совсем недавно или в момент после установки.

Чаще всего пользователи сталкиваются с тем, что не могут запустить именно виртуальную машину, в то время как сам VirtualBox Менеджер работает в обычном режиме. Но в некоторых случаях не запускается и само окно, позволяющее создавать виртуальные машины и управлять ими.

Давайте разберемся в том, как устранить эти ошибки.

Ситуация 1: Невозможно выполнить первый запуск виртуальной машины

Проблема: Когда установка самой программы ВиртуалБокс и создание виртуальной машины прошли успешно, наступает черед установки операционной системы. Обычно случается так, что при попытке первого запуска созданной машины появляется такая ошибка:

«Аппаратное ускорение (VT-x/AMD-V) не доступно в Вашей системе.»

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

Решение: необходимо включить функцию поддержки виртуализации в BIOS.

Для нестандартных БИОС путь может быть другим:

Ситуация 2: Не запускается VirtualBox Менеджер

Проблема: Менеджер ВиртуалБокса не реагирует на попытку запуска, и при этом не выдает никаких ошибок. Если заглянуть в «Просмотр событий», то можно увидеть там запись, свидетельствующую об ошибке запуска.

Решение: Откат, обновление или переустановка VirtualBox.

Если ваша версия VirtualBox устарела или инсталлировалась/обновилась с ошибками, то ее достаточно переустановить. Виртуальные машины с установленными гостевыми ОС при этом никуда не денутся.

Простейший способ — восстановить или удалить ВиртуалБокс через установочный файл. Запустите его, и выберите:

В некоторых случаях конкретные версии ВиртуалБокса отказываются корректно работать с отдельными конфигурациями ПК. Есть два выхода:

Не забудьте сделать резервные копии важных папок.

Запустите установочный файл или скачайте старую версию с официального сайта по этой ссылке с архивными релизами.

Ситуация 3: VirtualBox не запускается после обновления ОС

Проблема: В результате последнего обновления операционной системы VB Менеджер не открывается или не запускается виртуальная машина.

Решение: Ожидание новых обновлений.

Операционная система может обновиться и стать несовместимой с текущей версией VirtualBox. Обычно в таких случаях разработчики оперативно выпускают обновления ВиртуалБокс, устраняющие такую проблему.

Ситуация 4: Некоторые виртуальные машины не запускаются

Проблема: при попытке запуска определенных виртуальных машин появляется ошибка или BSOD.

Решение: отключение Hyper-V.

Включенный гипервизор мешает запуску виртуальной машины.

bcdedit /set hypervisorlaunchtype off

Ситуация 5: Ошибки с kernel driver

Проблема: При попытке запуска виртуальной машины появляется ошибка:

«Cannot access the kernel driver! Make sure the kernel module has been loaded successfully.»

Решение: переустановка или обновление VirtualBox.

Переустановить текущую версию или обновить ВиртуалБокс до новой сборки можно способом, указанным в «Ситуации 2».

Проблема: Вместо запуска машины с гостевой ОС (свойственно для Linux) появляется ошибка:

«Kernel driver not installed».

Решение: Отключение Secure Boot.

У пользователей с UEFI вместо обычного Award или AMI BIOS есть функция Secure Boot. Она запрещает запуск не авторизованных ОС и ПО.

AdvancedSystem ConfigurationSecure BootDisabled.

Если у вас ноутбук Acer, то отключить данную настройку просто так не получится.

Сперва зайдите на вкладку Security, используя Set Supervisor Password, установите пароль, а затем попробуйте отключить Secure Boot.

Ситуация 6: Вместо виртуальной машины запускается UEFI Interactive Shell

Проблема: Не запускается гостевая ОС, и вместо нее появляется интерактивная консоль.

Решение: Изменение настроек виртуальной машины.

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

Помимо этой статьи, на сайте еще 12483 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Источник

Почему виртуалки “на вырост” начинают тормозить, и что с этим делать новичку

Клиенты все чаще мигрируют в облака в погоне за гибкостью: здесь намного проще добавить диск, память и процессоры, если чего-то не хватает. Но иногда новички обнаруживают, что добавление ресурсов перестает помогать. Скорость работы не растет, а с бэкапом и восстановлением начинаются проблемы.

Сегодня вместе с @kvolodin мы расскажем, почему бесконечное увеличение ресурсов ВМ может вредить пользователям и как спланировать рост производительности очевидными, но действенными способами. Статья полезна тем, кто переехал или планирует переезд в облако и еще знакомится с нюансами облачной среды.

Очевидные причины: ограничения железа и бэкапов

Сейчас в нашем облаке добавление ресурсов сверх лимита можно ограничить на уровне софта. Если кто-то попробует выйти за пределы, сразу получит сообщение в интерфейсе Cloud Director:

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

Много лет назад мы предоставили клиенту квоту в 20 ТБ и предупредили про ограничение на диск в 16 ТБ. Резервное копирование данных делали с помощью Veeam Backup&Replication. Когда клиент вышел за пределы диска в 16 ТБ, все задачи на создание бэкапов просто зависли. Veeam не успевал забэкапить большую ВМ и на всякий случай оставлял неполный снэпшот, а затем создавал новый. Дерево снэпшотов стало расти слишком быстро, общая производительность диска тоже упала. Пришлось полночи заново создавать дерево снэпшотов, а затем переносить данные на диски поменьше.

В те времена от подобных инцидентов нас защищал мониторинг. Мы сразу видели непорядок на дашбордах и обращали внимание клиента на проблему. Трудность была в том, что в случае IaaS сами виртуалки оставались ответственностью клиента. Инженеру клиента нужно было самому пересоздавать ВМ, иногда с большим трудом.

Клиенту выделили квоту в 40 ТБ на СХД, а для диска ВМ прописали ограничение в 20 ТБ. Администратор клиента создал ВМ в 30 ТБ и разметил все дисковое пространство одним диском. Техподдержка обнаружила проблему, сообщила клиенту, что нужно пересоздать ВМ с дисками меньшего размера, но администраторы долго не выходили на связь.

В это время данные начали записываться на созданный диск большими темпами. Пока на СХД было свободное место, мы увеличивали размер дата-стора и ждали ответа от клиента. Но если бы расширять дата-стор дальше было невозможно, клиенту пришлось бы рисковать данными. Нужно было бы создать новый диск и перегнать данные на него. Миграция такой большой ВМ могла потребовать несколько дней, и оставалась вероятность неудачного переезда.

Читайте также:  Полная мойка машины с салоном

Базовые лимиты защищают клиента от многих проблем и позволяют обслуживать железо в штатном режиме. Мы не допускаем разрастания ВМ до пределов физического диска и избегаем трудностей с миграцией. Добавить ресурсы по запросу клиента по-прежнему можно, но только если в этом правда есть необходимость.

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

Неочевидная работа гипервизора

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

У клиента регулярно возникали пиковые периоды активности. Раз в месяц нагрузка на системы увеличивалась и требовала больше процессоров. Клиент решил не отключать эти процессоры после пика, а оставить их про запас. Но в период низкой активности производительность упала и не давала выполнять рутинные задачи. Дело в том, что гипервизор “отодвинул” недозагруженные системы на второй план. Так работает планировщик: если ВМ не требует ресурсов, то в очереди она спускается ниже.

Клиенту облака по умолчанию доступна только информация из диспетчера задач и монитора ресурсов. Бывает и так, что на ОС клиент видит загрузку части ядер на 100%. В это же время мы на гипервизоре видим, что часть ядер не используется, потому что приложение не рассчитано на многопоточность. В таких ситуациях парадоксальным образом помогает именно уменьшение ресурсов до необходимого и достаточного уровня. После этого гипервизор лучше распределяет небольшие ВМ в очередях.

Некорректный сайзинг приложения в облаке

К сожалению, переезд приложения с физических хостов не всегда возможен “в лоб”. Даже если все работало на физических 24 процессорах, столько же процессоров в облаке не всегда решают проблему.

Один из клиентов перед переездом на новое железо решил временно разместить в облаке виртуальную АТС. Мы заглянули в документацию вендора и обнаружили явную несовместимость с vCloud Director. Производители АТС изначально не гарантировали стабильную работу своего приложения в облачной среде. Тем не менее, нашим инженерам удалось настроить работу софта с помощью нескольких хитростей. Клиент спокойно работал в облаке, пока не дождался поставки собственного железа. Но если бы он захотел внести изменения в настройки, возникли бы трудности.

У крупных производителей софта несовместимость с облаком сразу прописана в документах. Менее очевидно дело обстоит с самописным ПО.

Клиент заказал виртуальную машину для переезда собственного приложения в облако. Через пару месяцев работы софт начал сильно тормозить. При аудите выяснилось, что объемные файлы по умолчанию сохраняются в одну директорию и нагружают файловую систему. За несколько месяцев там накопились уже миллионы файлов, и для решения проблемы понадобилась новая архитектура с несколькими хранилищами.

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

Например, бывают ситуации, когда пользователь привык к быстрой работе на ноутбуке с высокочастотными процессорами, а в облаке сталкивается с низкой скоростью. Характеристики Enterprise-железа в дата-центре рассчитаны на долгосрочную работу в режиме 24/7 и не допускают пограничных состояний. Если такой пользователь разгонял процессоры на своем ноутбуке до опасного максимума, то в облаке он не сможет добиться тех же скоростей от похожего процессора.

Случается и так, что приложение рассчитано на высоконагруженную базу, но размещается в облаке на SATA-дисках. Клиент видит загрузку процессоров и увеличивает ресурс CPU, не подозревая проблемы именно с дисками.

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

Один из клиентов хранил в своей базе данные трекинговой системы за три года ― такой срок хранения был предусмотрен нормативом. После переезда в облако удалось разделить хранилище на “холодное” и “горячее”. Редко используемые данные перемещались на медленные и дешевые “холодные” диски, а востребованная информация оставалась на быстрых дисках в “горячем” хранилище.

Подозрительная активность на ВМ

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

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

Откуда берутся лимиты на ресурсы в облаке

Ограничения на диск

Читайте также:  Появление автомобиля в ссср

Есть технические ограничения СХД. Яркий пример: блочный том многих моделей NetApp не может быть более 16 ТБ.

Мы как провайдер провели тесты производительности СХД и рассчитали оптимальный размер дата-стора.

Инфраструктура резервного копирования лучше справляется с бэкапом нескольких мелких объектов, чем одного большого.

Ограничения на CPU и память

Ограничен размер физического хоста, на котором располагаются ВМ клиентов.

При размере хоста 144 vCPU и 2 TБ памяти ВМ большего размера не получится создать при всем желании. (Cпасибо, кэп!)

Для оптимального обращения к памяти мы учитываем особенности работы мультипроцессорных систем. Мы уже рассказывали об этом в статье про первую виртуальную машину.

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

С помощью некоторых лимитов мы можем управлять виртуальной платформой и предоставлять предсказуемый сервис с соблюдением SLA.

Ограничения на IOPS

В облаке также встречаются клиенты, у которых намного выше среднего параметры IOPS: количество операций ввода/вывода. Чаще всего это происходит в трех случаях:

Клиент решил протестировать выделенные мощности на больших нагрузках.

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

Клиент установил высокопроизводительное приложение.

На любой из этих случаев мы задаем ограничения потребляемых дисковых мощностей, опираясь на результаты нагрузочного тестирования СХД. Сейчас можем ограничить каждый диск фиксированным значением IOPS или исходить из IOPS на ГБ.

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

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

До переезда протестировать работу приложения в облачной инфраструктуре. Большинство провайдеров позволяют клиентам брать пробный период и запускать синтетические тесты.

Не стесняться обращаться в техподдержку. Инженеры могут оценить производительность со стороны гипервизора и дать рекомендации.

Расти маленькими шагами: увеличить диски намного проще, чем резко их уменьшить. Увеличивать процессоры тоже лучше постепенно, начинать с одного ядра.

Расти не вертикально, а горизонтально. Например, не добавлять 8 процессоров на одну ВМ, а создать 4 ВМ по 2 процессора на каждой. Вдобавок это уменьшит площадь отказа.

Ставить виртуальные машины на внутренний мониторинг. В этом случае клиент может выбрать наиболее важные показатели работы ВМ и быстро получать оповещения об их состоянии. Это позволит вычислять неочевидные проблемы, которые не заметны на общем мониторинге.

Источник

Базовый траблшутинг в среде VMware vSphere или что делать, если тормозит ВМ

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

Типовая проблема «виртуализаторов» — владелец сервиса, заказчик или пользователь жалуется, что у него «тормозит» виртуальная машина. Так как виртуализация предполагает консолидацию большого количества ВМ на базе одного комплекта аппаратных ресурсов, переподписку (overprovision — когда мы предполагаем, что серверы не затребуют одновременно максимум своих ресурсов, а значит, например, в 40 ГБ физической памяти мы можем натолкать не 10 серверов по 4 ГБ RAM, а 15, используя Dynamic Memory), а кроме того, серверы могут тормозить и из-за ошибок в программных компонентах и их настройках, то каждый раз приходится решать за что хвататься и куда смотреть в первую очередь. Особенно, если с таким ёмким описанием проблемы, как «тормозит машина» не предоставлено никакой диагностической информации, как чаще всего и бывает. Под катом небольшое руководство для этого случая.
Конечно, всё зависит от специфичности реализации конкретной инфраструктуры, но практика показывает, что в большинстве случаев имеет смысл следующая последовательность анализа подсистем ВМ:

На практике, до 4-го этапа почти никогда не доходит, после третьего (а то и после первого) имеет смысл запускать (или запрашивать) параллельную диагностику гостевой ОС, но диски стоит проверить сразу — самая значительная часть инцидентов с жалобами на производительность связано с ними. Если, конечно, у вас не All-Flash массив.

А теперь чуть подробнее по каждому пункту.

1. Диски (подсистема хранения)

Самый ключевой тут показатель — это Latency. Задержка времени отклика. Она складывается из большого количества промежуточных элементов и зависит от большого количества факторов. Сюда входит время отклика гипервизора, время прохождения сигнала по кабелям и промежуточным устройствам (коммутаторы, адаптеры и контроллеры), время нахождения в очередях на всех этих устройствах, если нагрузка на них превышает норму и ещё некоторые нюансы, такие как повреждения оборудования. Однако, оставив нюансы для расширенной диагностики, требуемой в редких случаях, можно выделить простой общий показатель — время задержки от ВМ до дисков.

Читайте также:  Как узнать находится ли авто в обременении
Perfomance Tab

(закладка Perfomance в vSphere Client и счетчики производительности).

Наиболее часто используемые счётчики группы Disk:

Highest Latency — норма до 10-15 мс. Если регулярно выше, надо что-то менять, хотя разовые пики не страшны;
Average write requests per second;
Average read requests per second.

Наиболее часто используемые счётчики группы Virtual Disk:

Read/Write latency;
Average number of outstanding read/write requests — количество одновременных IO-запросов (если их число держится выше 30 в сумме на датастор или на сервер, это будет приводить к дополнительным задержкам);

ESXTop

Консольная утилита ESX/ESXi. Выдаёт целую кучу диагностической информации об отдельно взятом ESXi. Базовую информацию по использованию можно получить, нажав h после запуска утилиты.

В плане диагностики дисковой подсистемы будет полезен контекст виртуальных дисков (нажать v) и контекст HBA-адаптеров (нажать d). В последнем случае стоит обратить внимание на следующие показатели:

KAVG (Kernel Latency Avg) — время отклика гипервизора (норма — до 1 мс);
DAVG (Device Latency Avg) — время отклика от HBA до дисков (норма — 10-15мс);
GAVG (Guest Latency Avg) — время отклика для гостевой системы = сумма KAVG и DAVG

Кстати, в этой же области исследований стоит сразу проверить нет ли у ВМ снапшота. А то и нескольких. Они могут стать проблемой не только паденрия производительности, но и сбоев операций резервного копирования, клонирования и миграции.

2. Процессор

Здесь аналогичный по важности дисковым задержкам показатель — CPU Ready. Также стоит обращать внимание на Used, Wait и Co-Stop. Мониторить можно также через Perfomance Tab или ESXtop.

CPU Ready (%RDY) — % времени, когда ВМ готова производить какие-то вычисления, но физические процессоры в данный момент заняты другими процессами (системными или другими ВМ) и vCPU виртуальной машины находятся в режиме ожидания. Нормой считается значение до 10%. При росте этого показателя выше 40% развивается высокая вероятность сбоев и зависаний гостевой ОС. Причиной вынужденного простоя может стать:

Wait (%WAIT) — % времени, в течение которого ВМ ждёт окончания какой-то активности VMkernel. Чаще всего это дисковая IO-активность. Высокие показатели этого счётчика могут говорить о недостаточно быстром отклике от датастора. Также проблему могут вызывать некорректная работа USB или COM-портов или виртуальный CD/DVD-приводы, в который замонтирован отсутствующий ныне ISO.

Used (%USED) — % времени, в течение которого машина реально работала. Если он около нуля, значит машина просто стоит или её пересайзили процессорами. Если он около 100 (на каждый vCPU), значит или недосайзили, или в ней что-то зациклилось (если она ещё и не откликается при этом), или сейчас там лопатится какой-то квартальный отчёт. Этот показатель стоит изучать при размышлении на тему «дать ли ВМ ещё процессоров, чтоб быстрее работала?». Если у неё 4 ядра и ни одно не задействовано более чем на 50%, то 8 ядер её скорее всего не ускорят. Возможно даже замедлят (см. CPU Ready).

Инструменты диагностики те же.

Perfomance Tab

Удобно, что можно посмотреть данные не только по машине в целом, но и по каждому ядру. Кроме того, доступна статистика за период. Однако, информация предоставляется не в процентах, а в миллисекундах. Так как данные собираются не в real-time, а за определённый интервал, отображается, сколько именно mc процессор находился в том или ином состоянии. Перевести в проценты можно разделив значение на длину интервала и умножив на 100%.

Пример: на рисунке диаграмма с интервалом 20 секунд (real-time), то есть 20 000 мс. То есть среднее CPU Ready будет 50288 / 20000 * 100% = 251.44%. Так как у машины 4 ядра, а не одно, то результат делим на 4 и получаем почти 63%. Машина очень страдает. А всё потому, что лежит на третьем уровне вложенности Resource Pools с низкими shares на каждом.

Ещё раз, формула преобразования: / / * 100%. Получается 5% на 1000 мс для одного ядра.

ESXTop

Тут значение указано сразу в %. Только оно указано сразу в сумме для всех ядер, так что не стоит пугаться чисел больше 100. Делите на количество vCPU машины.

3. Оперативная память

Базовая диагностика здесь простая — да или нет. Если есть факт balooning’а значит хосту не хватает памяти и процессы гостевых ОС страдают, потому что активно используется файл подкачки. Если есть факт свопинга на уровне гипервизора, надо срочно принимать меры — машина попавшая в своп впадает в кому в 100% случаев (по крайней мере моей практики). Вышеуказанные факты позволяют определить такие счётчики как

Balloon (MCTLSZ) — количество памяти, вытянутое baloon-драйвером из гостевых ОС.

4. Сеть

Чтобы проблемы были на уровне сети, в случае жалоб на отдельную виртуальную машину, я в своей практике помню только один случай — когда в VDI использовалась какая-то дешёвая веб-камера, гнавшая несжатый поток видео и забивавшая все 100 Мб/с.

Стоит мониторить такие счётчики:

Transmit Dropped Packets (%DRPTX) — количество (или процент в случае esxtop) отброшенных отправленных пакетов;

Receive Dropped Packets (%DRPRX) — количество (процент) отброшенных принятых пакетов.

Ненулевое их значение, возникающее на регулярной основе говорит о некорректной работе сетевых устройств или некорректной их настройке.

Для базовой диагностики, покрывающей более половины (пожалуй, до 90%) обращений или собственных потребностей при диагностике и тестировании, этого достаточно.

Источник

Автомобильный онлайн портал