centos6.7环境半虚拟化软件xen及xm配置工具使用详解
来源:互联网 发布:颐讯软件 编辑:程序博客网 时间:2024/06/05 19:02
1、xen软件的安装及配置
环境准备:①操作系统:centos6.7(注意最好使用centos6.7,centos6.5无法使用xen的图形化界面创建操作系统)
②调整虚拟机配置,内存4G(推荐2G以上)
③增加xen安装yum源(系统自带的源没有包括xen软件)
# cd /etc/yum.repos.d/
# vim xen4.repo
[xen4]name=Xen4 Projectbaseurl=http://mirrors.aliyun.com/centos/6.7/xen4/x86_64enabled=1gpgcheck=0cost=300
# yum repolistLoaded plugins: fastestmirror, securityLoading mirror speeds from cached hostfilexen4 | 3.4 kB 00:00 xen4/primary_db | 166 kB 00:00 base | 2.9 kB 00:00 updates | 2.9 kB 00:00 repo id repo name statusxen4 Xen4 Project 263base localyum 3,995updates localyum 3,995repolist: 8,253
安装xen虚拟机服务
# yum install -y xen
# vim /boot/grub/grub.conf
加入kernel /xen.gz dom0_mem=1024M cpufreq=xen dom0_max_vcpus=2 dom0_vcpus_pin
default=0timeout=5splashimage=(hd0,0)/grub/splash.xpm.gzhiddenmenutitle CentOS (3.18.21-16.el6.x86_64) root (hd0,0) kernel /xen.gz dom0_mem=1024M cpufreq=xen dom0_max_vcpus=2 dom0_vcpus_pin module /vmlinuz-3.18.21-16.el6.x86_64 ro root=/dev/mapper/vg_node4-root rd_NO_LUKS LANG=en_US.UTF-8 rd_LVM_LV=vg_node4/root rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_node4/swap KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb module /initramfs-3.18.21-16.el6.x86_64.imgtitle CentOS (2.6.32-431.el6.x86_64) root (hd0,0) kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/vg_node4-root rd_NO_LUKS LANG=en_US.UTF-8 rd_LVM_LV=vg_node4/root rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_node4/swap KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet initrd /initramfs-2.6.32-431.el6.x86_64.img
重新启动系统,启动xend服务,并验证服务是否正常启动
# service xend startStarting xend daemon: [ OK ][root@node4 ~]# xm listWARNING: xend/xm is deprecated.Name ID Mem VCPUs State Time(s)Domain-0 0 1024 2 r----- 58.5[root@node4 ~]# xl listName ID Mem VCPUsStateTime(s)Domain-0 0 1024 2 r----- 58.7[root@node4 ~]# xl infohost : node4.chinasoft.comrelease : 3.18.21-16.el6.x86_64version : #1 SMP Sat Sep 26 01:24:19 UTC 2015machine : x86_64nr_cpus : 4max_cpu_id : 63nr_nodes : 1cores_per_socket : 2threads_per_core : 1cpu_mhz : 2099hw_caps : 1fabfbff:28100800:00000000:00007f00:f6ba2223:00000000:00000001:00000281virt_caps : hvmtotal_memory : 4095free_memory : 3022sharing_freed_memory : 0sharing_used_memory : 0outstanding_claims : 0free_cpus : 0xen_major : 4xen_minor : 4xen_extra : .3-3.el6xen_version : 4.4.3-3.el6xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64 xen_scheduler : creditxen_pagesize : 4096platform_params : virt_start=0xffff800000000000xen_changeset : Wed Oct 21 16:18:30 2015 +0100 git:5418e02-dirtyxen_commandline : dom0_mem=1024M cpufreq=xen dom0_max_vcpus=2 dom0_vcpus_pincc_compiler : gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)cc_compile_by : mockbuildcc_compile_domain : centos.orgcc_compile_date : Thu Oct 29 12:18:52 UTC 2015xend_config_format : 4[root@node4 ~]# xm infoWARNING: xend/xm is deprecated.host : node4.chinasoft.comrelease : 3.18.21-16.el6.x86_64version : #1 SMP Sat Sep 26 01:24:19 UTC 2015machine : x86_64nr_cpus : 4nr_nodes : 1cores_per_socket : 2threads_per_core : 1cpu_mhz : 2099hw_caps : 1fabfbff:28100800:00000000:00007f00:f6ba2223:00000000:00000001:00000281virt_caps : hvmtotal_memory : 4095free_memory : 3022free_cpus : 0xen_major : 4xen_minor : 4xen_extra : .3-3.el6xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64 xen_scheduler : creditxen_pagesize : 4096platform_params : virt_start=0xffff800000000000xen_changeset : Wed Oct 21 16:18:30 2015 +0100 git:5418e02-dirtyxen_commandline : dom0_mem=1024M cpufreq=xen dom0_max_vcpus=2 dom0_vcpus_pincc_compiler : gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)cc_compile_by : mockbuildcc_compile_domain : centos.orgcc_compile_date : Thu Oct 29 12:18:52 UTC 2015xend_config_format : 4
2、配置网络
安装桥接工具# yum install -y bridge-utils
# cd /etc/sysconfig/network-scripts/
# cp ifcfg-eth0 ifcfg-br0
配置网桥设备
# cat ifcfg-br0DEVICE=br0TYPE=BridgeONBOOT=yesNM_CONTROLLED=noBOOTPROTO=noneIPADDR=192.168.8.44NETMASK=255.255.255.0GATEWAY=192.168.8.254DNS1=192.168.8.251IPV6INIT=noUSERCTL=no
# cat ifcfg-eth0DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED=noBOOTPROTO=noneBRIDGE=br0IPV6INIT=noUSERCTL=no重启生效# service network restart
# ifconfigbr0 Link encap:Ethernet HWaddr 00:0C:29:D7:3A:10 inet addr:192.168.8.44 Bcast:192.168.8.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fed7:3a10/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:520 errors:0 dropped:0 overruns:0 frame:0 TX packets:47 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:32011 (31.2 KiB) TX bytes:5460 (5.3 KiB)eth0 Link encap:Ethernet HWaddr 00:0C:29:D7:3A:10 inet6 addr: fe80::20c:29ff:fed7:3a10/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2198 errors:0 dropped:2 overruns:0 frame:0 TX packets:60 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:249888 (244.0 KiB) TX bytes:6922 (6.7 KiB)lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
# brctl showbridge namebridge idSTP enabledinterfacesbr08000.000c29d73a10noeth0# brctl stp br0 on# brctl showbridge namebridge idSTP enabledinterfacesbr08000.000c29d73a10yeseth0
可以生成自动化脚本
#!/bin/bash
#
brctl addbr br0
ifconfig eth0 0 up
brctl addif br0 eth0
ifconfig br0 192.168.8.45/24 up
brctl stp br0 on
3、使用xm命令行工具配置添加虚拟机
获取linux启动文件# lftp http://192.168.8.42/cobbler/ks_mirror/centos6.5-x86_64/isolinux/
> mget vmlinuz initrd.img
准备启动文件
# cd /etc/xen/
将xm样例1作为模板
# cp xmexample1 centos6
# vim centos6
kernel = "/root/vmlinuz"ramdisk = "/root/initrd.img"memory = 1024name = "centos6"vif = [ 'bridge=br0' ]disk = [ 'file:/xen/vm1/centos6.img,xvda,w' ]on_reboot = 'destroy'on_crash = 'restart'
# mkdir /xen/vm1 -pv# cd /xen/vm1# dd if=/dev/zero of=centos6.img oflag=direct seek=102399 bs=1M count=11+0 records in1+0 records out1048576 bytes (1.0 MB) copied, 0.00446458 s, 235 MB/s# ls -lhtotal 1.0M-rw-r--r-- 1 root root 100G May 1 00:46 centos6.img# cd /etc/xen# xm create -c centos6
#kernel = "/root/vmlinuz"
#ramdisk = "/root/initrd.img"
bootloader = "/usr/bin/pygrub" # 使用pygrub引导系统启动:
memory = 1024
name = "centos6"
vif = [ 'bridge=br0' ]
disk = [ 'file:/xen/vm1/centos6.img,xvda,w' ]
on_reboot = 'destroy'
通过命令连接到虚拟机centos6:
# xm console centos6
# ifconfig查看IP
修改IP,重启网络服务报错:Bringing up interface eth0: Device eth0 has different MAC address than expected, ignoring.
# ifconfig eth0查看的硬件地址和ifcfg-eth0里面的硬件地址不一致,修改为一致即可
安装vnc软件
# yum install -y tigervnc-server
使用命令创建vnc链接,并设置密码
# vncserver :1
可以看到
# ss -tnlp
windows安装vnc客户端可以连接到Linux主机中
# vim centos67
kernel = "/root/vmlinuz"
ramdisk = "/root/initrd.img"
vcpus=2
memory = 512
name = "centos6.7"
vif = [ 'bridge=br0' ]
disk = [ 'file:/xen/vm2/centos67.img,xvda,w' ]
on_reboot = 'destroy'
kernel="/root/vmlinuz"
ramdisk="/root/initrd.img"
vcpus=2
memory=512
name="centos6.7"
vif=['bridge=br0']
disk = ['file:/xen/vm2/centos67.qcow2,xvda,w']
vfb=['vnc=1,vnclisten=0.0.0.0']
on_reboot = 'destroy'
#on_crash = 'restart'
# mkdir -pv /xen/vm2
# qemu-img create -f qcow2 -o ? /xen/vm2/centos67.qcow2
Supported options:
size Virtual disk size
backing_file File name of a base image
backing_fmt Image format of the base image
encryption Encrypt the image
cluster_size qcow2 cluster size
preallocation Preallocation mode (allowed values: off, metadata, falloc, full)
# qemu-img create -f qcow2 -o size=80G,preallocation=metadata /xen/vm2/centos6.qcow2
Formatting '/xen/vm2/centos67.qcow2', fmt=qcow2 size=128849018880 encryption=off cluster_size=65536 preallocation='metadata'
[root@localhost xen]# ll -h /xen/vm2
total 19M
-rw-r--r-- 1 root root 121G May 17 10:23 centos67.qcow2
libvirt工具的使用
# yum install -y libvirt
# yum install -y virt-manager
# virt-manager &
报错:暂时无法找到解决方案
Unable to initialize GTK: could not open display
后面发现是xshell和xmanager环境的问题,重新安装即可
继续安装报错,估计是红帽对xen的支持不好,关于xen的研究和学习就告一段落:
Unable to complete install: 'internal error: unable to execute QEMU command 'qom-list': The command qom-list has not been found'
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 44, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/create.py", line 1928, in do_install
guest.start_install(False, meter=meter)
File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 1229, in start_install
noboot)
File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 1297, in _create_guest
dom = self.conn.createLinux(start_xml or final_xml, 0)
File "/usr/lib64/python2.6/site-packages/libvirt.py", line 3488, in createLinux
if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
libvirtError: internal error: unable to execute QEMU command 'qom-list': The command qom-list has not been found
- centos6.7环境半虚拟化软件xen及xm配置工具使用详解
- centos6.7环境之kvm虚拟化quem工具配置及使用详解
- 虚拟化系列之一--Centos6.7下XEN安装
- 搭建Xen虚拟化环境
- xen虚拟化环境安装
- Xen虚拟化基本原理详解
- linux系统下使用Xen安装半虚拟化xen客户机(paravirtualized Xen guest)
- Xen中半虚拟化的创建与配置
- Xen虚拟化环境安装和常用命令
- CentOS6.5环境使用keepalived实现nginx服务的高可用性及配置详解
- Xen中,使用XL还是XM?
- CentOS6下快速配置Xen 4.1.1环境
- XEN 半虚拟化&&全虚拟化
- web.xm配置详解
- xen虚拟化及工作原理
- centos6.5环境openldap实战之ldap配置详解及web管理工具lam(ldap-account-manager)使用详解
- 实现Xen半虚拟化环境下前后端设备的注册(一)
- 实现Xen半虚拟化环境下前后端设备的注册(二)
- HDU 1874 畅通工程续(迪杰斯特拉/优先队列)
- Android问题解决之使用字符串&对象空值判断
- ListView刷新原理及实现
- ffmpeg 码率控制设置
- 优化Android Studio/Gradle构建
- centos6.7环境半虚拟化软件xen及xm配置工具使用详解
- linux进程后端运行,脱离终端
- [转]TCP 的那些事儿(上)
- 用于solr5的ansj分词插件扩展
- spark性能优化:数据倾斜调优
- JSON-OC 转换对照表
- 机器学习排序之Learning to Rank简单介绍
- Java数组
- RDD和DataFrame转换(Java+Scala)