使用kvm制作Eucalyptus镜像(CentOS 6.5为例)

 

1、前言

  Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) 是一种开源的软件基础结构,用来通过计算集群或工作站群实现弹性的、实用的云计算。它最初是美国加利福尼亚大学 Santa Barbara 计算机科学学院的一个研究项目,现在已经商业化,发展成为了 Eucalyptus Systems Inc。不过,Eucalyptus 仍然按开源项目那样维护和开发。

  我们这里所要制作的镜像是桉树实例启动的模板,需要在镜像模板中提前配置好桉树管理工具及相关软件,然后注册到桉树中方可使用。创建镜像我们建议在NC节点上执行,需停止该节点上所有实例,以及节点服务,再进行相关创建工作。

 

2、前期准备

桉树环境

(1)、版本:4.0.0

(2)、节点使用情况

说明:建议在NC节点上进行制作工作,并且NC节点服务需关闭,关闭会导致该节点上实例永久性消失(PS:实例没有做持久化,一旦停止就会消失)。所以我们这里制作实例使用的是没有被分配节点的63服务器。

service eucalyptus-nc stop //关闭NC节点服务

工具软件

关于相关工具的使用上我们提供了两种方案,大家可依据自己喜好决定采用哪一种。制作Eucalyptus Centos6.5镜像我们采用第二种方案演示。

方案一:MobaXterm

MobaXterm 官方下载地址:http://mobaxterm.mobatek.net/download-home-edition.html  绿色版下载

注:MobaXterm是一个X服务器和一组的Unix命令(GNU/ Cygwin的)封装在一个单一的便携式exe文件的增强终端。 MobaXterm包括一个巨大的multitab原生的Windows终端。操作简单,功能强大,易上手,也是这次我们推荐使用的。后面的流程是基于MobaXterm操作的。

方案二:tightvnc +Xshell+Xftp

tightvnc 官方下载支持:http://www.tightvnc.com/download-old.php 绿色版下载  

注:TightVNC 是一套免费的 VNC 软件,能让你轻松控制远程的计算机,就像坐在自己家的计算机前面一般,让你出门在外无后顾之忧!

Xshell  官方下载地址:http://www.netsarang.com/download/down_xsh4.html

注:Xshell 是一个极好用的免费 SSH 客户端,可以作为 Telnet、Rlogin、SSH、SFTP、Serial 等协议的安全终端模拟软件,让你轻松管理远程主机。

Xftp 官方下载地址:http://www.netsarang.com/download/down_xfp4.html

注:是一个基于 MS windows 平台的功能强大的SFTP、FTP 文件传输软件。使用了 Xftp 以后,MS windows 用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件。Xftp 能同时适应初级用户和高级用户的需要。它采用了标准的 Windows 风格的向导,它简单的界面能与其他 Windows 应用程序紧密地协同工作,此外它还为高级用户提供了众多强劲地功能特性。

这里我们为了方便提供了Xshell & Xftp整合版绿色版下载地址:http://pan.baidu.com/s/1bnngdXH

相关程序包和文件

(1)、CentOS 6.5 64位安装包(这个下载地址大家百度找吧)

 

3、制作流程

3.1、收集相关文件,指定工作目录并初始化

3.1.1、设置工作空间

登陆63节点服务器在home目录下新建一个工作目录makelinuximages,作为制作虚拟机用到的iso及配置文件等的统一存放目录。

利用xftp上传centos安装文件到/home/makelinuximages文件夹下。注意登录时使用协议SFTP。

centos安装文件上传成功

3.1.2、创建磁盘文件

使用Xshell登录63-nc服务器。

利用qemu命令创建裸磁盘,大小为10G

qemu-img create -f raw centos6.img 10G

在Xftp中刷新即可看到刚刚新建的centos6.img镜像文件。

创建完成后可以使用以下命令查询文件格式。

qemu-img info centos6.img
或者 file centos6.img

3.1.3、设置磁盘标签

使用工具设置磁盘标签,即设置硬盘格式,格式化磁盘

parted centos6.img mklabel msdos

这里笔者执行了多次该命令,第一次直接通过,第二次后会询问,是否清空这个磁盘数据然后继续,因为这里是空磁盘那就清空一次吧。

3.2、安装虚拟机

使用 virt-install开始安装虚拟机,名称为centos6,内存为4G,

