换了一家新公司,需要拿出一套虚拟化方案,就把业界的主流虚拟化技术划拉了一遍,给领导交了一份报告,具体的技术部分已经在之前的随笔里了,本篇文章主要介绍的是xen虚拟化工具的安装:

Xen官方部署文档:https://wiki.xenproject.org/wiki/Xen_Project_Beginners_Guide#What_is_this_Xen_Project_software_all_about.3F

宿主机信息:centos7.4-1708版本的虚拟机,安装与配置如下图,值得一提的是,因为本次测试使用的是全虚拟化,所以需要cpu的支持:

1.没什么好说的,关闭防火墙和selinux,做一下基础配置:

systemct disable firewald

sed -i 7s/enforcing/disabled/g /etc/selinux/config

reboot(因为我比较懒)

2.网上有比较多的xen安装教程,做的时候也踩了不少坑,对于这些问题,接下来会一一列举

yum -y install centos-release-xen-48.x86_64

安装xen的yum源

3.修改xen源为不启用

sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-Xen-48.repo

PS:repo配置enabled=0是禁用该源,enabled=1是启用该源,yum --enablerepo=centos-virt-xen会指定使用该源,如果该源已禁用(enabled=0),该参数也可以让yum暂时使用该源

4.使用centos的xen源来更新内核

yum --enablerepo=centos-virt-xen-48 -y update kernel

这一步需要是需要注意的,网上给出的很多教程也是到这一步出问题,错误的消息是:

failure: repodata/repomd.xml from centos-virt-xen-46: [Errno 256] No more mirrors to try.
http://mirror.centos.org/centos/7/virt/x86_64/xen-46/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found

其根本原因在于xen源中的名称

[centos-virt-xen-48]是该源的真正名称,名称错了,当然是404错误,[centos-virt-xen-48-testing]中的内容是正在测试的软件,可以无视。

PS:因为centos的源是在国外,所以更新的很慢,我下载了大概一个多小时,才更新完了内核。

5.安装xen程序:yum --enablerepo=centos-virt-xen-48 -y install xen

这一步没什么说的,如果上一步更新成功了xen内核,那这一步就不会出问题,还是有点慢,下载了大概半个小时。

6.设置Domain0

这两个的意思我在网上找了点资料,但都是术语,用通俗的话来讲呢:

dom0_mem=3072M的意思是xen内核最多调用的内存,即xen内核从你的linux内核上所能调用的内存大小,max:3072M,的意思是建立在xen内核上的虚拟机从xen内核中所能调用的内存大小,裸机系统内核内存->xen内核内存->建立在xen内核上的系统内存,这样的话,才不会报错,默认的值都是1024,因为我要用来做测试,所以我把它改成了3G=3072M

7.安装管理工具,有人看到这要问了,xen不是虚拟化了吗,是xen是实现了资源的虚拟化,但是xen本身只提供虚拟化,所以呢,本事虚拟机的创建,管理等等都是需要第三方管理工具来做。

因为虚拟化与传统技术相比的特殊性,所以呢,先从base源中更新通用的依赖与部分工具软件,然后使用xen源来安装管理工具。

yum -y install gnutls-utils vte3 dbus-libs python-ipaddr

yum --enablerepo=centos-virt-xen-48 -y install libvirt libvirt-daemon-xen virt-install virt-manager

这一步我遇到了点问题,安装管理工具的时候,报了个错,说是因为这个包下载速度太慢,所以取消了下载,国外的网速还是伤不起啊,没关系,反正包的名称都知道了,复制了这个包的名称到百度里去下载,然后使用rpm -ivh来安装,

8.添加xen开机启动项,就是运行一个脚本,CentOS官网描述这将生成/boot/grub2/grub.cfg;https://wiki.centos.org/zh/HowTos/Xen/Xen4QuickStart

安装好了之前的包之后,这个脚本就会出现在这个目录:/bin/grub-bootxen.sh,直接执行就行了。

9.重启服务器,如果都做的没有问题,那么开机选择内核的时候,应该出现下面的画面:

直接回车启动就行了

10.检测安装是否成功:

输入图上所示的命令之后,如果出现了类似的信息,那就是安装好了,然后就看你选择哪种管理工具了。

备注:在网上找了virsh的命令行管理,有需要就拿走吧:

virsh的基本用法如下
virsh [COMMAND] [ARGS...] 
另外需要注意的是,virsh提供两种执行模式: "直接模式(Direct Mode)"与"互动模式(Interactive Mode)"。在直接模式里,你必须在Shell中以参数、自变量的方式来执行virsh,如果在互动模式中,则virsh会提供一个提示字符串,你可以在该提示字符串后,输入要执行的命令。如果执行virsh没有指定任何参数或自变量则默认就是进入互动模式。
与xm一样,COMMAND也是 virsh提供的命令,常用的命令如下:

virsh常用命令如下:

命令 说明
help      显示该命令的说明
quit      结束 virsh,回到 Shell
connect  连接到指定的虚拟机服务器
create    启动一个新的虚拟机
destroy  删除一个虚拟机
start    开启(已定义的)非启动的虚拟机
define    从 XML 定义一个虚拟机
undefine  取消定义的虚拟机
dumpxml  转储虚拟机的设置值
list      列出虚拟机
reboot    重新启动虚拟机
save      存储虚拟机的状态
restore  回复虚拟机的状态
suspend  暂停虚拟机的执行
resume    继续执行该虚拟机
dump      将虚拟机的内核转储到指定的文件,以便进行分析与排错
shutdown  关闭虚拟机
setmem    修改内存的大小
setmaxmem 设置内存的最大值
setvcpus  修改虚拟处理器的数量

