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

CentOS系统中xen虚拟机的安装和配置方法

我的试验环境:1.使用root用户登陆2.CentOS为原生dvd最小化安装3.接入internet一、安装xen#yumCyinstallxen*安装XEN需要的服务#yum-yinstallkernel-xen*安装XEN的相关内核二、检查启动选项是否使用xen内核启动1、检查xen内核文件安装是否

我的试验环境:

1.使用root用户登陆

2.CentOS为原生dvd最小化安装

3.接入internet
一、安装xen
# yum Cy install xen*
安装XEN需要的服务
# yum -y install kernel-xen*
安装XEN的相关内核
二、检查启动选项是否使用xen内核启动
1、检查xen内核文件
安装是否正常:文件位于/boot
# ls Clh /boot
total 9.5M
-rw-r--r-- 1 root root 61K Mar 16 08:19 config-2.6.18-8.el5
-rw-r--r-- 1 root root 60K Mar 16 09:27 config-2.6.18-8.el5xen
drwxr-xr-x 2 root root 1.0K Aug 15 14:47 grub
-rw------- 1 root root 1.5M Aug 13 17:18 initrd-2.6.18-8.el5.img
-rw------- 1 root root 1.5M Aug 15 14:47 initrd-2.6.18-8.el5xen.img
drwx------ 2 root root 12K Aug 13 17:15 lost+found
-rw-r--r-- 1 root root 79K Apr 1 22:49 message
-rw-r--r-- 1 root root 82K Mar 16 08:20 symvers-2.6.18-8.el5.gz
-rw-r--r-- 1 root root 83K Mar 16 09:28 symvers-2.6.18-8.el5xen.gz
-rw-r--r-- 1 root root 865K Mar 16 08:19 System.map-2.6.18-8.el5
-rw-r--r-- 1 root root 848K Mar 16 09:27 System.map-2.6.18-8.el5xen
-rw-r--r-- 1 root root 1.7M Mar 16 08:19 vmlinuz-2.6.18-8.el5
-rw-r--r-- 1 root root 2.0M Mar 16 09:27 vmlinuz-2.6.18-8.el5xen
-rw-r--r-- 1 root root 269K Mar 16 07:51 xen.gz-2.6.18-8.el5
-rwxr-xr-x 1 root root 595K Mar 16 09:43 xen-syms-2.6.18-8.el5

2、检查grub配置
# cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/sda3
# initrd /initrd-version.img
#boot=/dev/sda
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-8.el5xen)
root (hd0,0)
kernel /xen.gz-2.6.18-8.el5
module /vmlinuz-2.6.18-8.el5xen ro root=LABEL=/
module /initrd-2.6.18-8.el5xen.img
title CentOS (2.6.18-8.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-8.el5 ro root=LABEL=/
initrd /initrd-2.6.18-8.el5.img
修改其中的default=1为default=0,启用xen内核

3、重新启动计算机

4、重启后登录系统,检查XEN是否正常
4.1 执行# xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 3919 4 r----- 16.9
出现上述结果表示xen启动正常
4.2 检查log:
#ls -lh /var/log/xen
total 8.0K
-rwxr-xr-x 1 root root 36 Aug 15 15:43 xend-debug.log
-rw-r--r-- 1 root root 1.8K Aug 15 15:43 xend.log
# cat /var/log/xen/xend-debug.log
Nothing to flush.
Nothing to flush.
表示一切正常,我们的CentOS5中的XEN服务已经成功启动。至此,我们的CentOS5的宿主机已经安装就绪。
三、安装XEN的Linux客户机系统?CentOS 5.x

1、制作镜像文件
1.1 使用dd创建
#dd if=/dev/zero of=centos5.img bs=2k seek=4096k count=1
制作客户机主要磁盘
# dd if=/dev/zero of=swap.img bs=2k seek=512k count=1
制作客户机交换磁盘

2、创建配置文件

2.1 安装必须的工具
由于以前的安装是基于最小化安装,此时需要增加一个用于安装客户机系统的软件virt-manager,现在安装:
#yum Cy install virt-manager
请注意由于此软件包为gnome下的图形管理程序,所以需要安装大量依赖包
此处流泪若干……忘记了这个包的名字,耽误时间2个小时……

2.2 开始安装客户机
# virt-install -n centos5 -r 512 --vcpus=2 --file=centos5.img --file=swap.img --nographics -l [url]http://192.168.0.11/yum/ba...[/url](你自己搭建的yum源的地址)
此时如果机器CPU支持VT技术会询问是否需要开启VT支持,一般选择no,如果支持的话选择yes,此时会要求输入光驱或光盘之类。
Would you like a fully virtualized guest (yes or no)? This will allow you to run unmodified operating systems. no
Starting install...

2.3 启动客户机的安装程序
安装由于为远程的,文本方式,部分ssh客户端下可能会有一些乱,请尝试,此部分和一般网络安装操作系统无异,在此不再详细描述。
建议分区是swap用于交换分区,主分区一个boot一个根分区

2.4 补充说明安装源的制作(最简单的方法)
在一台安装了CentOS5的服务器上开启httpd服务,把CentOS5的DVD整盘复制到/var/www/html/yum/base下即可

2.5 配置文件
安装客户机完毕后会在/etc/xen下产生一个centos5的文件就是配置文件
参考配置文件centos5:
name = "centos5"
memory = "768"
disk = [ 'tap:ai/opt/xen/centos5/centos5.img,xvda,w', 'tap:ai/opt/xen/centos5/swap.img,xvdb,w', ]
vif = [ 'bridge=xenbr0', ]
bootloader="/usr/bin/pygrub"
vcpus=2
on_reboot = 'restart'
on_crash = 'restart'

四、安装XEN的Windows客户机
前提:宿主计算机的CPU支持intel的VT或者AMD的amd-v,并且在BIOS中开启了对应的选项。

1、检查是否支持VT:
#xm info |grep xen_cap
xen_caps : xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p
# xm dmesg |grep -i vmxon
(XEN) VMXON is done
(XEN) VMXON is done
如果出现上述字段则计算机支持VT,否则很有可能是不支持或者BIOS禁用了。
也可以通过 xm dmesg或者cpuinfo等等方式查询,这里就不详细描述了。

2、为实现图形化远程安装开启vnc
#yum Cy install vnc*
#vi /etc/xen/xend-config.sxp
编辑下列内容(请根据自己情况修改):
(vnc-listen '192.168.0.xxx')
(vncpasswd 'password')
此处的修改也可以在对应客户端的文件中修改,参后文。

3、重启计算机
其实应该不需要重启计算机,只需要重启xend的服务即可,但是很难重启服务成功,所以干脆重启:)

