热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

CentOS6.x安装配置XEN虚拟机环境

centos6安装xen并不像centos5那样轻松,因为在centos6中,官方源已经去除了xen的rpm包,只能使用第三方源或自行编译,这里推荐使用第三方源,编译安装要解决的问题比较多。还有一个包libvirt,这个是管理xen的api,官方的这个包已经不支持xen,并且是0.9版的
centos 6安装xen并不像centos 5那样轻松,因为在centos 6中,官方源已经去除了xen的rpm包,只能使用第三方源或自行编译,这里推荐使用第三方源,编译安装要解决的问题比较多。还有一个包libvirt,这个是管理xen的api,官方的这个包已经不支持xen,并且是0.9版的需要更高版本的iptables支持,所以libvirt需要编译安装。
下面是在CentOS 6 64位系统进行安装配置Xen。

1、安装Xen及内核
rpm -Uvh http://www.crc.id.au/repo/x86_64/kernel-xen-release-6-3.noarch.rpm //导入第三方源安装Xen
yum install bridge-utils //安装网桥设置工具
yum install kernel-xen xen //安装xen及内核

2、配置grub引导xen内核
xen内核安装后,会自动插入引导xen内核代码到/boot/grub/grub.conf文件,但还需要进行相应的修改。
修改后引导xen内核的
title CentOS (2.6.32.56-1.el6xen.x86_64)
root (hd0,7)
kernel /xen.gz dom0_mem=1024M loglvl=all guest_loglvl=all
module /vmlinuz-2.6.32.56-1.el6xen.x86_64 ro root=/dev/mapper/VolGroup-LogVol00 rd_LVM_LV=VolGroup/LogVol00 nomodeset
module /initramfs-2.6.32.56-1.el6xen.x86_64.img
这段代码仅够参考,不一定适用于你的配置。

3、关闭selinux
这是必须关闭的,要不会因为selinux的安全机制导致xen无法正常工作。
编辑selinux配置文件
vi /etc/sysconfig/selinux
修改为如下:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
还有一点配置也很重要,就是禁止netmanager接管网络,因为这个工具不支持网桥管理。
在/etc/sysconfig/network-script/ifcfg-eth0中加入:
NM_COnTROLLED=no

4、重启引导进入xen内核
引导后执行xm info测试:
[root@localhost ~]# xm info
host                   : localhost.localdomain
release                : 2.6.32.56-1.el6xen.x86_64
version                : #1 SMP Mon Feb 20 13:03:03 EST 2012
machine                : x86_64
nr_cpus                : 4
nr_nodes               : 1
cores_per_socket       : 2
threads_per_core       : 2
cpu_mhz                : 2394
hw_caps                : bfebfbff:28100800:00000000:00003f40:009ae3bd:00000000:00000001:00000000
virt_caps              : hvm
total_memory           : 1972
free_memory            : 412
free_cpus              : 0
xen_major              : 4
xen_minor              : 1
xen_extra              : .2
xen_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          : credit
xen_pagesize           : 4096
platform_params        : virt_start=0xffff800000000000
xen_changeset          : unavailable
xen_commandline        : dom0_mem=1024M loglvl=all guest_loglvl=all
cc_compiler            : gcc version 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC)
cc_compile_by          : mockbuild
cc_compile_domain      : crc.id.au
cc_compile_date        : Mon Feb 20 12:52:37 EST 2012
xend_config_format     : 4

5、安装api管理工具
yum install virt-install virt-viewer

6、编译安装libvirt
因为rpm安装的libvirt不支持xen连接,所以我们使用编译安装。还有版本也不能选择高的,不然可能会因为iptables的版本低而不能使用libvirt。
yum install gcc xen-devel libxml2-devel gnutls-devel device-mapper-devel libnl-devel make
cd /tmp
wget http://libvirt.org/sources/libvirt-0.8.1.tar.gz
tar xzf libvirt-0.8.1.tar.gz
cd libvirt-0.8.1
./configure --with-xen --with-xen-inotify --with-libvirtd
make && make install
然后打开/usr/local/etc/libvirt/libvirtd.conf文件,删除unix_sock_dir = "/var/run/libvirt"前面的注释,并创建/var/run/libvirt目录。
之后启动libvirtd,并设置开机启动
libvirtd -d
echo "/usr/local/sbin/libvirtd -d" >>/etc/rc.d/rc.local

