侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

Xen虚拟机在CentOS系统中的安装和使用方法

linux  /  管理员 发布于 7年前   180

一、原理讲解

    虚拟化的概念:将服务器物理资源抽象成逻辑资源,让一台服务器变成几台甚至上百台相互隔离的虚拟服务器,我们不再受限于物理上的界限,而是让CPU、内存、磁盘、I/O等硬件变成可以动态管理的“资源池”,从而提高资源的利用率,简化系统管理,实现服务器整合,让IT对业务的变化更具适应力--------这就是服务器的虚拟化。

    XEN是目前Linux上的最佳的虚拟化解决方案,特别适合于服务器应用,如用于将多个服务器合并到一台物理服务器上,以节省运营成本(机房空间、电力消耗);或者是出于安全角度的考虑,需要将不同的应用进行分区,以便降低安全风险等。

1、名词:

  完全虚拟化(Full Virtualization):full virtualized

  半虚拟化(Para Virtualization):paravirtualized

2、XEN的运行环境:Domain-0与Domain-U

  Domain-0即虚拟母机或称为宿主机,与Linux主机为同一系统,以XEN的Linux内核启动的主机,负责管理和控制客户机。

  Domain-U即虚拟客户机或称VPS,在Domain-0上可以建立多个虚拟客户机。

  Domain-0与Domain-U的区别就是Domain-0是虚拟机,Domain-U是虚拟机上的操作系统。用过Windows上VMWare的可以把Domain-0理解为VMWare软件,Domain-U则是运行在VMWare上的操作系统。

3、XEN的运行方式:

  XEN分成多个层级 (layer) 执行。它将Linux的核心修改后,再使用修改过的核心开机,而开机后先载入XEN的监控器 (Hypervisor) , 并且启动第一个操作系统,称为domain-0。在Xen上面所谓的一个domain就是指一个虚拟机。

  Domain-0之所以要先被载入是因为Domain-0含有其他虚拟机启动所必须的控制指令,并且domain-0也是控制虚拟装置的重要主控系 统。在domain-0上最重要的就是一个xend的常住进程,其他的domain都是由这个xend来管理的。至于命名方面,除了domain-0之外 的其他虚拟机就依序被称为domain-1, domain-2等等, 我们统称为domain-U。

  Domain-0是很重要的,因为它直接控制Xen的监控器(Hypervisor),而且掌握了真实的Linux驱动程序 (drivers)。而其他的虚拟机(domain-U)则是透过Xen监控器来与真实的硬件以及domain-0进行交互。为了让domain-0能够 与Xen结合,我们必须要修改domain-0的核心才能顺利运行。并且需要使用domain-0的核心来开机才可以。domain-0是所有虚拟机的基 础,所以它可以尽量简洁,其他的个别服务则可以放置到不POP时尚资讯网同的domain中。xend可以管理domain-0与其他domain之间的启动与交互,提供一个终端控制 (console) 界面来让 domain-0 登入其他的 domain。

二、必要条件

1、硬件说明:

请在服务器BIOS设置中打开关于CPU的虚拟技术;由于品牌、型号不一样请仔细查找。

2、系统查看CPU不否支持虚拟化

查看CPU对虚拟化的支持程度:

  Intel和AMD的半虚拟化支持标识 - PAE

  # cat /proc/cpuinfo | grep flags  flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss nx constant_tsc pni ssse3

INTEL全虚拟化支持标识 - VMX

  # cat /proc/cpuinfo | grep flags  flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc up pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm

AMD全虚拟化支持标识 - SVM

  # cat /proc/cpuinfo | grep flags  flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8legacy 3dnowprefetch ts fid vid ttp tm stc 100mhzsteps

 三、初始Xen

    1、配置本地光盘yum

     CentOS系统只把光盘挂载便可以使用本地源。

    2、安装Xen

  #yum install xen kernel-xen xen-lib virt-manager python-virtinst Cy

    3、作用理解

        kernel-xen:可以跑 Xen 的 Linux 核心

        xen:主要的 xen 套件,包括配置文件、启动脚本和一些函数库

        xen-libs:Xen 所需要的函数库

        python-virtinst:提供终端安装的软件

        virt-manager:用于图形界面管理xen

        查看/etc/grub.conf

        选择带有xen的内核,并改为使用的内核 

        #init 6

        重启之后,查看内核

        #uname Cr

        2.6.18-274.12.1.e15xen

        #xm list

        Domain-0 

四、安装Xen(图形化)

1、打开“应用程序” CentOS <wbr>Xen <wbr>安装及使用

2、打开“系统工具”,选择“虚拟系统

3、选择“localhost”,鼠标右击“新建”  

4、点击“前进” 

5、虚拟机命名 

6、选择系统架构,多数由CPU决定

7、选择引导模式(ISO、PXE)

8、指定位置

9、指定硬盘大小(allocate entire virtual disk now 使用整个硬盘)

10、指定网络

11、指定内存大小

12、虚拟机全部信息

13、开始“创建”

14、安装后台

五、常见错误描述及解决办法

   1、通过http或NFS安装客户机操作系统出现 Unable to retrieve 错误:....

  多数原因是防火墙造成的,如果使用http安装方式时可以先停止防火墙,也可以采用以下方式解决:
通过iptables  -L命令查询是否有打开80端口或者netstat tunlp | grep httpd
开放端口

  iptables CI INPUT Cs 192.168.0.2/24 -p tcp --dport 80 -j ACCEPT  service iptables save

  2、出现类似下面的错误:

  POST operation failed: xend_post: error from xen daemon: (xend.err 'Error creating domain: I need 262144 KiB, but dom0_min_mem is 262144 and shrinking to 262144 KiB would leave only 244672 KiB free.')

  说明新增的虚拟主机内存设置过高,再内存调小点即可。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用Xen虚拟机能有所帮助,如果有疑问大家可以留言交流。


  • 上一条:
    centos 6.6 安装 KVM 虚拟机的方法
    下一条:
    阿里云ECS(linux)一键安装web环境sh安装步骤
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在Linux系统中使用Iptables实现流量转发功能流程步骤(0个评论)
    • vim学习笔记-入门级需要了解的一些快捷键(0个评论)
    • 在centos7系统中实现分区并格式化挂载一块硬盘到/data目录流程步骤(0个评论)
    • 在Linux系统种查看某一个进程所占用的内存命令(0个评论)
    • Linux中grep命令中的10种高级用法浅析(0个评论)
    • 近期文章
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • Laravel 11.15版本发布 - Eloquent Builder中添加的泛型(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-11
    • 2017-07
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-03
    • 2022-04
    • 2022-08
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-06
    • 2023-07
    • 2023-10
    • 2023-12
    • 2024-01
    • 2024-04
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客