安装使用xen虚拟化工具的更多相关文章

  1. OpenStack学习笔记(一)----安装虚拟化工具

    下面的命令运行在操作系统Ubuntu 14.04上. 在开源软件里面,主要是采用KVM和Xen.尽管OpenStack对KVM和Xen都支持,但是OpenStack对KVM的支持明显要比Xen做得好, ...

  2. Linux虚拟化 xen的工具栈介绍

    试验环境centos6.10 xen的工具栈介绍: 查看xl目录的帮助:xl help 查看xen下安装了哪些虚拟机:xl list # xl list Domain-0 Name ID Mem VC ...

  3. Xen虚拟化基本原理详解

    标签:虚拟化 xen 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wangzan18.blog.51cto.com/80210 ...

  4. Xen虚拟化基础篇

    一.xen的简介 Xen是一个开放源代码虚拟机监视器,由剑桥大学开发.它打算在单个计算机上运行多达128个有完全功能的操作系统. 在旧(无虚拟硬件)的处理器上执行Xen,操作系统必须进行显式地修改(& ...

  5. Xen虚拟化

    Xen虚拟化基础 Xen虚拟化类型 hypervisor Xen组件 Xen hypervisor Colletion CPU.Memory.Interrupter Domain0 ---> D ...

  6. kvm与xen虚拟化的比较(转)

    Linux虚拟化技术的用户目前有两种免费的开源管理程序可以选择:Xen和KVM. 作为较早出现的虚拟化技术,Xen是“第一类”运行在裸机上的虚拟化管理程序(Hypervisor),也是当前相当一部分商 ...

  7. Linux中安装配置KVM虚拟化

    KVM 概述: KVM 即 Kernel-based Virtual Machine 基于内核的虚拟机. KVM,是一个开源的系统虚拟化模块,自 Linux 2.6.20 之后集成在 Linux 的各 ...

  8. CentosX64使用yum快速搭建xen虚拟化环境

    Xen的大名想必已经被众SA所熟知.Xen 是一个开放源代码虚拟机监视器,由剑桥大学开发.它打算在单个计算机上运行多达100个满特征的操作系统.操作系统必须进行显式地修改(“移植”)以在Xen上运行( ...

  9. 台式电脑部署xen虚拟化的各种问题

    本打算用一台台式机做xen虚拟化,搞了一天搞得焦头烂额还是没搞定,中间遇到各种奇葩问题,这里mark一下 1.计划用三块2TB的SATA硬盘,然后装centos5 做虚拟化,结果忘记了centos5最 ...

随机推荐

  1. 迁移桌面程序到MS Store(9)——APPX With Desktop Extension

    在<迁移桌面程序到MS Store(8)——通过APPX下载Win32Component>中我们讨论了通过APPX来下载Service部分的安装包.但是纯UWP的客户端并不能自动运行下载的 ...

  2. Junit4使用详解二:Junit4运行流程

    1.新建一个测试用例,把下面的四个方法勾选以便查看效果 2.我们在各个方法里面写上输出语句 3.运行之后我们可以发现,它的执行顺序是这样的 注:junit4中的运行流程 1.@BeforeClass修 ...

  3. 【需要重新维护】Redis笔记20170811视频

    很多内容都是抄的,个人记录 1.windows下初见 安装 进入目录 修改配置文件(暂时使用默认,未配置环境变量) 目录下:redis-server.exe启动服务 新建命令提示符,目录下,redis ...

  4. (1)Linux文件系统的目录组成

    记忆秘诀:BBDEH OPRLM TLSUV 宝贝的恩惠 欧派入联盟 偷了suv,19   目录 英文释义 简写 详解 1 /   根目录 整个文件系统的唯一根目录 2 /bin Binary 普通命 ...

  5. 用ASP.NET Core重写了一款网络考试培训的免费软件

    在IT圈混迹了近十年,今已正当而立之年却仍一事无成,心中倍感惶恐惭愧.面对竟争如此激列的环境,该如何应对?却也知不能让自已闲着,得转起来,动起来.于是,便想着利用最新技术栈将自已原来的收费产品重写一次 ...

  6. 浅说——状压DP

    第一次没认真听,没听懂.(有点难) 第二次才搞懂,主要位运算太烦了!!! 位运算基础知识: 名称 符号 规则 按位与 & 全一则一,否则为零 按位或 | 有一则一,否则为零 按位取反 ~ 是零 ...

  7. volatile的内存语义与应用

    volatile的内存语义 volatile的特性 理解volatile特性的一个好方法是把对volatile变量的单个读/写,堪称是使用同一个锁对这些单个读/写操作做了同步. 锁的happens-b ...

  8. 《深入浅出MFC》下载

    百度云及其他网盘下载地址:点我 编辑推荐 <深入浅出MFC>内含光盘一片,书中所有原始码与可执行文件尽在其中. 作者简介 侯俊杰,先生不知何许人也,闲静少言,不慕荣利.好读书,求甚解:每有 ...

  9. Gin 框架 - 安装和路由配置

    目录 概述 Gin 安装 路由配置 推荐阅读 概述 看下 Gin 框架的官方介绍: Gin 是一个用 Go (Golang) 编写的 web 框架. 它是一个类似于 martini 但拥有更好性能的 ...

  10. 【译】.NET Core 3.0 发布自包含单体可执行程序

    .NET Core 提供的发布应用程序选项 self-contained 是共享应用程序的好方法,因为应用程序的发布目录包含所有组件.运行时和框架.您只需要告诉使用者应用程序的入口 exe 文件,就可 ...