virt-install --name centos6 --ram 4096 --os-type linux --os-variant rhel6 -c /home/makelinuximages/CentOS-6.5-x86_64-bin-DVD1.iso --disk path=/home/makelinuximages/centos6.img,device=disk,bus=virtio --graphics vnc,listen=0.0.0.0 --force

笔者在执行该命令式提示没有找到该命令

所以我们还需要再安装下 virt-install 工具。在命令行中执行安装命令:yum install  virt-install

安装成功后我们再次执行 virt-install 命令开始安装虚拟机。

虚拟机安装成功后,我们可以输入以下命令检查虚拟机运行状态。

virsh list

虚拟机运行正常,我们利用VNC客户端工具连接虚拟机,并进行操作系统的安装

至此即为一般Linux系统安装过程,我们这里不做赘述。本次系统安装类型我们以Desktop类型为例。

3.3、虚拟机启动配置

虚拟机安装完成后会自动关闭,我们需要创建一个虚拟机启动文件libvirt.xml来启动虚拟机。文件详细信息如下:

 <domain type='kvm'>
    <name>eucalyptus-centos</name>
    <os>
        <type>hvm</type>
    </os>
    <features>
        <acpi/>
    </features>
    <memory>1073741</memory>
    <vcpu>1</vcpu>
    <devices>
        <!--<emulator>/usr/bin/kvm</emulator>-->
        <disk type='file'>
            <source file='/home/makelinuximages/centos6.img'/>
            <target dev='hda'/>
        </disk>
     <interface type='bridge'>
         <source bridge='br0'/>
         <model type='virtio'/>
     </interface>
        <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0'/>
    </devices>
</domain>
View Code

利用xftp工具将libvirt.xml文件上传至/home/makelinuximages文件夹下

启动虚拟机,并检查其运行状态信息

virsh create libvirt.xml 

通过VNC客户端连接虚拟机并进行剩余的安装配置操作,创建用户,配置日期和时间等信息。

配置完成后,至此centos6.5 Desktop版已经安装完成,我们可以登录测试。

3.3、编辑虚拟机配置(以root账户登录)

3.3.1、修改网络启动信息

修改 /etc/sysconfig/network-scripts/ifcfg-eth0 文件设置 ONBOOT 为"yes".执行以下命令:

vi /etc/sysconfig/network-scripts/ifcfg-eth0
注:ONBOOT是指明在系统启动时是否激活网卡,只有在激活状态的网卡才能去连接网

3.3.2、编辑menu.lst文件

支持虚拟机的串行控制台通过添加以下选项来完成:在/boot/grub/menu.lst中添加console=ttyS0;

删除安静的选择从内核参数grub菜单启动图像。注释掉#splashimage=(hd0,0)/grub/splash.xpm.gz

vi /boot/grub/menu.lst

3.3.3、编辑网络文件network

编辑网络文件/etc/sysconfig/network,添加:NOZEROCONF=yes。禁用zeroconf路线,从而干扰访问元数据服务:

vi /etc/sysconfig/network

3.3.4、编辑70-persistent-net.rules文件,注释掉网络信息。

删除所有现有的网络接口的条目。确保你删除所有条目,并终止虚拟机,然后在桉树中注册它。

vi /etc/udev/rules.d/70-persistent-net.rules

3.3.5、完成镜像制作

 经过上述配置操作,至此一个空的centos6.5镜像已经配置完成。关机

注:看过官方帮助的朋友一定知道在安装流程的中还有个第七步,这一步主要用于设置linux的用户名密码,密码由秘钥动态生成,也可以跳过这一步,但是账户和密码就是制作镜像时的账户和密码了。

 

3.4、Linux镜像模板上传

3.4.1、登陆CLC所在服务器,在CLC的var目录下,新建一个img文件夹

cd /var
mkdir img

3.4.2、从NC节点拷贝img文件

scp root@192.168.20.63:/home/makelinuximages/centos6.img /var/img

 

3.4.3、将镜像上传Eucalyptus中

euca-install-image -n centos65test -i /var/img/centos6.img -r x86_64 --virtualization-type hvm -b centos65

等待安装完成后,我们可执行以下命令查看已安装镜像,也可在管理页面看到。

 euca-describe-images

 

 

 至此Eucalyptus镜像(CentOS 6.5为例)制作并安装完毕。

4、参考链接

https://www.eucalyptus.com/docs/eucalyptus/4.0/index.html#image-guide/img_task_install_os_to_image.html

 

posted on 2014-09-28 09:41  gis-luq  阅读(959)  评论(0编辑  收藏  举报