7、安装xen guest
我们这里使用virt-install工具进行guest的安装,当然你也可以使用xm命令安装,不过相对麻烦点。
可以执行virt-install --help学习这工具的使用方法。
下面是安装guest的示例
virt-install -n CentOSVM1 -r 512 -f /xen/CentOSVM1.img  -l http://www/  ?network=network:default -s 10 ?nographics ?vcpus=2
或者使用交互式安装
-n CentOSVM1 设置虚拟服务器名称
-r 512 设置内存大小
-f /xen/CentOSVM1.img  虚拟磁盘文件的保存路径,如果有重名可以使用?force参数强制重建。
-l http://www/ 安装文件的访问方式,支持nfs http ftp smb等多种方式。如果你对你的带宽比较自信,可以使用http://mirrors.163.com/centos/5.5/os/i386/网易的镜像站
--network=network:default 网络连接方式,我选择的是route中的default
-s 10磁盘文件的大小,单位是G
 --nographics 不使用图形界面,可以不加此参数,然后加--vnc看看图形效果
 --vcpus=2 虚拟CPU的个数
 在执行virt-install命令安装系统之前,先确定你的安装源,支持nfs http ftp smb等多种方式,宽带大的话,可以使用http直接连接远程安装源,比如mirror.163.com。
 我这里adsl上网的,本地已经下载有iso文件了,所以在本地架设个http服务器进行安装。
1、挂载iso文件到/iso目录,这个目录必须存在。
mount -o loop CentOS-6.2-x86_64-minimal.iso /iso
2、安装httpd服务器,我这里安装apache
yum install httpd
service httpd start
3、创建软链接或直接复制文件到apache根目录/var/www/html,如果你的centos 6.2是完整版,只需要做个软链接,如果下载的是精简版,也就是minimal,需要复制全部文件到根目录,因为.treeinfo这个文件需要相应的修改。
centos 6.2完整版:
ln -s /iso /var/www/html
centos 6.2精简版:
cp -R /iso  /var/www/html
修改.treeinfo文件,如:
[general]
family = CentOS
timestamp = 1323560005.81
variant =
totaldiscs = 1
version = 6.2
discnum = 1
packagedir =
arch = x86_64
[images-x86_64]
kernel = isolinux/vmlinuz
initrd = isolinux/initrd.img
[images-xen]
kernel = isolinux/vmlinuz
initrd = isolinux/initrd.img
[stage2]
mainimage = images/install.img
4、在安装之前,需要暂时关闭iptables,否则安装过程中会无法取得相应文件。
service iptables stop
5、开始使用virt-install安装
virt-install -n centos6 -r 512 -f /xen/CentOSVM1.img -l http://192.168.1.100/iso --network=network:default -s 4 --vcpus=2
之后会自动调用virt-viewer工具显示安装界面。
6、启动guest centos6
安装完成后会要求重启,这时guest关闭之后不会自动启动,需要使用xm start命令启动:
xm start centos6
7、开启iptables
之前为了连接安装源,暂时关闭了iptables,现在需要启动iptables,否则guest无法连接外网。
service iptables start
8、使用virt-viewer管理guest
virt-viewer centos6
执行这条命令即可连接虚拟机centos6进行管理了,当然也可以直接使用ssh连接更简单。
另外,我安装过virt-manager来安装guest,但到创建域时就出现KeyError错误,不知道如何解决,有懂的告诉一声。

推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文介绍了使用CentOS7.0 U盘刻录工具进行安装的详细步骤,包括使用USBWriter工具刻录ISO文件到USB驱动器、格式化USB磁盘、设置启动顺序等。通过本文的指导,用户可以轻松地使用U盘安装CentOS7.0操作系统。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • 如何提高PHP编程技能及推荐高级教程
    本文介绍了如何提高PHP编程技能的方法,推荐了一些高级教程。学习任何一种编程语言都需要长期的坚持和不懈的努力,本文提醒读者要有足够的耐心和时间投入。通过实践操作学习,可以更好地理解和掌握PHP语言的特异性,特别是单引号和双引号的用法。同时,本文也指出了只走马观花看整体而不深入学习的学习方式无法真正掌握这门语言,建议读者要从整体来考虑局部,培养大局观。最后,本文提醒读者完成一个像模像样的网站需要付出更多的努力和实践。 ... [详细]
author-avatar
幽咽小香
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有