Centos5.7使用xen搭建虚拟机集群过程
1,在用光盘安装centos5.7时,在选择安装的组建的时候,需要选择上虚拟机组建,我把两个都选上了,一个是KVM的,安装好centos以后,就可以在系统菜单上找到虚拟机管理工具:Applications->System Tools->virtual machine manager,这样就可以打开管理界面了,看到里面有一个Domain-0,自动就产生了,我理解这其实就是本机,在这里也被视为虚拟机存
1,在用光盘安装centos5.7时,在选择安装的组建的时候,需要选择上虚拟机组建,我把两个都选上了,一个是KVM的,安装好centos以后,就可以在系统菜单上找到虚拟机管理工具:Applications->System Tools->virtual machine manager,这样就可以打开管理界面了,看到里面有一个Domain-0,自动就产生了,我理解这其实就是本机,在这里也被视为虚拟机存在。
2,点击管理页面下面的new选项,建立一个新的虚拟机,选择full virtual的方式建立,这种方式支持光盘安装操作系统,支持iso镜像安装等。我刚开始不能选择这种full virtual的安装方式,只能选择paravirtual的方式,这种方式不支持光盘。看到下面的提示说,我的系统本身是支持full virtual的,只是我的bios设置没有打开intel cpu的某些功能,因此不能用full virtual的方式。因此我重启进入bios,把bios中关于虚拟机选项的地方给enable了,然后就可以支持full virual了。
3,开始用光盘安装虚拟机,虚拟机也是centos的,而且我是建立了一个虚拟网络,使用nat方式连接我的实际网络。虚拟机都建立在这个虚拟网络上,充当一个小的内网。我看这个virtual machine manager里面写着xen的字样,而且image创建目录是在xen的lib目录下,所以我怀疑我现在其实使用的就是xen,虽然我从未显示安装过xen,但是正在使用它。
4,安装好了第一台虚拟机,我现在希望一共安装5台虚拟机,这5台虚拟机都使用centos5.7系统,它们都在一个虚拟网络当中。这时,我不想剩下的每一台虚拟机都使用光盘安装的方式,我希望能像vmware那样,把我安装好的虚拟机复制一下,就变成了另外一个虚拟机,这是可行的,具体的话需要去下载一个工具,详细信息如下:http://blog.csdn.net/jackyyen/article/details/3265572
4.1.从http://virt-manager.et.redhat.com/download.html 下载virt-clone工具,在virt-install包中。我下载的是virtinst 0.600.1这个版本,下载下来一个gz的包,里面有安装方法,按照要求去做就能安好。
4.2 这个包里面有一个virt-clone的工具,利用它就可以实现对现有虚拟机的clone. 命令行方式为:
./virt-clone -o 原虚拟机名字 -n 新虚拟机名字 -f 新虚拟机镜像文件名字
4.3 执行成功上一行命令,发现virtual machine manager窗口中自动多了一个新虚拟机名字的虚拟机,但是却找不到新虚拟机镜像文件,不管我是不是指定了目录,virt-clone都不会新建一个虚拟机镜像文件。这时察看新建的虚拟机的详细信息时,发现它仍然使用原虚拟机的镜像文件,两个虚拟机使用同样的镜像文件,它们是不能同时运行的,这时就需要解决这个问题。
4.4 打开新建的虚拟机的硬件信息目录中,找到它的磁盘信息,看到镜像文件的名字是原来虚拟机镜像文件。这时,到文件浏览器中拷贝一个原有镜像文件到一个指定目录,并把这个新复制的镜像文件名修改一下。然后到硬件信息中,把原来的磁盘删掉,让虚拟机没有磁盘,然后再点击增加硬件,为虚拟机创建一个新的磁盘,创建新的磁盘时选择那个新拷贝好的镜像文件,这时,新的虚拟机就有了自己的镜像文件了。同时,新虚拟机还有一个地方需要改,就是硬件当中的网络部分,不改的话,网卡mac地址和原有的一样,这样可不行,重新建立一个网络,建立时选择添加到虚拟网络中,这时就会看到新的网卡新的mac地址,然后我把原来的那个网络删掉了。这时,一个新的虚拟机就诞生了。
//
5,按照4的方式复制镜像,建立5台虚拟机。
6, 建立好了5台虚拟机,现在需要为每台配置各自的功能。首先就涉及到如何把我主机上已经下载好的安装包或文件拷贝到虚拟机当中。我想使用NFS网络文件系统的方式,把主机上的某个文件夹共享给虚拟机。因此具体操作方法如下:
6.1在主机上/etc/init.d/nfs stop
/etc/init.d/nfs start
vi /etc/exports: 添加一行:/home/username/share/ 10.0.0.0/24(rw,sync),保存关闭
exportfs -r: 成功
测试一下本机能不能NFS:mount -t nfs -o nolock 172.20.0.178:home/username/share /mnt 正常
umount /mnt 取消测试
6.2 在虚拟机上,ping 172.20.0.178 正常
ifconfig 发现eth0 ip 是10.0.0.62
mount -t nfs -o nolock 172.20.0.178:/home/username/share /mnt 报错:mount: mount to NFS server '172.20.0.178' failed: system error: no route to host.
6.3 出错也不知为啥,说是route不到host,但是没关系,我估计可能是防火墙的问题,然后我到主机的系统配置界面上,打开system->administration->security level and firewall,然后把下拉菜单中的enable改为disable,就是把防火墙给关了。
6.4, 虚拟机上mount -t nfs -o nolock 172.20.0.178:/home/username/share /mnt 成功
6.5,但是发现一个问题,在虚拟机上mnt的目录是只读的,不能写入,可是明明设置了rw的方式啊。没办法,最后解决办法是:
/home/username/share/ 10.0.0.0/24(rw,no_root_squash)
/etc/init.d/nfs stop
/etc/init.d/nfs start
exportfs -ra
这回在虚拟机上mount以后就可写了。。。
更多推荐
所有评论(0)