4、安装windows
安装前述步骤准备好磁盘镜像文件,传输win的iso文件后执行
#virt-install -n mini -r 768 --vcpus=2 --file=mini.img --vnc -v -c /opt/yum/pwinxp.iso
应该出现以下提示:
Starting install...
Unable to connect to graphical console; DISPLAY is not set. Please connect to localhost:5900
Domain installation still in progress. You can reconnect to the console to complete the installation process.
!!请注意此种方式比较适合宿主机开启xwin图形系统并且在宿主机上操作。

4.1 检查vnc的监听
# netstat -anp |grep 5900
tcp 0 0 192.168.0.xxx:5900 0.0.0.0:* LISTEN 2748/qemu-dm
出现上述结果表明vnc已经开启(此时远程宿主机不需要开启xwin)。
此处监听端口可能有所改变,默认为590X。

4.2 使用vnc客户端连接
建议使用realvnc客户端连接!ultravnc在连接后会出现刷屏的情况,几乎无法操作。密码为在第二步设置的密码或者在配置文件中设置的密码。

4.3安装windows
安装过程中如果停止在如下画面或者不断重启:
画面主要停止在starting windows...的蓝色界面上
此种问题一般是由于ACPI的问题,请在引导光盘启动后提示按F2或者F6的时候按下F7,禁用ACPI,或者使用以下配置文件mini.hvm直接强制关闭:
import os, re
arch = os.uname()[4]
if re.search('64', arch):
arch_libdir = 'lib64'
else:
arch_libdir = 'lib'
kernel = "/usr/lib/xen/boot/hvmloader"
name = "mini"
builder = "hvm"
memory = "768"
shadow_memory = 8
disk = [ 'file:/opt/xen/mini/mini.img,hda,w', 'file:/opt/yum/pwinxp.iso,hdc:cdrom,r', ]
vif = [ 'type=ioemu,bridge=xenbr0', ]
device_model = "/usr/lib/xen/bin/qemu-dm"
kernel = "/usr/lib/xen/boot/hvmloader"
vnc=1
vnclisten="192.168.0.xxx"
vncdisplay=1
vncpasswd='password'
vncunused=1
apic=0
acpi=0
pae=1
boot="dc"
vcpus=2
serial = "pty" # enable serial console
on_reboot = 'restart'
on_crash = 'restart'
请注意cdrom我们没有使用单独的
cdrom=”/opt/yum/en2003entsp2.iso”来配置,使用此会出现以下错误:
错误为cdrom启动错误,错误代码0002
快速启动vnc客户端查看启动信息(修改配置文件),请注意在第一次修改配置文件后安装会重启,请在重启前修正启动顺序为
boot="c"
此时进入正常安装模式。以后可以去掉disk里面的cdrom选项或者修改,也可以添加删除磁盘信息。

5、其它说明
此种情况也可以用于安装linux类带xwin的系统;开启vnc仅仅是安装需求,一般情况下建议关闭!
Windows安装完毕后在客户机中安装远程控制软件如vnc或者radmin之类后关闭配置文件中的vnc选项,确保宿主机的安全。


推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • Java学习笔记之使用反射+泛型构建通用DAO
    本文介绍了使用反射和泛型构建通用DAO的方法,通过减少代码冗余度来提高开发效率。通过示例说明了如何使用反射和泛型来实现对不同表的相同操作,从而避免重复编写相似的代码。该方法可以在Java学习中起到较大的帮助作用。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
author-avatar
保佑麻木_711
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有