在 XenServer 上用 ISO 安装虚拟机

Citrix XenServer 是企业级面向云计算的虚拟平台,有 XenServer, Essentials for XenServer, Enterprise Edition 和 Platinum Edition 三种版本,其中 XenServer 是免费的,和 VMware ESXi 是同级别的竞争产品。XenServer 的安装过程和 VMware ESXi 一样容易,安装完后界面如下。和 VMware ESXi 类似,主要的操作和配置都可以在一个另外一台装有 XenCenter 客户端的机器上完成(和 VMware vShpere Client 一样)。

xenserver

和 VMware ESXi 有点不同的是,XenServer 不能在 XenCenter 客户端管理界面里直接导入 iso 后安装操作系统,需要先把这些 iso 预存到另一台机器上,然后用 NFS 的方式访问。所以我们先在其他的机器开设一个 iso 目录并收集一些 iso 文件,用 NFS 导出这个 iso 目录,然后在 XenServer 服务器上手动把这个目录挂上,这样才能在 XenServer 和 XenCenter 管理界面里看到所有的 iso 文件,也就是说 XenServer 鼓励你把 iso 文件分开存储到另外一台单独服务器以方便管理,对下面的 NFS 操作不清楚的话可以参考 在 CentOS 上安装和配置 NFS 4.0

# vi /etc/export
/home/vpsee/iso 172.16.240.164(rw,sync,no_root_squash) \
172.16.240.164(rw,sync,no_root_squash)

# /etc/init.d/portmap restart
# /etc/init.d/nfs restart

在 NFS 服务器上设置权限,允许 XenServer 服务器访问 NFS:

# vi /etc/hosts.deny
portmap:ALL

# vi /etc/hosts.allow
portmap:172.16.240.0/255.255.254.0

用 ssh 登录 XenServer 后挂在 NFS 服务器上的目录:

$ ssh root@172.16.240.164
root@172.16.240.164's password:

# xe-mount-iso-sr 172.16.240.10:/home/vpsee/iso

成功挂载后,在 XenCenter 控制台上(目前 XenCenter 只有 Windows 版本)就可以看到所有的 iso 了:

xencenter

剩下就好办了,有了 iso 就可以直接安装操作系统了,注意如果机器 CPU 不支持全虚拟(Intel VT 或 AMD SVM)的话会导致安装失败、报错:

xenserver-imtxsji: HVM is required for this operation

INVALID_SOURCE - Unable to access a required file in the specified repository:
file:///timp/cdrom-repo-RZ1Yem/install.386/xen/vmlinuz.

如果是这样的话就只能通过网络(Install from URL)安装半虚拟系统了。

评论 (18 Comments)

  1. 哈哈 不过 美国一般都是机房内部自己有机器 ,要是挂载的 NFS在国内的机器不是慢死,安装一个系统不的好几个小时 ,
    如果 CPU支持的话 可以 在 本机挂载iso 速度很快的,

  2. 不需要挂载本机的 iso 啊。XenServer 服务器 和 ISO NFS 服务器在同一个机房就可以了,美国机房与机房之间速度很快,就算不在一个机房也很快。

  3. vpsee 大大 不知道您是否 可以介绍一下 关于 XenServer 的 自动开通 和流量检测 方面的知识哦,俺很想知道别人是怎摸搞的 ,谢谢

  4. 呵呵,这不是一两句话可以说得完的啊:)

  5. Vpsee Sir? 不知道你认不认识下站的人呢?
    http://www.opvps.com/

  6. 不认识也

  7. 弱问一句,把ISO文件放在别的机器上然后挂成NFS是必须的么?不像vmware esxi那样可以在本地datastore里上传文件?

  8. 对,是必须的,这一点 vmware esxi 做的更好一些。

  9. 唉,XenServer貌似在不少方面都不如ESXi啊。

  10. 我还是不会挂,就差这步了,可以加我qq吗,虚心请教qq519299951
    我博客www.yangyufei.com
    百度新博客hi.baidu.com/phpiis

  11. 需要把 iso 先放在 nfs 服务器上再挂载。

  12. @vpsee
    XenServer有免费版本的,而且通过XenCenter管理起来很方便,不知道vpsee为何还坚守OSS的xen?

  13. 奇怪,我的XenServer也报这样的错误了。
    但是我的XenServer是支持VT技术的。已经安装过CentOS5.5没问题。
    然而,最新的XenServer6,有个CentOS6选项,一安装就报错:
    2012-1-7 19:29:28 Error: Starting VM ‘CentOS 6.0 (32-bit) (experimental) (1)’ – INVALID_SOURCE – Unable to access a required file in the specified repository: file:///tmp/cdrom-repo-RG9jGR/isolinux/vmlinuz.

  14. @xuxu
    可以通过挂载 iso 到某个地方
    mount -t iso9660 -o loop /opt/iso/centos6.iso /export/isostore/centos6
    然后从 myxenserver:/export/isostore/centos 安装。

  15. 建立好ISO文件夹并定义好后,直接用wincap上传到这个目录,然后更新下就OK了。

  16. 你好,想问一下,xencenter的两个不同的资源池能合并吗?想迁移在不同的资源池中的机器应该怎么迁移?

  17. @goingstudy
    貌似不能合并。直接用 xe vm-copy 拷贝吧。

  18. 你好:想问一下,如何在xenserver上安装kylin_14系统呢?用iso镜像库中的ISO文件,安装总出错:错误: 正在启动 VM“kilin” – 此 VM 的引导加载程序返回错误 — 是否已成功安装 VM? INVALID_SOURCE
    Unable to access a required file in the specified repository: file:///tmp/cdrom-repo-aSS8zd/install/vmlinuz.
    不知什么原因,请高手指明!谢谢!

发表评论