azure - 我可以在 Azure VM 中运行 Virtualbox
问题描述
我正在寻找以下是否可能。
- 在 Azure (Windows 10) 中创建 VM,安装 Virtual Box 并在 Virtualbox 中启动 VM
- 在 Azure (Linux) 中创建 VM,安装 Virtual Box 并在 Virtualbox 中启动 VM
因为当我尝试它时,VM崩溃了。我正在失去与虚拟机的连接。我已经尝试过列表中的几个选项,这里的 Microsft页面Dv3 上的 vms 大小是我尝试过的,但是它没有任何区别。我看到某些地方不支持嵌套虚拟化之类的声明,并且还看到这样的声明已经改变并且现在得到支持。截止到 2020 年 1 月,如果有人可以对此发表评论,我们将不胜感激
编辑:日期 Jan-31-2020:
我启用了 Hyper-V 并做了一个 vagrant up,现在看到了这个错误
> PS C:\Users\sbolla\bionictest\.vagrant> vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Checking if box 'hashicorp/bionic64' version '1.0.282' is up to date...
==> default: Clearing any previously set forwarded ports...
==> default: Fixed port collision for 22 => 2222. Now on port 2200.
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 22 (guest) => 2200 (host) (adapter 1)
==> default: Booting VM...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["startvm", "1580af6f-ce61-491c-8a8a-93dbc298cef4", "--type", "headless"]
Stderr: VBoxManage.exe: error: Raw-mode is unavailable courtesy of Hyper-V. (VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component ConsoleWrap, interface IConsole
PS C:\Users\sbolla\bionictest\.vagrant>
解决方案
是的,您可以在 Azure 中运行 Virtualbox,它有两个先决条件:
- 主机 VM 的大小应为“ v3 ”
- 根据 MS 文章,嵌套虚拟化仅在 Windows 10 和 Windows Server 2016 上受支持。 https://docs.microsoft.com/en-us/azure/virtual-machines/windows/nested-virtualization
截至 2020 年 7 月 7 日,嵌套虚拟化支持如下:
- VMware - 否
- VirtualBox - 是的
- Hyper-V - 是的
我已经通过安装 Kali Linux 在 Windows 10 上进行了尝试和测试,是的,它可以在 Hyper-V 和 VirtualBox 上运行,但我面临的问题是它非常不稳定。我的主机时不时重启,第一次重启后嵌套虚拟机的性能非常糟糕。目前,我不确定是只有我面临这样的问题,还是每个人都面临这样的问题。
尚未在 Linux 主机上尝试过 VirtualBox。
推荐阅读
- python - 从边缘计算缺失的像素值
- python - 为 jinja2 模板值设置空变量
- javascript - javascript如何向对象添加函数
- vba - 如何在Excel中合并具有相同数据的相邻列?
- ios - Swift 4 BLE 中央管理器 didConnect
- javascript - 抛出嵌套的异步函数(javascript)
- c# - XML字符串到c#对象不返回数据
- javascript - 无法使用 ajax 显示根据 id 的状态
- android - 增加 Android 系统应用程序的可用堆内存
- hyperledger-composer - 避免历史记录 - Hyperledger Composer