无法在 Eucalyptus 上启动 Oneiric x64 实例

无法在 Eucalyptus 上启动 Oneiric x64 实例

编辑:经过几个小时,我发现问题与 Eucalyptus 无关。看起来图像有问题。非常,非常有缺陷。最后会提供更多细节。我没能修复它,我会提交错误报告。

编辑2:我设法修复了它,它显然起作用了。


我有一个运行 Ubuntu Server Natty (11.04) x64 的 4 台机器集群。我已经在每台机器上从安装 CD 安装了“Ubuntu Enterprise Cloud”(然后对其进行了更新)。云似乎运行良好,我有很多虚拟机在其上运行 Natty 服务器。

现在我想在虚拟机中运行 Oneiric,但不知为何却无法运行。

我从以下网址下载了 Oneiric (x64) 的图像http://cloud-images.ubuntu.com/oneiric/current/uec-publish-tarball oneiric-server-cloudimg-amd64.tar.gz oneiric-server-cloudimg-amd64,像我对 Natty 所做的那样发布了它 ( ),然后尝试euca-run-instances -n 1 -k my-key -t m1.small -z my-cloud emi-XXXXXXXX使用 Oneiric 的图像启动一个实例 (),但该实例无法启动。

euca-get-console-output得到以下信息:

[    0.461269] VFS: Cannot open root device "sda1" or unknown-block(0,0)
[    0.462388] Please append a correct "root=" boot option; here are the available partitions:
[    0.463855] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    0.465331] Pid: 1, comm: swapper Not tainted 3.0.0-13-generic #22-Ubuntu
[    0.466526] Call Trace:
[    0.466989]  [<ffffffff815d3ee5>] panic+0x91/0x194
[    0.467860]  [<ffffffff81ad1031>] mount_block_root+0xdc/0x18e
[    0.468891]  [<ffffffff81ad126a>] mount_root+0x54/0x59
[    0.469829]  [<ffffffff81ad13dc>] prepare_namespace+0x16d/0x1a7
[    0.470883]  [<ffffffff81ad0d76>] kernel_init+0x140/0x145
[    0.471837]  [<ffffffff815f38e4>] kernel_thread_helper+0x4/0x10
[    0.472889]  [<ffffffff81ad0c36>] ? start_kernel+0x3df/0x3df
[    0.473884]  [<ffffffff815f38e0>] ? gs_change+0x13/0x13

文件系统标签为“cloudimg-rootfs”,在图像内部,/etc/fstab 和 /boot/grub/grub.cfg 始终通过标签引用图像,一切似乎都是正确的,但内核却说它找不到根文件系统。

我花了很多时间在谷歌上搜索,但一无所获。我在 #ubuntu-server 上问过,但没人知道该怎么办。我在 #eucalyptus 上问过,但根本没有得到任何答案。

关于为什么会发生这种情况以及如何解决它,您有什么想法吗?

谢谢


编辑:经过几个小时,我发现问题与 Eucalyptus 无关。看起来图像有问题。非常,非常有缺陷

第一个问题是镜像中的内核是一个-generic内核,而我认为它应该是-virtual。我进入镜像,删除软件包-generic,用软件包替换它-virtual。然后我提取了新内核(并替换了 tarball 附带的原始内核 (-generic)),因为我在发布和启动 Eucalyptus 镜像时需要它。

上述问题已得到解决。

但随后,控制台开始显示以下内容:

mount: mount point ext4 does not exist

如果你检查图像中的 /etc/fstab 文件,它会显示:

LABEL=cloudimg-rootfs  ext4 defaults    0   1

该死,我的挂载点在哪里?请注意,它/proc也丢失了。

好吧,当您认为一切结束时,您会注意到您的实例将没有网络连接。让我们检查一下 /etc/network/interface:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

哦天哪!缺少 eth0...我在这里停了下来。我再也受不了了。我放弃了。

看起来 Canonical 只是忘记正确设置此映像。起初,我以为:“我是不是错误地下载了服务器映像?”,但事实并非如此,我仔细检查了一下。它确实是云映像,它甚至安装了“cloud-init”(默认情况下,服务器映像上没有安装)。他们只是忘了准备它。

我将提交一个错误(并在完成后在此处引用它),并希望他们尽快修复它!


编辑2:看起来网络配置是最后缺少的东西。我决定用上面的修复程序测试它,它启动正常!但是,我一点也不知道图像现在是否可以使用……

答案1

错误报告位于:https://bugs.launchpad.net/ubuntu/+bug/896772

我希望它能尽快被修复!

相关内容