Xen安装部署

简介:

 1.    硬件要求

硬件需要满足如下要求:

1. 至少2G内存

    2. 6G的硬盘空间

    3. 对于全虚拟化需要CPU支持虚拟化技术  

使用如下命令确认CPU的参数设置


  
  
  1. [root@test-19-227 ~]# cat /proc/cpuinfo | grep vmx 
  2.  
  3. flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx pdpe1gb rdtscp lm constant_tsc ida nonstop_tsc arat pni monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr sse4_1 sse4_2 popcnt lahf_lm 

若要支持全虚拟机,则需要打开VT功能,如果没有开启VT,则需要进BIOS开启该功能

2.    使用Yum安装Xen

需要安装Xen  kernel-Xen软件包

Xen包:包含了Xen hypervisor Xen tools

   kernel-xen: 是一个可以运行在Xen hypervisor虚拟机的linux内核


  
  
  1. [root@test-19-227 ~]# yum install xen  kernel-xen 
其他推荐工具:

python-virtinst:提供virt-install命令安装虚拟机

libvirt-python:提供了用python语言脚本管理Xen的接口

libvirt:提供了命令行工具管理Xen虚拟机

virt-manager:提供了图形化管理Xen虚拟机的工具

bridge-utils :该程序包存放的是用于配置以太网桥的实用程序,以太网桥的作用是将多个以太网设备连在一起。

Xen-libs :该程序包存放的是Xen的管理程序所需的程序库。 

3.    编辑grub,使用Xen内核启动

修改前的grub文件:


  
  
  1. [root@test-19-227 ~]# vim /etc/grub.conf 
  2.  
  3.     # grub.conf generated by anaconda 
  4.  
  5.     # 
  6.  
  7.     # Note that you do not have to rerun grub after making changes to this file 
  8.  
  9.     # NOTICE:  You have a /boot partition.  This means that 
  10.  
  11.     #          all kernel and initrd paths are relative to /boot/, eg. 
  12.  
  13.     #          root (hd0,0) 
  14.  
  15.     #          kernel /vmlinuz-version ro root=/dev/vg_root/lv_root 
  16.  
  17.     #          initrd /initrd-version.img 
  18.  
  19.     #boot=/dev/sda 
  20.  
  21.     default=1 
  22.  
  23.     timeout=5 
  24.  
  25.     splashimage=(hd0,0)/grub/splash.xpm.gz 
  26.  
  27.     hiddenmenu 
  28.  
  29.     title CentOS (2.6.18-238.12.1.el5xen
  30.  
  31.         root (hd0,0
  32.  
  33.         kernel /xen.gz-2.6.18-238.12.1.el5 
  34.  
  35.         module /vmlinuz-2.6.18-238.12.1.el5xen ro root=/dev/vg_root/lv_root 
  36.  
  37.         module /initrd-2.6.18-238.12.1.el5xen.img 
  38.  
  39.     title CentOS (2.6.18-194.el5
  40.  
  41.         root (hd0,0
  42.  
  43.         kernel /vmlinuz-2.6.18-194.el5 ro root=/dev/vg_root/lv_root 
  44.  
  45.         initrd /initrd-2.6.18-194.el5.img 

注意default=1,默认情况下用第二个内核启动,即使用title CentOS (2.6.18-194.el5)启动;

应该使用title CentOS (2.6.18-238.12.1.el5xen)启动,所以将default的值改为0

修改后的grub文件:


  
  
  1. # grub.conf generated by anaconda 
  2. # 
  3. # Note that you do not have to rerun grub after making changes to this file 
  4. # NOTICE:  You have a /boot partition.  This means that 
  5. #          all kernel and initrd paths are relative to /boot/, eg. 
  6. #          root (hd0,0) 
  7. #          kernel /vmlinuz-version ro root=/dev/vg_root/lv_root 
  8. #          initrd /initrd-version.img 
  9. #boot=/dev/sda 
  10. default=0 
  11. timeout=5 
  12. splashimage=(hd0,0)/grub/splash.xpm.gz 
  13. hiddenmenu 
  14. title CentOS (2.6.18-238.12.1.el5xen
  15.         root (hd0,0
  16.         kernel /xen.gz-2.6.18-238.12.1.el5 
  17.         module /vmlinuz-2.6.18-238.12.1.el5xen ro root=/dev/vg_root/lv_root 
  18.         module /initrd-2.6.18-238.12.1.el5xen.img 
  19. title CentOS (2.6.18-194.el5
  20.         root (hd0,0
  21.         kernel /vmlinuz-2.6.18-194.el5 ro root=/dev/vg_root/lv_root 
  22.         initrd /initrd-2.6.18-194.el5.img 

启动参数的含义:


  
  
  1. title CentOS (2.6.18-238.12.1.el5xen)     ##定义了内核的名称,该名称将在引导菜单时显示 
  2. root (hd0,0)    ##定义了引导系统的根分区 
  3. kernel /xen.gz-2.6.18-238.12.1.el5    ##指定了需要引导的内核 
  4. module /vmlinuz-2.6.18-238.12.1.el5xen ro root=/dev/vg_root/lv_root   ##定义了用于DOM0的内核 
  5. module /initrd-2.6.18-238.12.1.el5xen.img   ##定义了内核初始化时加载的初始RAM磁盘镜像 

4.    重启机器,检查是否是XEN内核

重启前使用的内核:


  
  
  1. [root@test-19-227 ~]# uname  -rm 
  2. 2.6.18-194.el5 x86_64  

重启后使用的内核:


  
  
  1. [root@test-19-227 ~]# uname  -rm 
  2. 2.6.18-238.12.1.el5xen x86_64  

检查xend是否运行


  
  
  1. [root@test-19-227 ~]# ps -ef|grep xend 
  2. root      5431     1  0 15:04 ?        00:00:00 /usr/bin/python /usr/sbin/xend start 
  3. root      5432  5431  0 15:04 ?        00:00:00 /usr/bin/python  
  4. root      5882  5846  0 15:09 pts/0    00:00:00 grep xend 

 检查domain0是否运行


  
  
  1. [root@test-19-227 ~]# xm list 
  2. Name                                      ID Mem(MiB) VCPUs State   Time(s) 
  3. Domain-0                                   0    15651    16 r-----     32.7 

检查log输出


  
  
  1. [root@test-19-227 xen]# more xend-debug.log  
  2. Nothing to flush. 
  3. Nothing to flush 

5.    简单制作网络安装环境

centos的镜像文件挂载到服务器上,并且将文件复制到配置好的HTTP目录下即可。

6.    配置Xendvnc服务

安装vncvnc server


  
  
  1. [root@test-19-227 ~]# yum install vnc vnc-server 

配置xend,配置如下选项


  
  
  1. [root@test-19-227 xen]# vim /etc/xen/xend-config.sxp 
  2. (vnc-listen '192.168.19.227'
  3.  (vncpasswd ''

重新启动Xend,如果重启不成功则需要重启机器


  
  
  1. [root@test-19-227 xen]# service xend restart 

7.    virt-install命令全虚拟化安装CentOS客户机


  
  
  1. [root@test-19-227 CentOS]# virt-install -n Centos_xen -r 8196  --vcpus=16  -f /opt/xen_centos/Centos_xen.disk -s 120 -v --os-type=linux --os-variant=rhel5       -l http://192.168.19.215/centos/ 

使用VNC客户端连接,开始安装 

下面的过程和正常安装系统是一样的










本文转自 waydee 51CTO博客,原文链接:http://blog.51cto.com/waydee/885849,如需转载请自行联系原作者
目录
相关文章
|
安全 数据库连接 数据安全/隐私保护
内存泄漏是什么?有什么危害
内存泄漏是什么?有什么危害
593 0
|
Linux KVM 虚拟化
云计算——虚拟化层架构
云计算——虚拟化层架构
595 0
|
存储 NoSQL Java
探索Java分布式锁:在高并发环境下的同步访问实现与优化
【4月更文挑战第17天】Java分布式锁是解决高并发下数据一致性问题的关键技术,通过Redis、ZooKeeper、数据库等方式实现。它确保多节点共享资源时的同步访问,防止数据不一致。优化策略包括锁超时重试、续期、公平性和性能优化。合理设计分布式锁对支撑大规模分布式系统至关重要。
1007 2
|
存储 虚拟化 网络虚拟化
|
NoSQL 容器 消息中间件
rtsp-simple-server + srs搭建流媒体服务器
rtsp-simple-server + srs搭建流媒体服务器
1610 0
|
Linux Shell 网络安全
大模型之Huggingface初体验
huggingface相关环境的安装和问题处理本篇暂不涉及,后续补充。这里以一个模型为例,完成从模型介绍到加载、运行的完整过程,作为我们熟悉huggingface的一个示例。
1833 0
|
弹性计算 黑灰产治理
阿里云学生专享免费云服务器
阿里云学生专享免费云服务器,2023阿里云学生服务器免费领取,先完成学生认证即可免费领取一台云服务器ECS,配置为2核2G、1M带宽、40G系统盘,在云服务器ECS实例过期之前,完成实验与认证任务,还可以免费续费6个月,阿里云百科来详细说下2023阿里云学生服务器活动、学生机配置、免费时长及学生服务器领取条件:
30378 2
阿里云学生专享免费云服务器
|
Windows
windows计划任务所遇到的闪退、触发器没有按时执行的坑
1、如图:在设置执行程序或脚本时,请一定要给起始于这个bat脚本的目录路径,否则会遇到执行计划任务闪退,对于网上给的尾行加pause也是心很累。
821 0
windows计划任务所遇到的闪退、触发器没有按时执行的坑
|
缓存 网络协议 Linux
Docker(六)进阶:Dockerfile概述与用法(两万字入门到精通)
EXPOSE指令告诉Docker容器在运行时监听指定的网口。可以指定端口侦听的协议类型是TCP还是UDP,如果不指定协议类型,默认为TCP。
672 0
Docker(六)进阶:Dockerfile概述与用法(两万字入门到精通)
|
数据采集 Shell 芯片
vxworks的pci设备驱动调试
vxworks的pci设备驱动调试
1080 0
vxworks的pci设备驱动调试