首页> 搜索结果页
"XenServer6.0中虚拟机设置自动启动的方法" 检索
共 20 条结果
XenServer部署系列之05——虚拟机的创建及复制
XenServer部署系列之05虚拟机的创建及复制 作业环境 XenServer服务器 OS:XenServer 6.2 Hostname:xsr01 Eth0 IP:192.168.0.241/24 Gateway:IP:192.168.0.1/24 一、关于XenServer虚拟机 在Xenserver上可以创建Windows和Linux等虚拟机,Xenserver支持大部分的主流操作系统,可以使用 XenCenter 或 xe CLI 克隆相应的模板,然后安装操作系统。XenServer随附了一组基本模拟(即原始VM),在这些模板上可以安装操作系统。模板是一种“黄金映像”,包含用于实例化特定VM的所有配置设置。为达到最佳运行状态,XenServer对于适用于各系统的模板,已经设置了用来定义虚拟硬件配置的预定义平台,Linux模板用于创建半虚拟化(PV)来宾系统,而Windows模板用于创建硬件虚拟机(HVM)来宾系统。 必须为每台虚拟机安装XenServer Tools,以便虚拟机拥有完全受支持的配置,并且能够使用XenServer管理工具(Xe CLI或XenCenter)。尽管VM在没有这些工具的情况下可以正常工作,但如果不安装这些工具,性能将受到极大影响。XenServer还支持某些功能和特性,包括彻底闭关、重新引导、挂起和实时迁移VM。 除了使用提供的模板创建VM外,还可以使用3种其他方法来创建VM:物理机到虚拟机的转换(P2V);克隆现有VM;导入一个导出的VM。 二、使用XenCenter创建VM 鉴于CentOS的应用很广泛,笔者一直接触的也是CentOS,本案就以CentOS6.5系统为例,讲述如何创建虚拟机,及其相关配置。 XenServer的部署及存储配置,请参考之前的XenServer部署实录系列博文,这里不在述。在客户端使用XenCener连接远端xsr01主机。 1.使用模板创建虚拟机 以下的操作在XenCenter上进行。 选中xsr01主机,在其右击菜单中选择“New VM”,打开“New VM”向导。    选择创建虚拟机的模版,这里选择“CentOS 6 (64-bit)”,  此列表列出了XenServer 当前支持的模板。每个模板包含创建具有特定操作系统和最佳存储的新 VM 所需的设置信息。具体信息,请参考官方资料。实践表明,XenServer6.2是可以支持到CentOS6.5的。 填写虚拟机名称及可选说明。   为将安装在新 VM 上的操作系统选择安装源。这里使用之前创建的本地ISO存储仓库中的CentOS6.5系统镜像。   为虚拟机选择主服务器或者集群。本案中没有集群,只有xsr01主机。   对于CentOS系统,默认设置为1个虚拟CPU和1G的虚拟内存,这里按实际需求进行修改。   为虚拟机分配存储。按实际需要设置虚拟硬盘容量,并把它配置在xsr01主机的本地存储上。   配置虚拟机的网络连接设置。在创建虚拟机时候,最多创建4个Network(一般来说,如果物理机有4个网卡,这里会自动创建4个Network;如果物理机有2个网卡,则自动创建2个Network),可以在虚拟机创建完成后继续添加NIC。这里删除其他三个Network,只保留Network 0。 完成虚拟机创建,检查配置属性。然后启动虚拟机进行操作系统安装。 开始进入系统安装。这个界面与常规的CentOS安装界面不同。初学者会感到无所适从,因为在接下来的安装过程中,会发现,这是一个极简的安装过程,简化到连分区的操作步骤都忽略了。   安装完成后,首次登录界面如下。/root目录下的anaconda-ks.cfg文件记录了安装系统时的一些信息,从里面可以看到,安装时并没有安装其他软件包,连setup、vim命令对应的软件包也没有。与CentOS自身的Minimal安装模式类似。   就本案而言,30G的虚拟硬盘,4G的虚拟内存,虚拟系统使用了485M作为/boot引导分区,剩余的容量为一个名为VolGroup的逻辑卷,该卷内划分了/root和swap两个分区,大小分别为26.5G和3G。如果虚拟硬盘容量很大,比如500G,系统lvm分区会有类似如下的自动分配:swap 4G,/root 50G,其他容量为/home。 以上的安装情况,对于很多用户来说,会很不习惯,而且也难以适配实际需求。那么,有没有办法按常规的方法安装CentOS系统呢,答案当然是有的,而且很简单。就是使用“Other install media”模板。 关于“Other install media”模板,官方资料如下描述:面向高级用户,这些用户可能会尝试安装运行其他不受支持的操作系统的VM。XenServer已经过测试,只能运行所提供的标准模板中包含的受支持发行版本和特定版本,但不支持使用其他安装介质模版安装的任何VM(这段话比较拗口,不易理解)。 下图选择“Other install media”,在接下来的调整CPU、存储和网络资源各种参数的过程,与上述操作步骤是一样的,最后,进入到系统安装,会看到熟悉的CentOS系统盘的启动界面。这样便可以使用常用的Basic Server 安装方式了。   以上是使用XenCenter创建CentOS VM的操作过程。如果是Windows系统,就不存在上述情况了,使用相应的模板,都会是使用正常的安装方式进行安装的。 2.安装XenServer Tools 系统安装完成后,建议立即安装XenServer Tools,以使VM具有完全受支持的配置,从而获得高速I/O以实现更高的磁盘和网络性能。 VM不安装XenServer Tools,最直接的表现是,在XenCenter上无法监控到VM的内存使用情况。如下图所示。选中刚才新建的CentOS6.5vm,在Performance选择卡中,有四个图表,分别表示虚拟CPU、内存、网络、硬盘的使用情况,其中第二个图表虚拟内存没有内容。   切换到Console选项卡,在其顶部“DVD Driver 1”的下拉列表框中,选择“XenServer Tools\xs-tools.iso”,这项操作意为系统插入xs-tools.iso光盘。然后到控件台命令行操作界面中,通过命令加载光盘,并执行Linux/install.sh脚本,以安装xs-tools。此项操作需要重启系统才能生效。   XenServer Tools安装完成并重启系统后,在Performance选择卡中,可以看到该虚拟机虚拟内存的使用情况了。   如果是Windows系统,操作更简单,挂载xs-tools.iso,系统会自动打开 XenServer Tools 安装向导。XenServer Tools需要Microsoft.NET Framework 4.0 或更高版本支持,如果虚拟机运行的是Windows 7或更低版本,则需要在安装XenServer Tools 之前先安装Microsoft .NET Framework 4.0组件。 三、VM的复制与克隆 创建了一个新的虚拟机,并且安装好常用的软件、配置好运行环境。此时需要为该系统做一个备份,以便迅速部署同样的系统。这涉及到XenServer的“Copy VM”功能。 XenServer 包含两种Copy VM(复制虚拟机)的模式,Full copy(完整复制)和Fast clone(快速克隆)。一般来说,我们常把XenServer中的“复制”功能,理解成其他虚拟化工具中的“克隆”功能,但这两个概念,在XenServer中,其实是有区别的,如字面所强调的那样,Fast clone,确实就是克隆,是VM Clone,采用链接的方式;而Full copy,则是VM Copy,采用完整的复制方式。 Full copy是将虚拟机完整地复制一份,复制速度取决于存储性能;Fast clone的速度则基本是瞬间完成,因为Fast clone直接连接到现在的或者经过重命名的Base Copy VDI,此模式会把原始 VDI会转换成基本节点。两者具体的深层次的区别,请参考此篇博文http://xenme.com/1170 要进行虚拟复制时,首先根据需要创建、安装和配置 Windows 虚拟机,并安装 XenServer Tools。准备好之后,必须关闭虚拟机电源。 下面以上述新建的CentOS6.5vm虚拟机为例,演示如何复制虚拟机。很简单的一个操作。 关闭CentOS6.5vm虚拟机,在其右击菜单中选择“Copy VM”,打开“Copy Virtual Machine”对话框。   设置新虚拟机名字,选择复制模式。 Copy mode分Fast clone和Full copy两种。这里说得很清楚。   复制的进度及完成复制耗的时间,会在XenCenter的Logs中显示,下图是对CentOS6.5vm虚拟机 进行Fast clone和Full copy的结果。   运行以上两个copy的虚拟机,会发现,网络出了问题。这是由MAC地址变化引起的。需要在系统里修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0的参数HWADDR,将其值设置为XenCenter中该虚拟机对应的“Networking”选项卡里“Device 0”的MAC值。 以上基于MAC地址变更的网络问题,主要是出现于Linux虚拟机复制中,如果是Windows虚拟机,则不存在这样的问题。 三、VM的导出与导入 官方资料如是说:XenServer允许以多种不同的格式导入和导出VM。使用XenCenter的导入向导,可以从磁盘映像(VHD和VMDK)、以开放虚拟化格式(OVF和OVA)和XenServer XVA格式导入VM,甚至可以导入在其他虚拟化平台上创建的VM。 VM的Export(导出)与Import(导入),涉及的内容是广泛而复杂的。笔者的接触很有限。本案只讨论使用xe CLI以XenServer XVA格式导入和导出VM。XVA是XenServer所特有的虚拟设备格式,用于将单个VM打包为一组文件,包括描述符和磁盘映像。文件扩展名为.xva。 Xenserver中的虚拟机导出,主要用于导入到另一台Xenserver,亦可导入到本机自身。笔者最喜欢的虚拟机复制使用的方式,其实不是Copy vm,而是Export/Import  vm。系统配置完成后,将其导出为一个.xva文件,存放在附加盘(可以是移动硬盘)存储目录里,并且复制到其他XenServer主机的存储目录下,需要的时候,可一式多份地导入到主机系统,运行使用。非常便捷,但花费的时间比Copy VM的长很多。 本案中,添加一个大小为300G的SAS硬盘,将其划分两个分区sdb1和sdb2,分别挂载到/iso和/data两个目录,前者用于存放iso镜像存储,以作为本地ISO存储库;后者用作数据存储,用于存放导出的.xva虚拟机文件。添加硬盘的操作命令及过程,跟Red Hat Linux是一样的,属于IT人的基本功,详情请见《XenServer部署实录系统——添加本地存储》一文,在此不作详述。 1.导出虚拟机 使用SSH工具(如SSH Secure Shell Client)远程连接XenServer主机,或在XenCenter中打开XenServer主机的控制台,关闭将要导出的虚拟机,然后执行以下的指令导出虚拟机,虚拟机名为在XenCenter中看到的名字,  xe vm-export vm=虚拟机名 filename=/存储路径/虚拟机名.xva 本案中是将CentOS6.5vm虚拟机导出到/data里, 具体的命令如下图所示, 注,由于这个命令执行的时间很长,一般在其后面添加&,以放到后台运行。导出完成后会提示Export succeeded。 导出虚拟机的过程中,在XenCenter的Log界面可以查看导出的进程。   2.导入虚拟机 如果要导入虚拟机,执行以下的指令,虚拟机名要预先查知,如果不存在,会报错。 xe vm-import filename=/存储路径/虚拟机名.xva 本案中是将/data/CentOS6.5vm.xva里导入, 具体的命令如下图所示。导入完成后会返回UUID号。 导入完成后,根据实际需求改更虚拟机名。当然了,系统里面,也建议更改主机名。 与Copy vm类似。这个新导入的虚拟机,MAC地址也被重写了,初次运行时,网络也是有问题的。需要在系统里修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0的参数HWADDR,将其值设置为XenCenter中该虚拟机对应的“Networking”选项卡里“Device 0”的MAC值。对于Windows虚拟机而言,不存在这样的问题。 3.通过XenCenter导出虚拟机到客户端 以上是VM在xsr01本机上的导出导入,其实VM可以通过XenCenter直接导出到安装了XenCenter的客户端PC上。这在实际应用中有很大的灵活性。 从客户端PC机上导入VM的操作,与上述导出VM类似。 当然了,这种导入导出的方法,主要应用在单机运行的环境中。在资源池的集群环境中,虚拟机的迁移有更灵活、迅速的方法。 本文转自Sunshyfangtian 51CTO博客,原文链接:http://blog.51cto.com/sunshyfangtian/1432995,如需转载请自行联系原作者
文章
存储  ·  Linux  ·  虚拟化  ·  Windows  ·  网络安全  ·  Shell  ·  监控  ·  开发工具
2017-11-22
Citrix XenServer 6.5 配置 workload balance 负载均衡
Citrix XenServer 6.5负载均衡的功能:评估池中各虚拟机的利用率,并在某主机超出性能阈值时,将 VM 重定位到池中负载更低的主机。为重新平衡工作负载,Workload Balancing 会移动 VM 以平衡各主机上的资源使用情况,提供有关主机和池运行状况、优化和虚拟机性能的历史报告,以及虚拟机移动历史记录,以帮助您完成容量规划。   负载均衡(XenServer Workload Balancing )虚拟设备下载: XenServer Workload Balancing 虚拟设备是一种基于 Linux 的虚拟机,我们可以从https://www.citrix.com.cn/downloads.html下载XenServer Workload Balancing 虚拟设备,最终会下载文件名如:XenServer-6.5.0-vpx-wlb.xva 格式的文件。   启用负载均衡要求: (1) 所有的主机要加入池中,要有共享的存储,相似的CPU型号,千兆的网卡。 (2)确认运行XenServerWorkload Balancing虚拟设备至少需要2GB RAM和8GB磁盘空间。   启用负载均衡步骤如下:   (1)在安装了XenCenter的主机上,双击下载好的“XenServer-6.5.0-vpx-wlb.xva”,然后会出现“查找要导入的文件”对话框,如图所示。也可以直接在XenCenter软件的菜单 “文件”---“导入”,选择要导入的虚拟机,效果是一样的。  (2)在“选择用来放置导入VM的位置”对话框中 选择要存放的XenServer主机或池,如果选择池的话,Workload Balancing虚拟机将自动在该池中最适合的主机上启动并运行,如果您不打算使用 WorkloadBalancing 管理 Workload Balancing虚拟设备,可能需要为 WorkloadBalancing 虚拟设备指定主服务器,以便虚拟设备始终在同一个主机上启动,如图所示。 (3)在“选择目标存储”对话框中,选择可用的共享存储,我们选择第一个iscsi2,然后点击“导入(I)”,如图所示。 注:目标存储库至少要有8GB可用空间,另外如果选择本地存储的话,则无法使用Workload Balancing来管理虚拟设备了。 (4)在“选择用来连接VM的网络”对话框中,可以设定新导入的虚拟机的网卡类型或分配到其它的VLAN中,如图所示。 (5)在“查看导入设置”对话框中,勾选 “导入后启动VM(S)”,然后点击 “完成”,即开始导入过程,如图所示。   (6)虚拟机导入后会自动启动,我们进入控制台中,可以看到系统已经开始自检,如图所示。   (7)自检完成后,会出现 “接受License协议”画面,我们输入“Y”后按回车键继续。  (8)进入配置模式,系统会让我们输入一个新的root管理员的新密码,输入完成后按回车键,要输二次,注意密码区分大小写的,如图所示。 注:当您输入新密码时,控制台 上不显示字符占位符(如星号等)。 (9)进入网络配置画面,我们输入主机名(hostname):wlb03,域名后缀(domain suffix): wlb03.hangyc.com,回车后继续,如图所示。   (15)我们返回XenCenter软件,进入池HA2的主页面,进入 “WLB”页面,点击 “连接”,如图所示。   (16) 在出现的 “连接WLB服务器”对话框中,输入我们刚才配置的Workload Balancing Server的IP地址(192.168.23.153),及端口:8012,WLB服务器凭据用户名为wlbuser,密码为我们输入的密码,下面XenServer凭据用户名为具有XenServer池管理员权限的用户名和密码,然后点“确认”,如图所示。    注:在 Workload Balancing 运行一段时间之后,如果您没有收到最佳放置建议,Citrix 强烈建议您对性能阈值进行评估,如《 Workload Balancing 管理员指南》中所述。 根据环境为 Workload Balancing 设置正确的阈值至关重要,否则它可能无法提供适 当的建议。   动态负载均衡 配置相关设定 断开方法: 点 “断开连接”即可以。 本文转自成杭 51CTO博客,原文链接:http://blog.51cto.com/hangtc/1751240,如需转载请自行联系原作者
文章
存储  ·  负载均衡  ·  数据安全/隐私保护
2017-11-15
Linux虚拟化之XenServer的安装与配置管理
系统要求  XenServer 至少需要两台单独的 x86 物理计算机:一台用作XenServer 主机,另一台用于运行 XenCenter 应用程序。 XenServer 主计算机完全专用于运行托管 VM 的 XenServer,不用于运行其他应 用程序。运行XenCenter 的计算机可以是满足硬件要求的任何通用 Windows 计算机,也可用于运行其他应用程序。 安装说明: 安装XenServer 6.5的服务器CPU必须支持虚拟化,Intel (VT-X) 或者AMD (AMD-V) 一、下载Xenserver 你可以从http://xenserver.org/下载xerserver软件,目前最新的版本为6.5。 二、安装Xenserver 下载回来之后按照下面方法进行安装。 1.放入下载回来的Xenserver iso镜像,并启动机器,将显示如下图的安装界面,直接按回车进行安装。                      2.选择键盘的方式,然后并OK。 3.我们是全新安装Xenserver,所以我们直接点击OK。 4.我们点击接受EULA。 选择OK 5.接下来是硬盘的安装画面,直接按OK即可,如果要用xendesktop,把第二个选项也按空格,提醒用虚拟机安装的朋友,如果硬盘给的太小就会提示(No disk with sufficient space to install XenServer on was found,解决方法扩展磁盘大小或者重新分配一块大的硬盘即可)。 6.选择安装方式,有本地,FTP或者HTTP,还有NFS,因为用镜像安装,就直接选择OK。   7.接下来询问是否安装到所有的补丁,点击no。   8.询问是否测试安装介质,可以选择skip跳过测试,并点击OK。 9.输入Xenserver密码,并点击OK。   10.设置IP地址,默认使用DHCP分配IP地址的,建议使用静态IP地址,如有DNS服务器,可以用动态IP地址,并点击OK。 11.输入主机名和DNS服务器,并点击OK。 12.选择DNS在那个区,选择Asia,点击OK。 13.选择时间区域shanghai,并点击OK。 14.选择时间同步方式,并点击OK.如果选择了Using NTP服务器,那么就要输入NTP服务器的IP地址,Manualtime entry为使用本地时间。 15.选择InstallXenServer 16.接下来会开始安装,安装时程中会提示设置时间,输入完时间后点OK继续安装。 17.下图提示安装完成,点击OK后自动重启 18.XenServer启动界面 19.启动完成,以下是主界面   三、Xen控制端的安装 1.   在另外一台电脑上安装XenCenter,打开ie,输入XenServer的IP地址。 2.点击XenCenterInstaller,弹出XenCenter.msi文件,下载安装XenCenter。 进入控制端,点击ADD添加XenServer服务器 下图输入服务器IP地址,用户名和密码后,点ADD添加 至此XenServer安装完成 四、XenServer的配置与管理 1.修改XenServer名称 XenServer名称上右键选Properties                              2.更改IP地址信息及hostname 在XenServer服务器选择“Network And Management Interface”,然后选择“ConfigureManagement Interface”出现用户名密码验证提示,输入对应信息后,进入设置界面。 选择对应要修改的网卡,选择static,输入要修改的IP与hostname,回车保存。 3.创建系统镜像池 XenServer安装后,默认根分区留的很少(2G avail),当此空间被占用完毕,性能就会很大程度的降低。因此,本文章分为两个部分,第一部分为如何增加ISO镜像存放目录的空间大小,第二部分为如何创建本地ISO存储库。 3.1    首先使用putty等ssh工具连接到XenServer服务器,进入命令行。  3.2    使用vgdisplay命令查看卷组(VG)可用空间(Free PE / Size),记住VG Name后面卷组的名称"VG_XenStorage-xxxxxxxxxxxxxxxxxxxxxxx"。  3.3    创建逻辑卷(LV)使用lvcreate命令,这个例子为:在已有卷组中创建了一个逻辑卷名称为iso_storage大小为20GB。  #lvcreate -L 20GB –n iso_storageVG_XenStorage-xxxxxxxxxxxxxxxxxx 3.4    输入以下命令才能发现新创建的逻辑卷(其实最后一条命令即可)。             # modprobe dm-mod  #加载使用lvm所需的相应模块             # vgscan           #扫描并显示LVM卷组列表              # vgchange –ay     #将卷组状态改为活动的 3.5    格式化刚刚创建的逻辑卷(LV)             #mkfs.ext3 /dev/VG_XenStorage-xxxxxxxxxxxxxxxxxxxxxx/iso_storage  3.6    创建挂载点             #mkdir/iso_storage  3.7    编辑/etc/fstab文件,设置自动挂载配置该逻辑卷(LV),在其中插入如下内容。             /dev/VG_XenStorage-xxxxxxxx/iso_storage /iso_storage/  ext3  defaults  0 0  3.8    挂载逻辑卷(LV)             #mount /iso_storage 4.创建本地ISO存储库 连接到Xenserver在命令行运行:  Xe sr-createname-label=iso_storage type=iso device-config:location=/iso_storage device-config:legacy_mode=truecontent-type=iso 此时通过XenCenter会发现一个名为iso_storage的存储设备 上传ISO镜像 如果没有发现iso_storage存储中的ISO镜像可以尝试使用 #xe-mount-iso-sr/iso_storage #xe-toolstack-restart 来解决。 或者通过XenCenter,选择iso_storage设备,点击左边的Storage。此时会发现下边有Rescan选项,点击即可(如图) 5.创建VM虚拟机 XenServer名称上右键选New VM… 6.克隆虚拟机 1,创建一个模板主机 2,将常用参数安装好 3,右键模板主机选择Quick Crecte 4, 进入新创建的主机,将网卡MAC改为Networking选项中对应的MAC (END) 本文转自 jvrmusic520  51CTO博客,原文链接:http://blog.51cto.com/linuxtech/1740537
文章
存储  ·  网络协议  ·  Linux  ·  虚拟化  ·  数据安全/隐私保护
2017-11-12
XenServer部署系列之04——添加共享存储
XenServer部署系列之04添加共享存储 作业环境 XenServer服务器 OS:XenServer 6.2 Hostname:xsr01 Eth0 IP:192.168.0.241/24 Gateway:IP:192.168.0.1/24 NFS服务器 OS:CentOS 6.4 Hostname:nfs01 Eth0 IP:192.168.0.204/24 Gateway:IP:192.168.0.1/24 运行软件:nfs,rpcbind 一、关于XenServer存储 XenServer的安装过程,没有分区的操作,系统安装完成后,查看磁盘情况,会发现,即便是1T的硬盘,也只留了4G的空间,并且XenServer系统文件就已经占用了其中的1.9G,只剩下2G的小得可怜的空间,连一个CentOS6.5的系统镜像都放不下。放不了ISO镜像文件,那怎么能安装虚拟机呢?对于初学者而言,这是个头疼的问题。 那么,XenServer如何实现存储扩充呢?在XenServer中的引入存储仓库的概念,存储仓库(SR - Storage Repositories)是用来存储ISO或者VDI的。Citrix官方推荐使用共享存储,这也是XenServer设计的初衷和目标,与VMWare的产品设计很不相同。目前XenServer支持FC SAN、ISCSI SAN和NFS三种存储类型,根据虚拟化类型不同,划分不同的LUN类型来满足使用。此处涉及到存储服务器,对设备成本是有要求的。 文本主要以NFS为例,讲解如何添加共享存储。具体的实现,操作起来并不难,因为大部分在操作,都是在XenCenter上图形界面进行的。 XenServer的安装相关事宜,在《XenServer部署实录——系统安装及许可》一文中已述,这里不表。 二、搭建NFS服务器 首先简单了解一下什么叫NFS。 NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。 NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。 下面开始NFS服务器的搭建,对于熟悉Linux的IT来说,这是件很容易的事情。 本案中,NFS所在的服务器系统信息如下: OS:CentOS release 6.4 (Final) IP:192.168.0.204/24 分区:/boot(500M),/(50G),/home(955G),swap(4G) 注,本案中该系统是运行在另一台XenServer上的虚拟机,采用XenServer中的CentOS6.4模板进行安装,采用默认的分区方式。这种做法是最小化安装,许多软件包都没装,包括nfs,得手动安装,比较麻烦。 在Red Hat Linux/CentOS 系统中,NFS的安装非常简单,只需要两个软件包即可,而且在通常情况下,是作为系统的默认包安装的。 nfs-utils-*:包括基本的NFS命令与监控程序  rpcbind:支持安全NFS RPC服务的连接(注,这是CentOS6下的软件包,在CentOS 5 中 为portmap) 可以这么理解RPC和NFS的关系:NFS是一个文件系统,而RPC负责信息的传输。 通过以下命令查看系统是否已安装NFS,  # rpm -qa | grep nfs # rpm –qa | grep rpcbind 如果当前系统中没有安装NFS所需的软件包,需要手工进行安装,并设置启动。 # yum install rpcbind* # yum install nfs-utils-* # service rpcbind start # service nfs start # chkconfig rpcbind on # chkconfig nfs on 在/home目录创建iso,data两个文件夹,开通过nfs实现共享,分别用作于XenServer的镜像存储仓库和虚拟机存储仓库。 # mkdir -p /home/iso # mkdir -p /home/data # vi /etc/exports (注,下面两行为编辑的内容) /home/data *(rw,sync,no_root_squash) /home/iso *(rw,sync,no_root_squash) # exportfs –a 通过以下命令查看共享情况,如果有列出共享目录,则表示共享成功。 # showmount -e 192.168.0.204 Export list for 192.168.0.204: /home/data * /home/iso  * 共享设置完成后,要以iptables中开放相关端口(这个有些复杂),或直接关闭iptables(这个最简单),否则对方访问不过来。 三、添加NFS VHD 在客户端使用XenCener连接远端xsr01主机。以下的操作在XenCenter上进行。 右击xsr01主机,在弹出的菜单中选择“New SR”,将弹出“New Storage Repository”对话框,再在里面进行相关的设置。如下图所示。   选择“NFS VHD”类型。   为该SR设置一个名字,这里采用默认命名。   填写nfs共享目录的路径。注意了,中间有个冒号的。   添加成功后,在xsr01下可以看到添加了一个名为“NFS virtual disk storage”的项目,并且自动成为默认的本地存储。 选中“NFS virtual disk storage”,在界面右则 “General、Storage、Logs”选项卡中,可以看到其容量、存储内容、日志等信息。   如果添加不成功,提示“The SR failed to complete the operation.Check your setting and try again.”请检查防火墙。 四、添加NFS ISO 操作过程与添加NFS VHD类似,如下图所示。 在“Storage”选项卡中,可以看到,此时ISO存储仓库里有两个ISO镜像可用。 五、添加CIFS ISO CIFS,也提一下概念。CIFS(Common Internet File System)是Microsoft推出的一款网络文件系统。在Win OS 中,CIFS集成在OS 内部,无需额外添加软件,所有机器都是对等的,扮演双重角色,可以作Sever,也可以是Client。相比之下,NFS要求Client必须安装专用软件。 NFS是独立于传输的,可使用TCP或UDP;CIFS面向网络连接的共享协议,对网络传输的可靠性要求高,常使用TCP/IP。NFS保留了unix的文件格式特性,如所有人、组等等;CIFS则完全按照Win OS的风格来做。 CIFS在生产环境中使用的不多,但在项目部署的前期及一些临时操作处理上,还是会常用到的。下面演示如何添加CIFS ISO。 首先,当然要有一台装有Win OS的服务器向外进行文件共享。 本案中,CIFS所在的操作系统,是本案XenCenter所在的系统,很普通的一台PC机,信息如下: OS:Windows XP SP3 IP:192.168.0.102/24 Gateway:IP:192.168.0.1/24 这里将E盘下的ISO文件夹设置为共享。这是IT的基本功,就不多说了。如图所示。(注,本案中,没有域控环境。如果该Windows XP加入了域控,这里还需要设置访问权限。) 以下的操作在XenCenter上进行。操作过程与添加NFS VHD类似,如下图所示。 注意,这个路径的写法与前面nfs的路径不同。如果该Windows XP加入了域控,这里需要填写被允许访问的用户名及其密码,当然,也可以使用Windown XP本地管理员帐号及密码进行验证。 六、其他 以上操作顺利完成后,在新建虚拟机时,便用可以选用“CIFS ISO library”或“NFS ISO library”中的ISO镜像(比如CentOS6.4),作为安装源。 虚拟机的虚拟硬盘,默认存储到“NFS virtual disk storage”存储仓库,当然,也可以选择本地原有的本地存储“Local storage on xsr01”。 就单机而言,存储在哪里都一样,但如果是多台XenServer主机,做了资源池,需要进行XMotion等高可用性操作时,NFS共享存储的强大优势就体现出来了。 在实际生产场所,由于使用到存储设备,更多的是使用ISCSI方式添加存储,优势更大。 关于虚拟机的建立、导入、导出、克隆等操作,这里暂且不作表述,留待下一章节。 本文转自Sunshyfangtian 51CTO博客,原文链接:http://blog.51cto.com/sunshyfangtian/1431292,如需转载请自行联系原作者
文章
存储  ·  Linux  ·  Windows  ·  网络协议  ·  数据安全/隐私保护  ·  Unix  ·  虚拟化  ·  网络安全  ·  安全  ·  监控
2017-11-15
《虚拟化安全解决方案》一2.4 配置Citrix XenServer
本节书摘来自华章出版社《虚拟化安全解决方案》一书中的第2章,第2.4节,作者[美]戴夫·沙克尔福(Dave Shackleford),更多章节内容可以访问云栖社区“华章计算机”公众号查看 2.4 配置Citrix XenServer XenServer的优点是它非常类似Linux,对于一些虚拟管理员,这也是缺点,因为它们可能没有命令行正确管理和配置这些系统。但仍有许多事情使用XenCenter是可以完成的,使用者仍需要利用命令行完成许多特定的任务。这里的另一点是很重要的——XenServer不是标准的Linux内核或操作系统。它是充分修改的,以至于应该仔细地考虑运行标准操作系统命令可能产生什么负面影响。 2.4.1 给XenServer打补丁 XenServer的所有补丁都被称为hotf?ixes,一个与Microsoft补丁相关的术语。为了演示XenServer与主要Linux分发版本(尤其是Red Hat和CentOS)之间的一个主要区别,系统的控制台操作系统有一个众所周知的更新工具yum的拷贝。但是,Citrix不建议启用或使用它,因为它将导致标准CentOS包被下载和安装,这可能与系统的定制包操作冲突。所有修补程序都由Citrix发布,并加密签名,当上载到一个管理程序主机的时候,这些签名要被检查。修补程序也包含下面的元数据组件:一个独一无二的修补程序的识别号码。一个简单的评估检查,它确定修补程序对要安装的单个主机的可应用性。当可应用时,安装后配置和激活的指导。1.?通过XenCenter打补丁更新XenServer的第一个方法是通过XenCenter。更新过程很简单,有一个向导引导整个过程。通过XenCenter更新,使用者有两个选择:软件更新和滚动池更新。为了开始标准软件更新,首先需要获取修补程序文件,并中心平台或本地系统存储它们,然后按照下面的步骤进行:1)在XenCenter中单击“工具”,然后安装软件更新,打开向导。2)单击“下一步”,然后单击“添加”按钮,添加修补程序文件。单击“下一步”,然后选择你想要更新的服务器,再次单击“下一步”。3)然后进行更新评估检查,XenCenter将通知你任何可能阻止修补程序正确安装的问题,例如版本不匹配。一个例子如图2.40所示。 4)在所有问题解决之后,单击“下一步”继续。5)向导的下一阶段是更新模式。选择更新XenServer的选项——自动或手动。自动模式允许XenCenter决定如何迁移虚拟机到其他主机,一旦主机被更新,可以再次将它们迁移回来。手动模式允许你选择哪个更新被发送到哪个服务器,以及何时发送,还有如何和合适迁移在主机上运行的虚拟机到其他主机。6)单击“下一步”,然后完成更新过程。滚动池更新是一个允许在一个池中更新XenServer主机到一个新的XenServer版本的工具。池中运行的服务将在更新进程中仍可用。步骤与基本更新过程非常类似。选择工具启动过程,然后是滚动池更新,然后选择池而不是单个主机。2.?通过命令行打补丁也可以使用命令行更新单个XenServer或完成滚动池更新。首先需要获取修补程序文件,在中心平台或本地系统存储它们。然后关闭或挂起主机系统上的任何运行的虚拟机。在一个池中,可以将虚拟机迁移到其他池主机,然后按照下面的步骤进行:1)复制更新文件到主机,这可以通过使用如下scp命令完成: 因此一个例子也可能是这样: 4)运行xe补丁列表命令验证主机是否接受补丁。还有其他可以打补丁的选择,但这是开始打补丁的基础。一个简单的脚本可用于自动化从命令行给XenServer打补丁,按照下面的步骤:1)首先,使用Vi编辑器创建一个名为xenpatch.sh的新文件,输入下面的代码: 2)保存脚本,退出文件。现在在命令行输入下面的命令修改脚本的权限(这样做的原因是任何用户都可能运行这个脚本): 2.4.2 用XenServer进行安全通信 与VMware ESXi很像,XenServer非常依赖SSL证书与管理控制台和组件进行交互,尤其是XenCenter。XenServer的SSL证书与XenAPI网络服务捆绑,它被多数需要访问系统的应用程序调用。在XenServer主机上验证SSL指纹是一个好主意,确认正在连接的主机是计划连接的主机,有助于防止中间人(MitM)攻击。首先,访问XenServer交互控制台,通过SSH登录或在XenCenter中选择一个XenServer主机,在右侧面板中单击控制台页面完成。一旦进入命令窗,输入xsconsole。菜单中的第一个选项,即状态显示,将显示当选择时的SSL证书指纹(见图2.41)。当使用者在XenCenter中第一次连接主机的时候,这个指纹要与呈现的匹配。 为了替换主机上默认的SSL证书,完成下面的步骤:1)在命令行,首先将原始证书文件改为另一个名称。如果出错,可以再次重命名文件,恢复系统到原始配置,如下面的例子所示: 3)一个可选的配置步骤是在让OpenSSL证书包含Dif?e-Hellman参数。这对于某些与服务器的关键交换方法是有用的,但对于多数XenServer交互这不是必需的。要这么做的话,运行下面的命令: 为了确保XenCenter认识任何SSL证书中的反常变化,可以开启改变SSL修改检测。为了实现它,登录到XenCenter,单击Tools菜单选项,选择Option。看到的第一个菜单项是Security。可以检查两个配置项:第一个是当任何新SSL证书被检测到时改变,第二个是当检测到已知XenServer主机上的SSL证书修改时改变。这些设置如图2.42所示。 2.4.3 改变XenServer默认设置 有许多可以实现的XenServer变更,它们都遵守Linux强化最佳实践。本书不是创建另一个Linux强化指南,而是将列出一些更加基本的配置步骤。这些步骤已经在XenServer最近的版本上测试过了。并且可以与其他强化步骤一起无限制地在Red Hat企业版和CentOS操作系统上测试,但是需要先检测确认XenServer能与它们一起正常工作。专注于Linux强化指南的好例子可以在互联网安全中心找到: 1.?限制运行的服务许多服务运行在默认XenServer的安装版本上。为了确定哪个服务在运行,可以执行下面的命令: 在默认安装上,应该看到下面的服务: 这些服务通常是默认需要或有用的,建议保留它们。如果看到其他服务,并确定不需要,可以使用下面的命令容易的关闭它们: 2.?改变启动行为XenServer像传统Linux系统一样,允许用户重启或登录到单一用户模式。单一用户模式是一种特殊的命令行模式,它允许对操作系统根权限访问,进行配置和紧急变更。这当然是一种责任!为了获得根密码进入单一用户模式,编辑/etc/inittab文件,输入下面一行: XenServer上另一个引导装载程序是extlinux装载程序,它也是有密码保护的。按照下面的步骤完成这个改变:1)首先,为装载程序选择一个密码,运行sha1sum命令获取一个40个字符的哈希码: 3)保持并退出文件。3.?禁用调试模式调试模式允许用户和进程潜在的访问XenServer文件系统的敏感区域,产生和读取潜在的敏感日志数据。这里建议以两种方式禁用调试模式。首先,禁用Xenstored进程的调试模式,它允许虚拟机存储(因此也允许虚拟机)访问调试模式。为了禁用Xenstored调试模式,检查文件/etc/xensource/xenstored.conf,确认没有读取的项目allowdebug=true。默认应该没有任何这些项,但周期性地检查是一个好主意。另一个调试模式访问类型是,当XenServer使用活动目录和LDAP库时,XAPI进程使用的全局目录调试模式。如禁用全局目录调试的话,编辑/etc/xapi, conf文件,找到下面的行: 将true改为false,然后保持并退出文件。4.?限制对CRON和AT的访问某些用户可能需要使用cron或at程序功能创建计划工作和任务。应该对特定管理员用户限制这些功能,保护运行完整性,限制XenServer主机上的资源消耗。为了限制对这些功能的访问,在XenServer命令行上按照下面的步骤进行: 2.4 配置Citrix XenServer XenServer的优点是它非常类似Linux,对于一些虚拟管理员,这也是缺点,因为它们可能没有命令行正确管理和配置这些系统。但仍有许多事情使用XenCenter是可以完成的,使用者仍需要利用命令行完成许多特定的任务。这里的另一点是很重要的——XenServer不是标准的Linux内核或操作系统。它是充分修改的,以至于应该仔细地考虑运行标准操作系统命令可能产生什么负面影响。 2.4.1 给XenServer打补丁 XenServer的所有补丁都被称为hotf?ixes,一个与Microsoft补丁相关的术语。为了演示XenServer与主要Linux分发版本(尤其是Red Hat和CentOS)之间的一个主要区别,系统的控制台操作系统有一个众所周知的更新工具yum的拷贝。但是,Citrix不建议启用或使用它,因为它将导致标准CentOS包被下载和安装,这可能与系统的定制包操作冲突。所有修补程序都由Citrix发布,并加密签名,当上载到一个管理程序主机的时候,这些签名要被检查。修补程序也包含下面的元数据组件:一个独一无二的修补程序的识别号码。一个简单的评估检查,它确定修补程序对要安装的单个主机的可应用性。当可应用时,安装后配置和激活的指导。1.?通过XenCenter打补丁更新XenServer的第一个方法是通过XenCenter。更新过程很简单,有一个向导引导整个过程。通过XenCenter更新,使用者有两个选择:软件更新和滚动池更新。为了开始标准软件更新,首先需要获取修补程序文件,并中心平台或本地系统存储它们,然后按照下面的步骤进行:1)在XenCenter中单击“工具”,然后安装软件更新,打开向导。2)单击“下一步”,然后单击“添加”按钮,添加修补程序文件。单击“下一步”,然后选择你想要更新的服务器,再次单击“下一步”。3)然后进行更新评估检查,XenCenter将通知你任何可能阻止修补程序正确安装的问题,例如版本不匹配。一个例子如图2.40所示。 4)在所有问题解决之后,单击“下一步”继续。5)向导的下一阶段是更新模式。选择更新XenServer的选项——自动或手动。自动模式允许XenCenter决定如何迁移虚拟机到其他主机,一旦主机被更新,可以再次将它们迁移回来。手动模式允许你选择哪个更新被发送到哪个服务器,以及何时发送,还有如何和合适迁移在主机上运行的虚拟机到其他主机。6)单击“下一步”,然后完成更新过程。滚动池更新是一个允许在一个池中更新XenServer主机到一个新的XenServer版本的工具。池中运行的服务将在更新进程中仍可用。步骤与基本更新过程非常类似。选择工具启动过程,然后是滚动池更新,然后选择池而不是单个主机。2.?通过命令行打补丁也可以使用命令行更新单个XenServer或完成滚动池更新。首先需要获取修补程序文件,在中心平台或本地系统存储它们。然后关闭或挂起主机系统上的任何运行的虚拟机。在一个池中,可以将虚拟机迁移到其他池主机,然后按照下面的步骤进行:1)复制更新文件到主机,这可以通过使用如下scp命令完成: 因此一个例子也可能是这样: 4)运行xe补丁列表命令验证主机是否接受补丁。还有其他可以打补丁的选择,但这是开始打补丁的基础。一个简单的脚本可用于自动化从命令行给XenServer打补丁,按照下面的步骤:1)首先,使用Vi编辑器创建一个名为xenpatch.sh的新文件,输入下面的代码: 2)保存脚本,退出文件。现在在命令行输入下面的命令修改脚本的权限(这样做的原因是任何用户都可能运行这个脚本): 2.4.2 用XenServer进行安全通信 与VMware ESXi很像,XenServer非常依赖SSL证书与管理控制台和组件进行交互,尤其是XenCenter。XenServer的SSL证书与XenAPI网络服务捆绑,它被多数需要访问系统的应用程序调用。在XenServer主机上验证SSL指纹是一个好主意,确认正在连接的主机是计划连接的主机,有助于防止中间人(MitM)攻击。首先,访问XenServer交互控制台,通过SSH登录或在XenCenter中选择一个XenServer主机,在右侧面板中单击控制台页面完成。一旦进入命令窗,输入xsconsole。菜单中的第一个选项,即状态显示,将显示当选择时的SSL证书指纹(见图2.41)。当使用者在XenCenter中第一次连接主机的时候,这个指纹要与呈现的匹配。 为了替换主机上默认的SSL证书,完成下面的步骤:1)在命令行,首先将原始证书文件改为另一个名称。如果出错,可以再次重命名文件,恢复系统到原始配置,如下面的例子所示: 3)一个可选的配置步骤是在让OpenSSL证书包含Dif?e-Hellman参数。这对于某些与服务器的关键交换方法是有用的,但对于多数XenServer交互这不是必需的。要这么做的话,运行下面的命令: 为了确保XenCenter认识任何SSL证书中的反常变化,可以开启改变SSL修改检测。为了实现它,登录到XenCenter,单击Tools菜单选项,选择Option。看到的第一个菜单项是Security。可以检查两个配置项:第一个是当任何新SSL证书被检测到时改变,第二个是当检测到已知XenServer主机上的SSL证书修改时改变。这些设置如图2.42所示。 2.4.3 改变XenServer默认设置 有许多可以实现的XenServer变更,它们都遵守Linux强化最佳实践。本书不是创建另一个Linux强化指南,而是将列出一些更加基本的配置步骤。这些步骤已经在XenServer最近的版本上测试过了。并且可以与其他强化步骤一起无限制地在Red Hat企业版和CentOS操作系统上测试,但是需要先检测确认XenServer能与它们一起正常工作。专注于Linux强化指南的好例子可以在互联网安全中心找到: 1.?限制运行的服务许多服务运行在默认XenServer的安装版本上。为了确定哪个服务在运行,可以执行下面的命令: 在默认安装上,应该看到下面的服务: 这些服务通常是默认需要或有用的,建议保留它们。如果看到其他服务,并确定不需要,可以使用下面的命令容易的关闭它们: 2.?改变启动行为XenServer像传统Linux系统一样,允许用户重启或登录到单一用户模式。单一用户模式是一种特殊的命令行模式,它允许对操作系统根权限访问,进行配置和紧急变更。这当然是一种责任!为了获得根密码进入单一用户模式,编辑/etc/inittab文件,输入下面一行: XenServer上另一个引导装载程序是extlinux装载程序,它也是有密码保护的。按照下面的步骤完成这个改变:1)首先,为装载程序选择一个密码,运行sha1sum命令获取一个40个字符的哈希码: 3)保持并退出文件。3.?禁用调试模式调试模式允许用户和进程潜在的访问XenServer文件系统的敏感区域,产生和读取潜在的敏感日志数据。这里建议以两种方式禁用调试模式。首先,禁用Xenstored进程的调试模式,它允许虚拟机存储(因此也允许虚拟机)访问调试模式。为了禁用Xenstored调试模式,检查文件/etc/xensource/xenstored.conf,确认没有读取的项目allowdebug=true。默认应该没有任何这些项,但周期性地检查是一个好主意。另一个调试模式访问类型是,当XenServer使用活动目录和LDAP库时,XAPI进程使用的全局目录调试模式。如禁用全局目录调试的话,编辑/etc/xapi, conf文件,找到下面的行: 将true改为false,然后保持并退出文件。4.?限制对CRON和AT的访问某些用户可能需要使用cron或at程序功能创建计划工作和任务。应该对特定管理员用户限制这些功能,保护运行完整性,限制XenServer主机上的资源消耗。为了限制对这些功能的访问,在XenServer命令行上按照下面的步骤进行: 5.?限制XENSERVER网络配置XenServer内核可以很巧妙地处理各种网络流量和条件。在/etc/sysctl.conf文件里有很多设置可以提供与/或设置。这些设置的多数都意在禁止潜在的恶意数据流。例如,互联网控制消息协议(Internet Control Message Protocol,ICMP)流、直接广播和资源路由包。另一些是过滤和拒绝服务(Denial of Service DoS)减轻工具。代码清单2.1显示了你要找的设置。在这个文件中0(零)是禁止,1(一)是启用。如果设置不存在,就创建它们!在添加和修改这些配置之后,运行命令sysctl -p启用它们(这个列表在本书的网页www.sybex.com/go/virtualizationsecurity上也有)。代码清单2.1 /etc/sysctl.conf文件的设置 2.4.4 启用XenServer运行安全 在XenServer上启用NTP和SNMP是相当简单的,尤其对熟悉Linux的管理员来说。它们都可以通过修改关键配置文件来配置并启动标准服务。为了添加时钟服务,使用Vi编辑器修改文件/etc/ntp.conf,在文件中添加下面的行(默认是有它们的): 这4个NTP服务器是Citrix推荐的,但是应该添加熟悉的时间服务器,与基础设施一起使用。为了确认这些变更生效,通过运行下面的命令重启时间服务: 这将重启NTP后台程序,配置本地NTP服务从配置文件指定的NTP服务器获取时间。为了检查XenServer主机NTP的状态,可以运行ntpq -p命令。这个命令将返回XenServer主机上NTP同步相关的许多域。为了启用和修改SNMP服务,首先需要修改本地防火墙来允许到主机SNMP数据流。可以按照下面的步骤实现:1)使用Vi编辑器修改文件/etc/sysconf?ig/iptables。在最后的规则前面的某些地方添加下面的行(最后一行应该是read -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited): 3)现在,修改SNMP配置文件/etc/snmp/snmpd.conf,这里可以配置许多设置。默认仅显示Xen管理信息库(MIB)的系统试图子树,这个不用修改,除非有特定的原因允许更多的访问。但是,应该改变默认的社区字符串从公有变为更加安全的事物。在基础设施监控系统中,将下面几行修改公用为SNMP社区字符串设置来进行设置。 4)在完成任何其他你需要的改变以后,保持文件设置并关闭它。现在,输入service snmpd start命令来重启SNMP服务。5)为了启用SNMP为一个服务自动启动,运行下面的命令; 现在应该有在XenServer主机上能运行的NTP和SNMP服务了。 2.4.5 保护和监控关键XenServer配置文件 在XenServer平台上,许多配置文件应该被监控。对于ESXi和Hyper-V来说,监控这些文件变更和整体完整性的关键在于定期在特定时间点对这个文件进行哈希运算,记录输出的值。这些值可以作为以后相同哈希运算的结果比较的基线。如果值变了,那么文件就以某种方式改变;如果哈希相同,文件就没有改变。记住更新和更新系统将可能改变许多文件,因此确保在进行这些操作之后,创建新的基线。有许多不同的方法来监控Linux平台上重要文件和目录。简单来说,下面这些目录应该在XenServer的实现中被监控: 发布版有许多内建的哈希工具,这些包括md5sum, sha-1sum, sha256sum, sha512sum。我建议使用sha512sum,因为它是这些哈希算法中最安全的一个。下面是一个简单的脚本,它能用于XenServer命令行定期完成这个任务: 添加下面的代码行到脚本文件(名为hashing.sh),用chmod +x修改脚本为可执行,然后创建包含所有之前列出的目录的文本文件(以及任何你想监控的事物)。像下面这样运行脚本: 运行后在目录/tmp中找到文件的哈希值,然后可以使用diff函数来将它与这个新文件比较。可以日常进行这种简单的文件完整性监控。 2.4.6 保护本地用户和组 在XenServer上添加、删除和修改本地用户和组的进程与标准Linux进程基本相同。也有许多可应用的基于角色访问控制定义的简单角色。1.?改变密码文件的格式遗憾的是,从一开始在XenServer的本地安全配置中就有一个重大缺陷——密码哈希值存储在/etc/passwd文件中,所有用户都有读取它的权限!今天在许多Linux系统中已经废弃了,为了支持一个更安全的系统,同时使用/etc/passwd用户文件和受限制的/etc/shadow文件存储密码哈希值。可以使用pwconv命令改变这个行为,它将转换系统去使用/etc/shadow格式。也可以通过编辑/etc/pam.d/system-auth文件将影子文件与可插拔验证模块相连,参考下面的行: 保存文件并退出。XenServer官方不支持影子密码的使用,如果将系统转换为使用/etc/shadow文件,那么可能破坏了系统在池内的兼容性!在测试实验室里面仔细测试,看看配置在生产设置中启用影子密码是否仍正常工作。2.?设置用户和组adduser和useradd命令(它们两个的功能是一样的)可用于创建一个新的,低优先级的用户。在下面的例子中,实体RegularUser被指定的用户ID是523(任何大于500的未使用数都是可接受的,也可以让useradd替你产生一个值),用户组ID是200,主目录是/home/reguser,命令行/bin/bash, reguser的用户名: 一个额外的可以采取的步骤是确保所有用户账户均有密码。查看/etc/passwd或/etc/shadow(如果你使用影子密码)文件,确认用户名后的第一个域有一个哈希值或“!!”标识,这表示账户不能登录。3.?配置密码过期和历史密码过期默认设置可在/etc/login.defs文件中配置,在这个文件中,有四个可以编辑的设置,建议显示在表2.3中。 另一个公共密码安全控制是密码历史。这个控制跟踪一定数目的用户密码,阻止用户一而再再而三的使用相同的密码。许多人觉得这个控制是有帮助的,如果某人常使用的密码在某处是缺乏抵抗力的,那么攻击者会经常在其他系统尝试相同的密码。配置密码历史,需要修改/etc/pam.d/system-auth文件。在文件中添加下面的行,记住之前的六个密码,这是笔者建议的最小值: 现在,保存文件,退出。用户将被迫在后面六个密码周期中使用新密码。4.?配置SUDOERS文件Sudo的出现对于在Xenserver平台上管理本地用户是一件好事。这是到目前为止最简单的限制和控制单个用户和/或组可以进行活动的方式。使用命令visudo编辑/etc/sudoers文件,能创建指定给用户的命令别名组——换句话说,就是某些用户和组可以不需要根权限运行的命令组。对于XenServer平台,可以通过添加下面的行,创建Xen admin命令的新命令别名组: 然后可以控制哪个用户可以访问和运行这些命令。例如,如果你有一个称为xenadmins的特殊组,你可以添加下面一行到sudoers文件: 这将授权组访问XenServer管理员的可执行文件。5.?使用PAM文件额外的用户控制由可插拔验证模块(PAM)文件管理,尽管XenServer上的该模块似乎不像在ESXi上或现代Linux变体上那样有完全功能。但是仍可以使用PAM限制用户组访问XenAPI组。首先,创建你想要的用户列表。例如,可以创建名为/etc/localadmins的文件。每行添加一个用户名。然后可以编辑PAM配置使用PAM限制这种访问。对于XenServer,所有必需的策略都在单个文件/etc/pam.d/system-auth中配置。使用Vi编辑这个文件,进行下面的修改(高亮的行): 现在,需要使用xe命令为主机启用外部PAM验证: 6.?启用活动目录验证另一种使用PAM限制访问的方法是启用XenServer活动目录验证。这通常是企业环境中验证的首选模式。首先,确认XenServer主机上的下面的防火墙端口是打开的,允许与域控制器通信(通过运行iptables -L命令完成):UDP/TCP 53 (DNS) UDP/TCP 88 (Kerberos 5) UDP 123 (NTP) UDP 137 (NetBIOS Name Service) TCP 139 (NetBIOS Session (SMB) ) UDP/TCP 389 (LDAP) TCP 445 (SMB over TCP) UDP/TCP 464 (Machine password changes) TCP 3268 (Global Catalog Query)现在需要启用外部验证就像PAM描述的那样,但要指向AD域: 另一种方式是通过XenServer添加主机到活动目录,按照下面的步骤:1)登录到XenServer,选择你喜欢的主机或池添加到域。2)在右侧单击“用户”页。3)单击“加入域”按钮。输入域名、域管理用户和用户密码。然后单击“OK”。4)现在你应该看到面板下有访问权的用户和组的列表,如图2.43所示。 对于PAM或AD验证,可以在XenServer主机上使用这个命令禁用外部验证:xe pool-disable-external-auth。现在可以利用XenServer内建的基于角色的访问控制(RBAC)系统。为了查看XenServer主机上定义的角色,运行命令xe role-list,将看到与图2.44类似的输出结果。 这些角色有下面列表所介绍的能力:池管理员:指定/修改角色,使用SSH和XenServer登录到服务器控制台,服务器备份/恢复,登出活动用户连接,创建和解除报警,取消任何用户的任务,池管理,虚拟机高级操作,虚拟机创建/销毁操作,虚拟机改变CD媒体,浏览虚拟机控制台,XenCenter试图管理操作,取消拥有的任务,读取审计日志,配置和管理WLB,应用WLB优化建议,修改WLB报告订阅,接受WLB替换建议,显示WLB配置,产生WLB报告,连接到池,读取所有池元数据。池操作员:登出活动用户连接,创建和解除报警,需求任何用户的任务,池管理,虚拟机高级操作,虚拟机创建/销毁操作,虚拟机改变CD媒体,查看虚拟机控制台,XenServer流量管理操作,取消拥有的任务,读取审计日志,配置和管理WLB,应用WLB优化建议,修改WLB报告订阅,接受WLB替换建议,显示WLB配置,产生WLB报告,连接到池,读取所有池元数据。虚拟机电源管理员:虚拟机高级操作,虚拟机创建/销毁操作,虚拟机改变CD媒体,查看虚拟机控制台,XenServer流量管理操作,取消拥有的任务,读取审计日志,配置和管理WLB,应用WLB优化建议,修改WLB报告订阅,接受WLB替换建议,显示WLB配置,产生WLB报告,连接到池,读取所有池元数据。虚拟机管理员:虚拟机创建/销毁操作,虚拟机改变CD媒体,查看虚拟机控制台,XenServer流量管理操作,取消拥有的任务,读取审计日志,配置和管理WLB,应用WLB优化建议,修改WLB报告订阅,接受WLB替换建议,显示WLB配置,产生WLB报告,连接到池,读取所有池元数据。虚拟机操作员:虚拟机改变CD媒体,查看虚拟机控制台,XenServer流量管理操作,取消拥有的任务,读取审计日志,配置和管理WLB,应用WLB优化建议,修改WLB报告订阅,接受WLB替换建议,显示WLB配置,产生WLB报告,连接到池,读取所有池元数据。只读:取消拥有的任务,读取审计日志,配置和管理WLB,应用WLB优化建议,修改WLB报告订阅,接受WLB替换建议,显示WLB配置,产生WLB报告,连接到池,读取所有池元数据。为了利用XenServer RBAC的优势,你需要添加用户(本地或基于AD的)到系统作为主题,主题是RBAC能理解的目标类型,因此需要在利用RBAC系统的优势之前匹配这些。添加用户为主题的命令如下: 例如,图2.45显示一个加入Virtsec.com域的主机,其中添加一个域用户名为shack。这被后面的xe subject-list验证(在图中,一些输出被截断了)。 7.?设置基于角色的访问控制现在用户可以被添加到一个或多个系统的角色中。为了用PAM完成这个任务,按照下面的步骤进行:1)停止XenAPI服务(xapi): 2)复制文件/var/xapi/state.db,然后用Vi编辑文件。搜索添加作为主题的用户名。应该看到与下面类似的信息(假设用户名是XenAdmin1): 3)新主题默认被添加到池管理员角色,但是,出于不同的原因可能会应用不同的角色。那么可以在运行xe role-list后得到你获得的角色的通用唯一标识符(UUID)。在之前提供的例子中(如图2.44),Vm Admin角色的UUID是aaa00ab5-7340-bfbc-0d1b-7cf342639a6e。修改文件state.db中的行为读: 4)保存,退出state.db文件,然后重启XenAPI服务: 简而言之,这就是为PAM添加RBAC的过程。为AD添加RBAC更简单点!使用下面命令之一,添加AD用户或组到特定角色(这些完成相同的事情): 在添加了AD用户后,你应该能够使用域认证信息登录到系统中。图2.46显示了通过SSH用域管理账户shack@virtsec.com登录到XenServer主机的例子。正如你所看到的,由于指定了RBAC Pool Admin角色,用户在系统上被授予了全部权限。 使用RBAC有许多许多好处,主要是有细粒度的权限设置和详细的所有用户活动的审计日志生成。本书的第7章将大体介绍审计日志和登录。 2.4.7 锁定对XenServer平台的访问 XenServer有许多可用的方法控制对系统和服务的远程访问。首先,对于许多版本而言一个标准Linux组件,是TCP包装器。TCP包装器由两个文件组成,/etc/hosts.allow和/etc/hosts.deny,它们可以明确的被配置为允许和拒绝访问某些在/etc/xinetd.d中有的INET服务。这两个文件有相似的语法,当在文件中放置条目用于访问控制的时候遵循特定的顺序:1)当服务器/客户组匹配/etc/hosts.allow文件中的一条的时候,访问被授权。2)当后台程序/客户组匹配/etc/hosts.deny文件中的一个条目的时候,访问被拒绝。3)否则,访问被授权(如果根本不存在条目)。许多组织仅选择将所有条目(允许和拒绝的)都放在/etc/hosts.allow文件中,下面演示了SSH后台程序的一个允许和一个拒绝的条目: 最后,你可以通过配置内建的IPTables防火墙控制多数出入XenSerer的流量。XenServer 6.x主机的默认防火墙规则包括如下项目: 看看这个列表,能注意到一些不同寻常列出的端口,例如互联网打印协议(IPP,端口631)。为什么有它?好问题。好消息是这些端口的多数默认没有启用,没有流量。防火墙仅仅是这么设置它们。下面是企业版XenServer中使用的多数常用端口:XenCenter端口TCP 22(SSH)TCP 443(XenAPI管理)TCP 5900(用于Linux客户的VNC)TCP 3389(用于Windows guests客户的RDP)资源池端口TCP 22(SSH)TCP 443(XenAPI管理)内部基础设施端口TCP/UDP 123(NTP)TCP/UDP 53(DNS)TCP 389(活动目录或LDAP)TCP/UDP 139(NetBIOS会话服务)TCP/UDP 445(Microsoft-DS)存储端口TCP 3260 (iSCSI) TCP 2049 (NFS)TCP 21605 (存储链接网关通信之上的简单对象访问协议[SOAP])有许多方式配置本地IPTables防火墙,一个简单的方法是在命令行提示符中输入命令lokkit,然后将看到如图2.47所示的界面。 也可以在这个界面启用SELinux(安全增强Linux)。有三种选择:enforcing(增强的):启用SELinux。permissive(许可的):仅发出警告而不实际控制平台上的行为。disabled(禁止的):关闭SELinux。SELinux配置可能非常复杂,超出了本书的讨论范围。仅需要知道的是,在多数环境中它带来的问题比具有的价值多!为了在本地防火墙上快速完成讨厌的配置,选择自定义,应该看到图2.48类似的界面。这里,可以容易地启用或禁止到来的防火墙规则。单击“OK”,然后再次单击“OK”结束。为了查看有哪些规则,运行下面的命令: 也可以简单地添加新防火墙规则。例如,为了添加新规则允许TCP端口31337在INPUT链中,可以使用下面的语法: 现在,除了root用户以外都被明确使用cron或at功能。5.?限制XENSERVER网络配置XenServer内核可以很巧妙地处理各种网络流量和条件。在/etc/sysctl.conf文件里有很多设置可以提供与/或设置。这些设置的多数都意在禁止潜在的恶意数据流。例如,互联网控制消息协议(Internet Control Message Protocol,ICMP)流、直接广播和资源路由包。另一些是过滤和拒绝服务(Denial of Service DoS)减轻工具。代码清单2.1显示了你要找的设置。在这个文件中0(零)是禁止,1(一)是启用。如果设置不存在,就创建它们!在添加和修改这些配置之后,运行命令sysctl -p启用它们(这个列表在本书的网页www.sybex.com/go/virtualizationsecurity上也有)。代码清单2.1 /etc/sysctl.conf文件的设置
文章
安全  ·  网络协议  ·  Linux  ·  网络安全  ·  数据安全/隐私保护
2017-05-02
Citrix XenServer 关键配置文件
XenServer 在启动的时候,会根据提前准备好的脚本以及XAPI程序去检查一系列的关键配置文件,确认这个关键的配置文件都处于正确的配置状态,并读取相应的参数和配置才能正常启动。如果稍微有关键的配置文件出现损坏或者管理员手动修改了其中的一些配置文件,导致出现错误;那么XenServer将自动进入维护模式。如果出现这种情况,那么就需要XenServer本身的健康检查工具或脚本来进行常规配置文件的检查,并修复或者改正错误的配置文件参数。这个工具或者脚本跟会 根据XenServer里面已经设计好的一个安全的健康系统模型来进行配置文件比对,该模型包括了XenServer在安装好之后成功启动的一个正确模型配置文件参考。 举个例子来说,比如我们有时会遇到通过XenCenter连接XenServer出现问题,XenCenter 无法连接到XenServer,通过检查发现XenServer的网络处于活动状态,其80端口和443端口以及22端口处于开放状态。这种情况就是XenServer的其中某一关键配置文件处于异常状态,导致XenServer的需要读取该配置文件的服务读取参数或配置错误,无法正常启动。本例中XenCenter无法连接到XenServer,但是在22端口开放的情况下,我们需要通过SSH连接到XenServer进行故障的查看和排除。 SSH上去的第一步我们首先需要检查XenServer的服务运行是否正常,一般来说XenCenter是和XAPI服务打交道的,XenCenter连接不上和XAPI有关系。通过查看服务可以发现XAPI服务没有启动或者说启动错误,查看相应的Log日志。知道是该服务读取配置异常导致无法启动。根据提示进行相应配置文件的修复,保证XAPI服务成功启动。例如XAPI启动会读取state.db,如果是state.db出现问题,那么我们只需要重置state.db即可恢复到初始化状态,保证XAPI服务启动。 重置state.db一般的操作是,cd到/var/xapi目录下 对现有的state.db 进行修改,使用命令mv state.db state.db.bak,然后运行service xapi restart,会重新生成一个state.db。之后服务即可正常运行。但是这样配置之后所有VM的配置都会丢失。所有在运维的时候要注意备份state.db等关键配置文件。在有备份的情况下我们恢复正常情况下的state.db,配置就回来了,不是吗。 那么XenServer都有那些关键的配置文件呢? /boot/extlinux.conf XenServer的引导程序配置文件,就和Linux的启动文件是类似。这个启动配置文件是基于SysLinux中EXT-based的文件系统内核启动配置文件。这个配置文件里面说明和定义了启动内核的默认配置信息。其启动的默认配置信息如下所示: 此外,着个配置文件还提供串行控制台访问或xeserial,以及安全内核模块: 在最新的XenServer 7中,引导程序已在不使用extlinux,而是改为GRUB2。 /etc/hosts 和Linux系统一样,用于解析主机名的配置文件,在/etc/hosts下可以看到基本的配置信息。该文件里面配置是提供给Dom0解析一下项目使用的: localhost localhost.localdomain 127.0.0.1 /etc/hostname 这个配置文件里面的配置的信息资源用于提供给XAPI使用。比如XenCenter通过XAPI读取该配置文件的主机名信息显示在XenCenter的GUI界面中。 /etc/multipath.conf 这个配置文件主要用于存储目的,在XenServer中连接存储时如果外面考虑存储的链路高可用,一般都采用多路径的形式连接后端的共享存储设备。XenServer支持DM和MP两种多路径技术,这个配置文件里面定义相关存储多路径的配置,是XenServer存储冗余解决方案的重要配置文件。 一般来说我们在实施的时候可能会涉及到修稿该配置文件,因为XenServer正常的两种多路径技术还得和后端的共享存储进行联动,即后端共享存储也要支持DM-MP这类的多路径技术才行。XenServer的该配置文件中默认定义对DM多路径技术的支持,即我们经常在XenCenter中,通过主机进入维护模式在属性中开启的多路径选项。而对于MPP的多路径技术,需要在配置文件中手动进行修改。为什么会是这样的情况呢,皆因现在的存储一般情况下都是正常DM多路径技术,MP多路径技术只有少部分存储支持。因此在遇到支持MP多路径而不支持DM多路径的存储,就需要手动修该配置文件,启用MP多路径。 /etc/resolv.conf 该resolve.conf文件包含安装期间指定为XenServer的 DNS条目,或通过XenCenter或XAPI命令更改的DNS记录信息。这个文件可以手动修改用于排除名称解析问题。 /etc/iscsi/initiatorname.iscsi Open-iSCSI的安装配置文件,以方便使用基于iSCSI技术的连接存储。在安装期间,将在/etc/iscsi/initiatorname.iscsi为每个XenServer主机生成一个唯一的iSCSI限定名称(IQN) 我们在使用iSCSI来连接存储的时候,就可以查看该配置文件找到XenServer主机的IQN,当然也可以使用XE命令进行查看。需要注意的是重新安装XenServer该值是会变化的。 /etc/xensource/ 涉及到的Xen的绝大部分“配置”文件,XAPI服务等核心进程的配置文件都存储在这里。这些大多数文件都在安装中产生。 /etc/xensource/boot_time_cpus 该配置文件主要内容是在每次系统启动时所读取的包含的有关物理主机插槽和内核的信息。 # diff/etc/xensource/boot_time_cpus /proc/cpuinfo 该命令查看boot_time_cpus文件的内容。 这个信息是不只保存来提供给dom0使用,还会被更新到XAPI数据库中。 /etc/xensource/bugtool/ bugtool目录有几个子目录和XML文件,它定义了XenServer的内置bugtool的范围、属性和数据的输出限制。这样的文件规定了该工具最大输出大小和其他所需的内核崩溃转储(或服务器状态报告)访问标准,以及如何利用和存储在错误的条件下所需要的数据。 /etc/xensource/db.conf 这个配置文件是 XenServer数据库配置信息,真正的命名稍长,是db.conf.rio,主要存储的配置信息描述如下: 在哪里去找XAPI数据库 在读取数据库时使用的格式 有关会话使用及会话有效性的信息 /etc/xensource/installed-repos/ 根安装和升级以及补丁包等有关系的配置文件,里面定义了安装的系统版本以及系统包,补丁包等等内容,如果我们需要更新,也可以使用修改该配置文件的方法。 /etc/xensource/master.d/ 这个目录可以包含主机初始化过程中使用的一个或多个初始化级别的脚本。此外,一个示例性的初始化脚本是专门提供给XenServer Pool Master说使用的。在资源池中根据主机的运行级别运行相应脚本操作相应功能。现在这些脚本在XenServer 7上是全新重新编写的。XenServer 7的Dom0是基于CentOS7开发定制版本。其在启动是时候初始化程序是systemd模型。这种模式在执行如何init-level脚本时和之前的Linux版本有较大的区别。因此我们以前在XenServer6的环境下说编写的启动脚本或者优化脚本就已经不起作用了。 /etc/xensource/network.conf 这是XenServer的网络配置文件,里面描述了XenServer主机说使用的网络类型及依稀参数。在该配置文件中有两种选择:bridge或openvswitch。其中bridge对应的是传统的Linux网络的bridge网络堆栈,同时openvswitch对应开放虚拟交换机或OVS。该OVS是在XenServer6.0的时候被默认在该配置文件中设置为默认配置的。包括最新的XenServer 7也是。但是OVS还需要开发,相比较bridge而言,openvswitch在使用网络大吞吐上还存在瓶颈,当然这个结论目前仅限于XenServer,至于KVM的性能如何还需要测试才知道。 /etc/xensource/pool.conf Pool文件用于主机确定自己是处于资源池环境(Master还是Slave)还是单独的独立运行环境。该文件拥有主要的两个健值:Master 或 Slave。    一般来说,如果在切换Master的时候,我们就可以使用cat/etc/xensource/pool.conf来查看当前主机是处于Master还是Slave。查询的结果如果是Slave,那么结果还会显示Master的信息,比如IP地址等。在没有开启HA的情况下,我们还可以手动修改该配置文件,手动进行Master还Slave的指定。 /etc/xensource/ptoken 该ptoken文件于SSL一起,被用作XenServer的资源池之间个成员服务器的安全通信。 /etc/xensource/scripts/ 该脚本目录包含一个或多个初始化脚本,很像master.d目录。 /etc/xensouce/xapi-ssl.conf 这个文件主要是用来规定使用443端口传输和XenAPI通信的加密流量的认证、加密证书、私钥等信息。同时还涉及加密类型,加密方法,以及在哪里存储XenServer的证书。 /etc/xensouce/xapi-ssl.pem XAPI-ssl.pem是/etc/init.d/xapissl上安装产生的私钥。它引用XAPI-ssl.conf配置文件中的定义为XenServer主机创建了独特的保密增强(PEM)文件。 /etc/ntp.conf 是属于比较重要的配置文件之一。我们都知道如果宿主机的实际和我们的环境时间如果产生较大的出入,是可能会影响到骑上说承载还虚拟机和其他业务系统的关联于调度的。有时候我们通过命令调节XenServer的时间发现老是出现反弹,那么我们可以采用修改NTP配置文件的方法,一劳永逸修好和同步宿主机的时间。 /var/xapi/ 该目录包含完整的XAPI数据库,这是在主机进行安装之后或者资源池创建之后,说进行的XAPI配置和管理信息。该目录就包含了在文章初期我们所述的状态数据库例子,一般来说对于该目录我们最好的办法是不要修改里面内容,因为这里面还配置文件大部分都是基于运行环境自动进行生成的,我们手动进行修改之后可能的问题就是数据的丢失,就比如删除掉状态数据库,将会导致的是我们在XenCenter上看不见我们以前的虚拟机和共享存储等信息了。但是也不用着急和心慌,因为数据都还在,该啥样还是啥样,只是GUI界面说展示的信息没有了而已,通过命令行我们还是可以查看到的。那么在这种情况下需要恢复GUI的显示,只有手动将这些关联数据和信息进行恢复了。 /var/patch/ and /var/patch/applied/ 这两个目录极其重要,因为它们包含了补丁程序,补丁的列表,和维护XAPI必不可少的元数据。无论你是否是一台独立的XenServer主机还是XenServer资源池,XAPI必须要保证以下条件: 1.补丁已经被应用到独立主机。 2.补丁已经被应用到所有主机池。 3.所有主机在修补了补丁后的动作,诸如重新启动等均已完成。 在这两个目录中说包含的补丁程序每一个都有一个独特的标识,即基于UUID的文件名的文件。同时此目录是不能够被删除的,因为XAPI会通过该目录检测XenServer的补丁情况,然后如果在联网的情况下XAPI还会对比补丁列表以提醒或**新的更新。 本文转自不要超过24个字符博客51CTO博客,原文链接http://blog.51cto.com/cstsncv/1924996如需转载请自行联系原作者 cstsncv
文章
存储  ·  安全  ·  Linux  ·  数据库  ·  数据安全/隐私保护
2017-11-21
虚拟化系列-Citrix XenServer 6.1 安装与配置
  一、XenServer 6.1简介         Citrix XenServer服务器虚拟化系统通过更快的应用交付,更高的IT 资源可用性和利用率,让数据中心变得更加灵活、高效。XenServer 在提供了关键工作负载(操作系统、应用和配置)所需的先进功能的同时,不会牺牲大规模部署必需的易于操作的特点。利用独特的流技术,XenServer可通过虚拟或物理服务器快速交付各种工作负载,成为企业每台服务器的理想虚拟化平台。         而在2012年10月17日,北京——思杰公司日前宣布推出业界领先的企业级虚拟化平台XenServer 6.1,XenServer 6.1可创建和管理用于服务器、桌面和云计算的虚拟化基础设施。新版XenServer加强了针对数据中心整合的服务器虚拟化功能,通过先进的虚拟机迁移技术、增强的网络连接和安全特性、更好的供应商兼容能力以及自动化的虚拟机转换工具,为企业向云计算的迁移提供了捷径。它能高效地管理Windows和Linux虚拟服务器,以更高的性价比实现服务器资源整合,提供良好的业务连续性。XenServer还增加了一套丰富的管理及自动化功能、增强的云管理集成能力和安全性,帮助用户优化未来的云计算数据中心平台。         新版XenServer 6.1相比上一个版本(6.0.2)增加了以下功能: 1、增强了与领先云平台的集成:能够直接与Apache CloudStack和采用Apache CloudStack技术的Citrix CloudPlatform进行集成,防火墙分区和工作负载均衡操作更加简便,使公共云和私有云平台免受攻击,提升了各类型企业IT系统的安全性和可扩展性。 2、“无共享”存储实时迁移:新版XenServer采用全新的存储技术XenMotion,能够让IT人员无需借助共享存储即可实时迁移正在运行中的虚拟机。XenMotion存储功能使得“无共享”架构的实时迁移成为可能,作为虚拟磁盘的存储空间可以在服务器资源池内部以及它们之间自由迁移,提高了存储利用率,简化了备份及维护操作,并且在云基础设施上实现了真正意义上的虚拟机灵活性。 3、从VMware到XenServer的批量转换:XenServer转换管理器是一种简单易用的工具,能够自动、批量地将VMware虚拟机转换成XenServer虚拟机,最大限度地降低成本、提高效益。该工具能够帮助客户确保其数据中心和云基础设施内所安装的应用程序能够随时用到最好的虚拟化平台。         在本博客中就主要介绍Citrix XenServer服务器虚拟化,从各个方面去了解除了VMware vSphere虚拟化平台的另一个虚拟化平台。 一、XenServer 6.1简介 二、安装XenServer 6.1 三、安装设置XenCenter 四、使用Active Directory(AD)验证用户 五、申请XenServer 6.1 licence许可 六、建立Citrix Licensing 服务器         XenServer是建立在开源Xen系统管理程序基础之上的一个完整的服务器虚拟化平台,XenServer是除VMware vSphere外的另一种服务器虚拟化平台,其功能强大、丰富,具有卓越的开放性架构、性能、存储集成和总拥有成本。Citrix XenServer是基于开源Xen hypervisor的免费虚拟化平台,该平台引进了多服务器管理控制台XenCenter,具有关键的管理能力,通过XenCenter可以管理虚拟服务器、虚拟机(VM)模板、快照、共享存储支持、资源池和XenMotion实时迁移。 Citrix XenServer是 Citrix推出的完整服务器虚拟化平台。XenServer 软件包中包含创建与管理在Xen(性能接近本机性能的开源半虚拟化虚拟机管理程序)上运行的虚拟 x86 计算机部署所需的全部内容。XenServer 已针对 Windows 和 Linux 虚拟服务器进行了优化。Citrix XenServer是一种全面的企业级虚拟化平台,用于实现虚拟数据中心的集成、管理和自动化。一整套服务器虚拟化工具可在整个数据中心内实现成本节约。更高的数据中心灵活性和可靠性可为您的企业提供高性能支持。此外,多种新特性可以有效管理虚拟网络,将所有虚拟机连接在一起,并为各应用用户分配虚拟机管理接入权限。         XenServer 6.1版提供四个版本,分别是免费版、高级版、企业版和白金版。所有XenServer版本均包含XenCenter管理功能 。     二、安装XenServer 6.1         尽管 XenServer 通常部署在服务器级硬件上,但 XenServer 也与很多工作站和便携式计算机型号兼容。XenServer 主机应为专用于托管 VM 的 64 位 x86 服务器级计算机。该计算机应运行经过优化及增强的Linux 分区,并通过支持 Xen 的内核控制面向 VM 的虚拟化设备与物理硬件之间的交互。在安装XenSerer之前,要在主机BIOS中打开Inter-VT功能。 1、可以从网上下载XenServer安装文件,将其刻录成CD。将主安装 CD 插入主计算机的 DVD 驱动器中。选择从 DVD 驱动器引导。重启计算机,此时会显示初始引导消息和 Welcome to XenServer(欢迎使用 XenServer)界面,在这个界面下,有两个选项:按F1键表示进行标准安装;按F2键表示进行高级设置。 2、在选择按F1键进入标准安装后,进入安装设置界面,在选择键盘布局页面中,选择要在安装过程中使用的键盘布局。 3、选择键盘后会显示 Welcome to XenServer Setup(欢迎使用 XenServer 安装程序)界面,如图13-5所示,告知用户在安装Xenserver时会重新格式化本地硬盘,所有原来的数据都会丢失,并且要求用户确认是否有重要数据。确定后选择 OK(确定)。在整个安装过程中,可以通过按 F12 键快速前进到下一个屏幕。要获得常规的帮助信息,请按 F1 键。 4、在citrix用户协议中,阅读并接受 XenServer最终用户许可协议 (EULA),因为Xen的内核版本是Linux,开源系统,所以必须选择同意用户许可协议。 5、如果您拥有多个本地硬盘,请选择主磁盘进行安装。选择 OK(确定)。下面是开启本地cache功能,能够减小存储的压力,在DDC服务器配置中,选择host时也要对应开启才行,主要是针对Citrix的虚拟桌面。 6、在选择安装介质中选择 Local media(本地介质)作为安装源。 7、当系统询问您是否希望安装任何增补包时,请选择 No(否)继续。 8、在验证安装源界面中选择 Skip Verification(跳过验证),然后选择 OK(确定)。如果在安装期间遇到问题,建议您验证安装源。 9、设置并确认 root 用户密码,XenCenter 应用程序将使用此密码连接 XenServer 主机。 10、设置将用来连接 XenCenter 的主管理接口。如果计算机有多个网络接口卡 (NIC),选择用来实施管理的网卡,将管理 NIC 的 IP 地址配置为静态 IP 地址或使用 DHCP。手动指定或通过 DHCP 自动指定主机名和 DNS 配置。 11、如果手动配置 DNS,请在提供的字段中输入主要(必需)、二级(可选)和三级(可选)DNS 服务器的 IP 地址。 12、选择时区,先选择地理区域,然后选择城市。 13、指定服务器在确定本地时间时所用的方法:使用 NTP 或手动输入时间。选择 OK(确定),如图13-16所示。如果使用 NTP,您可以指定是由 DHCP 设置时间服务器,还是在下面的字段中至少输入一个 NTP服务器名称或 IP 地址。 14、设置完成后选择 Install XenServer(安装 XenServer)。 15、选择安装后,XenServer会进行安装,安装过程中需要重新启动服务器。 16、如果选择了手动设置日期和时间,系统会提示您输入本地时间信息。   17、 Installation Complete(安装完成)屏幕中,从驱动器中弹出安装 CD,然后选择 OK(确定)重新引导服务器。 18、服务器重新引导后,XenServer 将显示 xsconsole,这是一个系统配置控制台。到此,Citrix Xenserve安装结束。     三、安装设置XenCenter         安装XenCenter 要求操作系统为Windows 7、Windows XP、Windows Vista、Windows Server 2003、WindowsServer 2008、Windows Server 2008 R2(所有版本)或.NET Framework3.5版本。         安装XenCenter要求的硬件配置: CPU 主频最低 750 MHz,建议使用 1 GHz 或更快的 CPU;RAM 最低 1 GB,建议使用 2 GB 或更高容量的 RAM;磁盘空间最低 100 MB;网络卡为100 MB/s 或更快的网卡;屏幕的分辨率最低 1024x768 像素。         下载XenCenter可以访问之前安装好的XenServer,可以通过IE来访问下载XenCenter,IE访问提供安装文件和iso文件的XenCenter。下载后将xenserver主安装 CD 插入要运行 XenCenter 的计算机的 DVD 驱动器中。打开 CD 上的 client_install 文件夹。或者从Citrix的官方网站上下载XenCenter安装文件。双击 XenCenter.msi 开始安装。 1、在IE浏览器中,输入XenServer的地址,然后点击继续浏览。 2、可以按照自己的需求来下载相应的格式的XenCenter。 3、开始Citrix XenCenter安装向导操作。该向导允许您修改默认目标文件夹,然后安装 XenCenter。 4、选择Citrix XenCenter的安装目录,单击浏览来更改安装目录。点选使用Citrix XenCenter的用户 5、在已准备好安装Cirtix XenCenter页面中,单击安装,开始安装Citrix XenCenter。 6、按照安装向导提示的进行安装,直到安装完成。 7、通过 XenCenter,可以从 Windows桌面计算机管理 XenServer 环境并部署、管理和监视虚拟机。从 XenCenter 监视和管理服务器上的活动,需要将该服务器添加到 XenCenter 的“托管”资源集合中。首次连接服务器时(通过工具栏上的添加新服务器或服务器菜单) 8、单击添加服务器图标,以打开添加新服务器对话框。 9、在服务器框中,输入要添加的服务器的 IP 地址或 DNS 名称。如果有多个XenServer服务器,可以通过在服务器框中输入用分号分隔的名称或 IP 地址,可以添加具有相同登录凭据的多个服务器。键入在 XenServer 安装期间设置的用户名(例如 root)和密码。 如果在 XenServer 环境中启用了 Active Directory (AD) 授权,可以在此处输入 AD 凭据。单击连接,将显示连接进度监视器,要取消连接,请单击取消。 10、成功添加XenServer服务器后,可以看到XenServer服务器中的信息和虚拟机。     四、使用Active Directory(AD)验证用户         如果要使用多个用户和用户组来管理XenServer服务器,就必须使用 Active Directory 用户账户进行身份验证。XenServer 用户能够使用其 Windows 域凭据登录到池的 XenServer。可以为特定用户配置不同访问权限级别。访问可通过使用者来控制。XenServer 中的一个主题对应目录服务器上的一个实体(用户或组)。启用外部身份验证后,将首先针对本地 root 用户的凭据来检查用于创建会话的凭据(以防目录服务器不可用),然后针对使用者列表进行检查。要允许访问,必须为授权访问的用户或组创建一个使用者。         下面就介绍如何将XenServer服务器加入到域,并添加域中的管理员。 1、单击选中要加入域的XenServer,在操作界面里选择用户,当前未配置AD,要启用AD身份验证,单击“加入域”按钮, 2、在启用AD身份验证的对话框中输入域名和域的管理员。 3、成功加入域后,会显示目前具有管理XenServer服务器的本地管理员root。要添加域中的管理员,单击“添加”按钮。 4、将用户或者用户组输入到“名称”文本框里,可以输入多条目录并用逗号或者分号分隔。输入完成后,单击授予访问权限。 5、通过Xenserver加入的域来解析所输入的用户名,并添加到XenServer中。 6、添加成功后会在具有访问权限的用户和用户组中显示。也可以删除角色和更改角色。 7、在更改角色里,可以设置域中用户的权限,包括池管理员、池操作员、VM超级管理员、VM管理员、VM操作员和只读。     五、申请XenServer 6.1 licence许可       Citrix XenServer是一款免费的虚拟化产品,但是如果用户要使用到XenServer的高级功能时,就必须要购买相应的版本。Citrix针对不同的企业用户,制定了相应版本。Xenserver是通过授权文件来进行授权。其授权文件是以lic或者是licx结尾。免费版的激活方式与收费版本的方式略有不同。       Citrix公司提供免费版本的XenServer,无论是企业还是个人,都可以安装使用免费版本的XenServer。Citrix XenServer 可免费用于生产,无约束或时间限制。要使用XenServer,只需激活该产品即可,在激活的过程中Citrix会收集记录使用该产品的意图。申请免费版本的许可证的有效期为一年,如果一年后许可证失效,仍可以继续申请使用,软件会在许可证快到期的一个月内开始提醒管理员许可证到期。在XenServer 主机获得许可之前,可以以 XenServer(免费版)的形式运行 30 天。30天后,将无法启动任何新的、已挂起或已关机的 VM,直至主机激活或为其配置 Citrix 许可。 1、首先在XenCenter的菜单栏中,依次单击工具>许可证管理器(License Manager) 2、击后进入许可证管理器管理器,会显示XenServer的服务器的版本和授权期限,由于没有申请任何许可证,默认是免费使用30天。选择一个或多个要激活的主机。单击激活免费 XenServer,然后选择申请激活密钥。 3、选择申请激活文件(Request Activation Key) 4、XenCenter 将打开一个 Web 浏览器,并进入 Citrix XenServer Activation(Citrix XenServer激活)页面,按照打开的页面,填写相关信息。切记,一定要填写正规的邮箱地址,许可密钥是通过邮箱来发送给申请者的。 5、激活表单上输入详细信息,然后单击 Submit(提交),此时会将许可密钥通过注册者填写的邮箱地址发送。通常,激活密钥会在 10 分钟内生成并通过电子邮件发给您。但是,在某些情况下,最长可能需要 30 分钟。 6、收到的包含激活密钥(文件扩展名为 .xslic)的电子邮件的内容为如何向XenServer激活密钥。申请出来的License可以被多台服务器使用。       六、建立Citrix Licensing 服务器         Citrix 高级版、企业版和铂金版 XenServer 要求使用的每台 XenServer 主机都有一个许可证。许可证不再存储在主机服务器上,而是必须在单独的一台许可证服务器上添加和管理许可证文件。现在,XenServer 使用的许可方式与其他 Citrix 产品相同,这意味着可以跨产品共享许可证服务器。它也可以为XenServer、XenApp、XenDesktop等Citrix产品许可。创建许可证服务器是针对已经购买了Citrix XenServer的企业和个人,使用许可证服务器来激活XenServer服务器。         首先是要安装Citrix Licensing 服务器,从Citrix网上下载Licensing 服务器,Citrix Licensing可以在运行Microsoft 操作系统的服务器上安装许可证服务器。包括Windows Server 2003 ,Windows Server 2008,Windows Server 2008 R2,Windows 7,32 位和 64 位版本,并且需要安装 Microsoft .NET Framework 3.5,浏览器支持Internet Explorer 6.0到 9.0版本。 1、运行CTX_Licensing.msi安装程序,同意接受许可协议中的条款,单击下一步。 2、默认安装路径或者单击更改来改变安装目录,单击安装。 3、正在安装中,直到安装完成。 4、在完成安装Citrix Licensing后会弹出简单设置界面,接受或更改许可组件使用的默认端口号。 如果需要,可以在安装后更改这些端口号,许可证服务器端口号为 27000,供应商后台程序端口号为 7279,控制台 Web 端口为 8082,并且设置admin的密码。 5、打开IE浏览器,输入Citrix Licensing的地址加端口号8082。单击右上方的“管理”按钮,来设置Licensing和导入许可证书。 6、可以查看与许可证服务器和运行许可证服务器的系统有关的系统信息。单击位于许可证管理控制台右上角的管理选项,然后单击系统信息选项卡,可查看信息。 7、在许可证管理控制台中,本地用户以及 Active Directory 用户和组通过控制台进行管理,并存储在控制台中。 这些用户不会连接到计算机的本地用户。 Active Directory 用户和组属于 Active Directory/网络身份验证系统的一部分。要向 Active Directory 用户和组提供支持,Windows 许可证服务器必须属于 Microsoft Active Directory 域的成员,且必须运行许可证管理控制台。 Windows NT 域不受支持。用户配有本地角色或 Active Directory 角色,以便其能够添加用户和组。 8、单击导入许可证,浏览至许可证文件,如果直接将文件复制到 MyFiles 目录中,或者如果文件与现有文件具有相同的名称,请选择覆盖许可证服务器上的许可证文件。单击导入许可证。 导入进程将此文件从其现有位置复制到 MyFiles 目录,许可证服务器可从中读取该文件。 9、成功导入信息后单击“确定”按钮。 10、至此,已成功将许可证文件上载到C:\Program Files (x86)\Citrix\Licensing\MyFiles\xendesktop_xenserver-1.lic。也可以直接将lic复制到此文件夹。导入成功后,由于要求重新启动守护程序方可生效,所以在系统服务中,找到Citrix Licensing,选择重新启动。重启Citrix Licensing服务之后,在控制面板中,可以看到lic和并发许可证的相关信息 11、重启Citrix Licensing服务之后,在控制面板中,可以看到lic和并发许可证的相关信息。 12、Citrix的四种版本授权,其中第四种是购买Xendesktop所配套的Xenserver 企业版,按照购买的授权选择相应的版本,并输入Citrix Licensing服务器地址和端口号。       当成功激活后,本章节虚拟化系列-Citrix XenServer 6.1 虚拟机的管理就介绍到这里。谢谢。 本文转自mabofeng 51CTO博客,原文链接: http://blog.51cto.com/mabofeng/1035330 ,如需转载请自行联系原作者
文章
存储  ·  网络协议  ·  数据中心  ·  虚拟化  ·  Windows
2017-11-08
虚拟化系列-Citrix XenServer 6.1 虚拟机的管理
    本章博客中主要讲解Citrix Xenserver的虚拟机管理,通过XenCenter连接到XenServer,以实现建立虚拟机、克隆虚拟机、创建虚拟机模版和导入导出虚拟机,这在日常运维中是经常用到的几个操作,可以让管理员更好地管理虚拟资源,给企业带来使用Citrix Xenserver虚拟化的好处。         在本章博客中主要介绍一下功能: 一、在XenServer6.1上建立虚拟机 二、对虚拟机进行快照 三、使用XenCenter克隆虚拟机 四、创建虚拟机模版 五、虚拟机动态内存配置         以上的这些功能都是Citrix Xenserver管理虚拟机的常用手段,是每个管理员必须掌握的,虽然只是几个方面的操作,但是对于初学者来说能很好的运用这些运维方法能减少日后的一些常见问题。由于这章节的博客都是以操作为主,所以叙述性的文字较少,读者可根据自身的环境进行试验。     一、 在XenServer6.1上建立虚拟机         在Xenserver上可以创建 Windows和Linux等虚拟机,Xenserver支持大部分的主流操作系统,可以使用 XenCenter 或 xen CLI 克隆相应的模板,然后安装操作系统。对于适用于各系统的模板,已经设置了用来定义虚拟硬件配置的预定义平台标志,所有 Windows VM 安装都支持 ACPI 硬件抽象层 (HAL) 模式。如果后来将其中一个 VM 更改为包含多个虚拟 CPU,Windows 会自动将 HAL 切换为多处理器模式。必须在每个 VM 上安装 XenServer Tools。Xenserver不支持运行不包含 XenServer Tools 的虚拟机。         在 VM 上安装 Windows 的过程可分为三步:下面就简单的介绍下如何创建安装虚拟机。 1、在 XenCenter 工具栏上,单击新建 VM 按钮打开“新建 VM”向导。 2、选择 VM 模板并单击下一步。每个模板包含创建具有特定操作系统和最佳存储的新 VM 所需的设置信息。此列表列出了XenServer 当前支持的模板。Xenserver支持大部分的主流操作系统。Citrix XenApp on Windows XXX表示此模板经过专门调整,可优化 XenApp 的性能。最新支持windows server 2012和windows 8。 3、为新 VM 输入名称及可选说明,然后单击下一步。 4、为将安装在新 VM 上的操作系统选择安装源,通过 CD/DVD 安装是最简单的入门方法。为此,选择默认安装源选项(DVD 驱动器),将光盘插入 XenServer 主机的 DVD 驱动器中,然后选择下一步以继续操作。XenServer 还允许从多种来源提取操作系统安装介质,包括预先存在的 ISO 库。ISO 映像是一个文件,其中包含光盘(CD、DVD 等)中的所有信息。在这种情况下,ISO 映像包含与Windows 安装 CD 相同的操作系统数据。要连接预先存在的 ISO 库,可单击新建 ISO 库,并指定 ISO 库的位置和类型,然后可以从下拉列表中选择特定的操作系统 ISO 介质。 5、为虚拟机选择主服务器或者群集,如果为虚拟机指定主服务器,则只要该服务器可用,虚拟机始终在该虚拟机上启动,如果不行,则会自动选择相同池中的备用服务器。 6、对于 Windows 2012 VM,默认设置为 1 个虚拟 CPU 和 2048 MB的 RAM。也可以选择修改默认设置。单击下一步继续操作 7、为新 VM 分配和配置存储。单击下一步,以选择默认分配 (24 GB) 和配置。 8、配置新 VM 的网络连接设置。单击下一步以选择默认网络接口卡 (NIC) 和配置。也可以单击“添加”按钮,以添加一个新虚拟 NIC。在创建虚拟机时候,最多创建4个NIC,可以在虚拟机创建完成后继续添加NIC。对于每个 VM,最多支持 7 个虚拟网络接口。 9、检查设置,然后单击完成,以创建新 VM 并返回到搜索选项卡。 10、在资源窗格中该主机下出现新 VM 的图标。在资源窗格中,可右击点击虚拟机,然后选择启动。 11、选择该 VM,然后单击控制台选项卡以显示 VM 控制台。按照操作系统安装屏幕上的说明操作并进行选择。 12、接下来就是为虚拟机安装XenTools,XenServer Tools 可提供高速 I/O 以实现更高的磁盘和网络性能。XenServer Tools 必须安装在每个 VM 上,以使 VM 具有完全受支持的配置。尽管没有这些工具 VM 也可以工作,但是性能将大打折扣。XenServer Tools 还支持某些功能和特性,包括彻底关闭、重新引导、挂起和实时迁移VM。在资源窗格中,选择虚拟机并右击,然后在弹出的快捷菜单中选择安装XenServer Tools。 13、XenServer Tools会以iso的形式插入VM的虚拟光驱中,单击安装XenServer Tools,会挂载XenServer Tools.ISO。之后会在 VM 控制台上打开 XenServer Tools 安装向导。 14、在安装向导中,点击下一步。 15、在接受许可协议页面中,接受许可协议,然后单击Next按钮继续操作。 16、选择目标文件夹,并单击Install按钮。 17、在 Windows VM 上安装 XenServer Tools,该 VM 必须运行 Microsoft .NET Framework 4.0 或更高版本。如果 VM 运行的是 Windows 2003,则需要在安装XenServer Tools 之前先安装 Windows 图像处理组件。由于是windows 2012,里面自带Microsoft .NET Framework 4.0,这里就不需要单独安装。点击安装。 18、最后安装完成后选择立即重新引导,然后单击完成以完成安装。 19、重启后会完成安装。 20、完成安装Citrix XenTools后,Citrix XenCenter就会检测到虚拟机情况。     二、 对虚拟机进行快照         XenServer 提供了一种简便的快照机制。无需麻烦的配置向导,借助该机制,可以在给定的时间生成 VM 存储和元数据的快照。生成快照时,可在需要时临时停止 IO 以确保捕获自身一致的磁盘映像。快照操作会生成类似于模板的快照 VM。VM 快照包含所有存储信息和 VM 配置,可以导出并还原这些信息和配置以进行备份。虽然所有存储类型都支持快照,但对基于 LVM的存储类型而言,如果存储库是使用以前版本的 XenServer 创建的,则必须对其进行升级,而且卷必须采用默认格式。         快照操作过程是将元数据捕获为模板,然后创建磁盘的 VDI 快照。 XenServer支持三种类型的 VM 快照:常规快照、静态快照以及包含内存数据的快照。 1、选择虚拟机,在属性选项卡里选择快照一览,可以对虚拟机进行快照。单击生成快照。 2、在快照模式下,选择要创建的快照的类型。要创建仅磁盘快照,应选择生成虚拟机磁盘快照; 要创建静态快照,应选择生成虚拟机磁盘快照,然后单击生成快照前使 VM 静止; 要创建磁盘和内存快照,应选择生成虚拟机磁盘和内存快照。虚拟机磁盘快照属于常规快照,可以在所有 VM 类型(包括 Linux VM)上执行。如果勾选生成快照前使VM静止(仅限Windows),则是利用 Windows 卷快照服务 (VSS),生成和应用程序一致的实时快照。VSS 框架帮助可识别VSS 的应用程序(例如 Microsoft Exchange 或 Microsoft SQL Server)在生成快照前将数据刷新到磁盘并为快照做好准备。XenServer 支持 Windows Server 2003 和 Windows Server 2008(32 位与 64 位的各种版本)上的静态快照。不支持 Windows 2000、Windows XP、Windows Vista和Windows 7。这里选择包含内存数据的快照,包含内存数据的快照是除保存虚拟机内存(存储)和元数据外,包含内存数据的快照还保存虚拟机状态 (RAM)。当您正在升级或修补软件,或想要测试新应用程序,但同时又希望能选择返回到虚拟机的当前、更改前状态(RAM) 时,这种快照类型会非常有用。还原到包含内存数据的快照无需重新引导 VM。最后单击确定开始创建新快照。进度将显示在状态栏和日志选项卡中。 3、生成好快照后,会在快照图表中列出来,这里会列出此虚拟机在 XenServer 的所有快照。 4、下面就来坐下生成虚拟机磁盘和内存的快照。 5、快照后你会发现和之前的磁盘快照的颜色不同,这就是区分磁盘快照和磁盘内存快照的标示。     三、 使用XenCenter克隆虚拟机         XenServer 包含两种克隆 VM 的机制,完整复制和写入时复制 (CoW)。写入时复制 (CoW) 模式速度更快,此模式仅将已修改的块写入磁盘,而且只有采用文件作为后端的VM 才支持此模式。CoW 旨在节省磁盘空间和进行快速克隆,但会略微降低正常磁盘性能。可以对一个模板进行多次快速克隆而不会影响性能。完整复制就是将虚拟机完整地复制一份。         Citrix Xenserver不像VMware vSphere一样支持虚拟机的克隆,Citrix Xenserver系统仅支持一种克隆 Windows VM 的方法,即使用 Windows 实用程序 sysprep 准备 VM。要进行克隆时,首先根据需要创建、安装和配置 Windows VM。并安装 XenServer Tools。准备好之后,先择关闭虚拟机电源。 1、要确保要克隆的虚拟机是关机的状态。然后右击选择复制VM。 2、输入虚拟机的名称和说明,选择完整复制或者是快速复制,并指定虚拟机所在的存储。单击“复制”按钮,开始克隆虚拟机。 3、目前正在克隆中,如果选择完整克隆,所需的时间较长些。点击虚拟机日志,可以看到正在复制虚拟机,可单击“取消”按钮中止复制。 4、等待一些时间,虚拟机的副本就被克隆出来了。     四、 创建虚拟机模版         克隆虚拟机是可以节省一定的时间,但是在一个虚拟机经常被克隆的情况下,我们可以考虑制作一个模版。将现有 Windows VM 创建 为VM 模板的方法有多种,每一种方法都有各自的优点。XenServer与VMware不同,Vmware只能将现有的VM转换成模版,而XenServer具有两种方法:一种是将现有 VM 转换为模板,另一种则是基于 VM 的快照创建模板。         XenServer不像是VMware那样可以使用自定义规则,通过规则来从模版中创建虚拟机,所以在Citrix XenServer中,如果在基于现有 VM 或 VM 快照创建模板之前,Citrix 建议您在原始 VM 上运行 Windows 实用程序Sysprep。通常,运行 Sysprep 可以使操作系统做好磁盘克隆和还原的准备。每个 Windows 操作系统安装都包含许多唯一的元素(包括安全标识符和计算机名称),这些元素必须保持唯一,不能复制到新 VM。如果复制这些元素,很可能会导致混淆和问题。运行 Sysprep 可以允许为新 VM 生成新的唯一元素,从而避免这些问题。 1、在资源窗格中的该 VM 上右击,然后在弹出的快捷菜单中选择“转换为模板” 2、也可基于虚拟机快照创建模版,在导出 VM 快照时,它会作为 VM 模板保存在本地计算机上的一个 XVA 文件中。该模板中包含此快照的完整副本(包括磁盘映像),随后可以将其导入,并用来在相同或不同的资源池中创建新的 VM。基于虚拟机快照创建模版时,需要在创建模版之前针对虚拟机进行快照。在资源窗格中,选择 VM。单击快照选项卡,然后单击生成快照。 3、单击转换进行确认。创建模板后,新的 VM 模板将显示在资源窗格中,替换现有的 VM。 4、虚拟机成功的转换成模版。原来的VM 不再存在。     五、 虚拟机动态内存配置         首次创建 VM 时,系统会为其分配固定数量的内存。要增大 XenServer 环境中物理内存的利用率,可以使用动态内存控制 (DMC),这是一项能够在 VM 之间动态重新分配内存的内存管理功能。动态内存控制 (DMC) 具有无需重新启动即可添加或删除内存,从而为用户提供更加优异的无缝体验的功能。服务器满载后,DMC 允许您在这些服务器上启动更多 VM,从而按比例减少分配给正在运行的 VM的内存量。XenCenter 中的内存选项卡将显示 VM 和服务器中内存的使用率和配置信息。Citrix XenServer 高级版或更高版本中提供动态内存控制功能。         什么是动态内存控制 (DMC)?XenServer DMC(有时称为动态内存优化、内存过载或内存膨胀)的工作原理是:自动调整正在运行的 VM 的内存,使分配给每个 VM 的内存量保持在指定的最小内存值与最大内存值之间,确保性能并允许每台服务器具有更大的 VM 密度。如果未使用 DMC,则当服务器满载时,启动更多 VM 将因“内存不足”的错误而失败。要减少现有 VM 内存分配并为更多 VM 释放空间,就必须编辑每个 VM 的内存分配,然后重新引导 VM。启用 DMC 之后,即使在服务器满载时,XenServer 仍能通过在 VM 定义的内存范围内自动减少正在运行的 VM 的当前内存分配来尝试回收内存。         对于每个 VM,可以设置一个动态内存范围,在此范围内,可以添加/删除 VM 的内存而无需重新启动 VM。可以在 VM 运行期间调整动态范围,而无需重新启动 VM。XenServer 始终保证为 VM 分配的内存量保持在动态范围内。如果主机服务器的内存充足,所有运行中的 VM 将获得最大动态内存级别;如果主机的内存不足,所有运行中的 VM 将获得最小动态内存级别。如果需要在“满载”的服务器上启动新 VM,则正在运行的 VM 会为新 VM 的启动“腾出”自己的内存。获得所需额外内存的方法是:在现有运行中 VM中,在设置的预定义动态范围内,按比例腾出内存。由于最小静态内存级别是在每个操作系统所支持的级别上设置的,因此 Citrix 建议您不要对其进行更改。         当设置 DMC 值时,XenCenter 强制实施限制,包括最小动态内存值不能低于最小静态内存值; 最小动态内存值不能高于最大动态内存值; 最大动态内存值不能高于最大静态内存值。 可以将 VM 的内存属性更改为满足这些限制条件(需经过验证检查)的任何值。除了这些限制外,对于特定操作系统,Citrix 仅支持某些 VM 内存配置。 1、在Xenserver的资源窗格中,可以看到虚拟机所占用的内存情况。 2、在资源窗格中选择任一 VM 或服务器,然后单击内存选项卡。 对于要配置 DMC 的一个或一组 VM,单击相应的编辑按钮 3、单击自动在此范围内分配内存选项,然后通过使用滑块或直接键入具体值,来设置所需的最大和最小动态内存范围值。 单击确定,以应用更改并关闭对话框。 4、如果更改了VM的最大内存,将会导致该VM重新启动。单击“是”按钮,重启虚拟机。 5、在虚拟机中,我们可以看到虚拟机的内存是我们分配动态内存的最大值。 6、我们在Xenserver上可以看到虚拟机所占用的内存情况。 本文转自mabofeng   51CTO博客,原文链接:http://blog.51cto.com/mabofeng/1040340 ,如需转载请自行联系原作者
文章
存储  ·  虚拟化  ·  Windows
2017-11-07
10.VMware vsphere 5.0新体验-总结
这几天紧紧张张的把vmware vsphere5.0的实验做完了,完成的有些仓促,毕竟时间比较短,手上没有空闲的服务器,正好vmware workstation8的测试版也拿到手里。只能用它来做实验,所以文档写的也比较粗糙。8月底将会推出正式版本的vmware vsphere5.0。目前各个代理商们已经开始推销和预定vmware vsphere5.0了。对于目前已经上了虚拟化项目的企业来说,全面升级或者全新投入虚拟化这一块是个不错的时机。但是本人有以下几个观点: 1.已经在业务上跑着vmware vsphere4.0或者4.1的企业,没必要升级服务到vmware vsphere5.0。因为vmware vsphere5.0的架构依然延续4.1的架构,升级意义不大。 2. vmware vsphere5.0价格不菲,公司在没有预算的情况下升级虚拟化服务器显然不划算。毕竟刚出来的东西是需要时间检验的。将来肯定会有5.1 5.2版本之类的。 3.一次软件的升级,意味着硬件的进一步提升,硬件的升级是虚拟化最大的一笔开销。目前各大厂商没有针对新版本的虚拟化服务提出新的解决方案。仍然是老的方案,没有创新。 4.对于准备投入虚拟化项目的公司来说,vmware vsphere5.0是个不错的选择,可以使你的传统架构慢慢平稳过度到新的架构。 5. vmware vsphere5.0它不是完美的,依然有优点和缺点,千万不要让vmware vsphere5.0替代你公司的其他虚拟化产品或者其他云计算。我坚信未来会是三分天下,根据各个产品的优缺点,打造自己的私有混合云。 以下是vmware的官方对比数据。 ESXi 和 ESX 体系结构比较 VMware ESX 体系结构。在原始 ESX 体系结构中,虚拟化内核(称为 vmkernel)使用称为控制台操作系统(简称 COS 或服务控制台)的管理分区来扩充。 控制台操作系统的主要用途是提供主机的管理界面。 在控制台操作系统中部署了各种 VMware 管理代理,以及其他基础架构服务代理(例如名称服务、时间服务和日志记录等)。 在此体系结构中,许多客户都会部署来自第三方的其他代理以提供特定功能,例如硬件监控和系统管理。 而且,个别管理用户还会登录控制台操作系统运行配置和诊断命令及脚本。 VMware ESXi 体系结构。在 ESXi 体系结构中,移除了控制台操作系统,所有 VMware 代理均直接在 vmkernel 上运行。 基础架构服务通过 vmkernel 附带的模块直接提供。 其他获得授权的第三方模块(例如硬件驱动程序和硬件监控组件)也可在 vmkernel 中运行。 只有获得 VMware 数字签名的模块才能在系统上运行,因此形成了严格锁定的体系结构。 通过阻止任意代码在 ESXi 主机上运行,极大地改进了系统的安全性。 体系结构比较 VMware ESX [约 2 GB] VMware ESXi [小于 150 MB] VMware 代理在控制台操作系统中运行 几乎所有其他管理功能都由在控制台操作系统中运行的代理提供 用户必须登录控制台操作系统,才能运行配置和诊断命令 VMware 代理经过移植,可以直接在 VMkernel 上运行 获得授权的第三方模块也可在 VMkernel 上运行。 这些模块提供了特定功能 硬件监控 硬件驱动程序 VMware 组件和第三方组件可以独立更新 通过“双映像”方法可在需要时恢复到之前的映像 在本机提供集成到企业数据中心所需的其他功能 不允许其他任意代码在系统中运行 了解 ESX 与 ESXi 之间的差异 VMware ESXi 是 VMware 最高级的虚拟化管理程序体系结构。 了解与上一代体系结构 VMware ESX 之间存在的差异: 功能 ESX 4.1 ESXi 4.1 ESXi 5.0 服务控制台 目前 已移除 已移除 管理/配置 CLI COS + vCLI PowerCLI + vCLI PowerCLI + vCLI(已增强) 高级故障排除 COS 技术支持模式 ESXi Shell 脚本化安装 支持 支持 支持 从 SAN 启动 支持 支持 支持 SNMP 支持 支持(有限) 支持 Active Directory 集成 集成 集成 硬件监控 COS 中的第三方代理 CIM 提供商 CIM 提供商 串行端口连接 支持 不支持 不支持 巨型帧 支持 支持 支持 通过自动部署实现主机的快速部署和集中管理 不支持 不支持 支持 自定义映像创建和管理 不支持 不支持 支持 安全 syslog 不支持 不支持 支持 管理界面防火墙 支持 不支持 支持 有关详细比较,请参阅知识库文章。 比较 ESXi 与其他供应商的产品 虚拟化管理程序属性 VMware ESXi 5.0 采用 Hyper-V 的 Windows Server 2008 R2 SP1 Citrix XenServer 5.6 FP1 磁盘占用空间小   144 MB 磁盘占用空间 (VMware ESXi)   3 GB 以上(含 Server Core 安装)  完整 Windows Server 安装需要约 30 GB   1 GB 独立于操作系统   不依赖通用操作系统 (VMware ESXi)   依赖父级分区中的 Windows 2008   依赖 Dom0 盘上的 Linux  管理分区 加强型驱动程序   已针对硬件供应商进行优化   通用 Windows 驱动程序   通用 Linux 驱动程序 高级内存管理   能够回收未使用的内存、消除重复内存页或压缩内存页   仅使用内存释放。 不能消除重复内存页或压缩内存页。   仅使用内存释放。 不能消除重复内存页或压缩内存页。 不能根据虚拟机使用情况调整内存分配。 高级存储管理  VMware vStorage VMFS、Storage vMotion、Storage DRS   缺乏集成的集群文件系统,无实时存储迁移   缺乏集成的集群文件系统,无实时存储迁移,存储功能支持的阵列非常少 高 I/O 可扩展性   直接驱动程序模型   父级操作系统中存在 I/O 瓶颈   Dom0 管理操作系统中存在 I/O 瓶颈 主机资源管理   网络流量调整,按虚拟机的资源份额,设定存储和网络 I/O 的服务质量优先级   缺少类似功能   缺少类似功能 性能增强   AMD RVI、Intel EPT 大内存页、通用 32 路 vSMP、VMI 半虚拟化、VMDirectPath I/O、半虚拟化客户机 SCSI 驱动程序   仅在 Windows 2008  和 Windows 7 虚拟机上  支持大内存页、4 路 vSMP   无大型内存页面,无半虚拟化客户 SCSI 设备,需要缺乏灵活性的 SR-IOV 虚拟安全技术  VMware VMsafe?  可实现虚拟化管理程序级安全自检   没有同类技术   没有同类技术 灵活的资源分配   热添加虚拟机虚拟 CPU 和内存、VMFS 卷增长、热扩展虚拟磁盘、热添加虚拟磁盘   仅支持热添加虚拟磁盘   没有同类技术 自定义映像创建和管理   借助 VMware Image Builder,管理员可以创建用于不同部署类型的自定义 ESXi 映像,例如基于 ISO 的安装、基于 PXE 的安装以及自动部署。   没有同类技术   没有同类技术 自动部署   vSphere 自动部署可以更快地调配多个主机。 新主机可以根据用户自定义的规则自动调配。   需要在 Systems Center Configuration Manager 中进行深入设置。   没有同类技术 管理界面防火墙   ESXi 防火墙是一种面向服务的无状态防火墙,用于保护 ESXi 5.0 管理界面。 使用 vSphere Client 或带 esxcli 接口的命令行进行配置。   没有同类技术   没有同类技术 增强的虚拟硬件   32 路虚拟 SMP、1TB 虚拟机 RAM、非硬件加速 3D 图形、支持 USB 3.0 设备、Unified Extensible Firmware Interface (UEFI)。   仅 4 路虚拟 SMP,每个虚拟机 64 GB RAM   仅 8 路虚拟 SMP,每个虚拟机 32 GB RAM 最后 感谢支持我的博友们,谢谢你们对我的支持。谢谢。 我叫mbf 本文转自mabofeng 51CTO博客,原文链接:http://blog.51cto.com/mabofeng/633589 ,如需转载请自行联系原作者
文章
存储  ·  监控  ·  网络安全  ·  虚拟化  ·  Windows
2017-11-09
kvm虚拟化
第1章 虚拟化的分类 1.1  全虚拟化与半虚拟化 全虚拟化  又叫硬件辅助虚拟化技术,最初所使用的虚拟化技术就是全虚拟化(Full Virtualization)技术,它在虚拟机(VM)和硬件之间加了一个软件层–Hypervisor,或者叫做虚拟机管理程序(VMM)。 hypervisor 可以划分为两大类。 首先是类型  1,这种 hypervisor 是直接运行在物理硬件之上的。其次是类型  2,这种 hypervisor 运行在另一个操作系统(运行在物理硬件之上)中。 类型 1hypervisor 的一个例子是基于内核的虚拟机(KVM —— 它本身是一个基于操作系统的hypervisor)。 类型 2 hypervisor 包括 QEMU 和 WINE。因为运行在虚拟机上的操作系统通过Hypervisor来最终分享硬件,所以虚拟机发出的指令需经过Hypervisor捕获并处理。 为此每个客户操作系统(Guest OS)所发出的指令都要被翻译成CPU能识别的指令格式,这里的客户操作系统即是运行的虚拟机,所以Hypervisor的工作负荷会很大,因此会占用一定的资源,所以在性能方面不如裸机。 但是运行速度要快于硬件模拟。全虚拟化最大的优点就是运行在虚拟机上的操作系统没有经过任何修改,唯一的限制就是操作系统必须能够支持底层的硬件,不过目前的操作系统一般都能支持底层硬件,所以这个限制就变得微不足道了。  半虚拟化  半虚拟化技术是后来才出现的技术,半虚拟化技术英文是paravirtualization,也叫做准虚拟化技术,现在比较热门,它就是在全虚拟化的基础上, 把客户操作系统进行了修改,增加了一个专门的API,这个API可以将客户操作系统发出的指令进行最优化,即不需要Hypervisor耗费一定的资源进行翻译操作,因此Hypervisor的工作负担变得非常的小,因此整体的性能也有很大的提高。 不过缺点就是,要修改包含该API的操作系统,但是对于某些不含该API的操作系统(主要是windows)来说,就不行能用这种方法,Xen就是一个典型的半虚拟化的技术。    1.2 服务器虚拟化,桌面虚拟化,应用虚拟化 服务器虚拟化  数量少的情况推荐使用ESXI,XenServer  数量大的情况推荐使用KVM,RHEV(并不开源),oVirt,Openstack,Vmvare vshpere   桌面虚拟化  桌面虚拟化依赖于服务器虚拟化,在数据中心的服务器上进行服务器虚拟化,生成大量的独立的桌面操作系统(虚拟机或者虚拟桌面),同时根据专有的虚拟桌面协议发送给终端设备。用户终端通过以太网登陆到虚拟主机上,只需要记住用户名和密码及网关信息,即可随时随地的通过网络访问自己的桌面系统,从而实现单机多用户。多用于IP外包,呼叫中心,银行办公、移动桌面。   应用虚拟化  技术原理是基于应用/服务器计算A/S架构,采用类似虚拟终端的技术,把应用程序的人机交互逻辑(应用程序界面、键盘及鼠标的操作、音频输入输出、读卡器、打印输出等)与计算逻辑隔离开来。在用户访问一个服务器虚拟化后的应用时,用户计算机只需要把人机交互逻辑传送到服务器端,服务器端为用户开设独立的会话空间,应用程序的计算逻辑在这个会话空间中运行,把变化后的人机交互逻辑传送给客户端,并且在客户端相应设备展示出来,从而使用户获得如同运行本地应用程序一样的访问感受。  3)硬件虚拟化和软件虚拟化  参考:  http://virtualization.ctocio.com.cn/38/11466538.shtm       第2章 虚拟化之KVM 2.1 kvm的虚拟化特性 1)嵌入到linxu正式kernel(提高了兼容性)  2)代码级资源调用(提高性能)  3)虚拟机就是一个进程(内存易于管理)  4)直接支持NUMA技术(提高扩展性)  5)虽然被Redhat收购了,但是依然保持着开源发展模式,社区活跃  6)更好的商业支持及服务保障  7)Centos7较Centos6默认支持cpu热添加,内存的热添加,大页内存默认都是开启的       2.2 支持虚拟化的条件 inter的cpu:vmx  AMD的cpu:svm  本文使用的是vmvare,需要开启如下两个条件即可,如果是物理机,需要在bios里面设置,默认都是开启状态        第3章   kvm   3.1  在cpuinfo中可以查看具体的支持虚拟化的信息 [root@CentOS6 ~]# grep -E '(vmx|svm)' /proc/cpuinfo--color flags          : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov patpse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc uparch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperfunfair_spinlock pni pclmulqdq vmx ssse3cx16 pcid sse4_1 sse4_2 x2apic popcnt xsave avx f16c hypervisor lahf_lm aratepb xsaveopt pln pts dts tpr_shadow vnmi ept vpid fsgsbase smep     3.2  安装kvm yum -y install qemu-kvm qemu-kvm-tools virt-managerlibvirt python-virtinst libvirt-python   kvm: linux内核的一个模块,模块不需要安装,只需要加载  qemu:虚拟化软件,可以虚拟不同的CPU,支持异构(x86的架构可以虚拟化出不是x86架构的)  qemu-kvm:用户态管理kvm,网卡,声卡,PCI设备等都是qemu来管理的       CentOS7安装kvm yum -y install qemu-kvm qemu-kvm-tools virt-managerlibvirt virt-install     3.3  kvm管理命令 systemctl enable libvirtd.service systemctl start libvirtd.service       [root@KVM ~]# rpm -qa|grep -E 'qemu|libvirt|virt' python-virtinst-0.600.0-29.el6.noarch   # 一套Python的虚拟机安装工具 gpxe-roms-qemu-0.9.7-6.14.el6.noarch    # 虚拟机iPXE的启动固件,支持虚拟机从网络启动 virt-manager-0.9.0-29.el6.x86_64        # 基于Libvirt的图像化虚拟机管理软件,需要图形界面操作系统 qemu-img-0.12.1.2-2.479.el6.x86_64      # 用于操作虚拟机硬盘镜像的创建、查看和格式转化 libvirt-python-0.10.2-54.el6.x86_64     # libvirt为Python提供的API qemu-kvm-0.12.1.2-2.479.el6.x86_64      # KVM在用户空间运行的程序 qemu-kvm-tools-0.12.1.2-2.479.el6.x86_64 libvirt-0.10.2-54.el6.x86_64            # 用于管理虚拟机,它提供了一套虚拟机操作API libvirt-client-0.10.2-54.el6.x86_64     # Libvirt的客户端,最重要的功能之一就是就在宿主机关机时可以通知虚拟机也关机,使虚拟机系统正常关机,而不是被强制关机,造成数据丢失 virt-top-1.0.4-3.15.el6.x86_64          # 类似于top命令,查看虚拟机的资源使用情况 virt-what-1.11-1.2.el6.x86_64           # 在虚拟机内部执行,查看虚拟机运行的虚拟化平台 virt-viewer-0.5.6-8.el6.x86_64          # 显示虚拟机的控制台console      3.4启动虚拟化 C6: 修改qemu.conf配置 vim /etc/libvirt/qemu.conf vnc_listen = "0.0.0.0"   /etc/init.d/libvirtd start     3.5 查看网络 [root@CentOS6 ~]# brctl show bridge name    bridge id               STP enabled     interfaces virbr0         8000.5254001285d4       yes             virbr0-nic   [root@centos72 ~]# brctl show bridge name    bridge id               STPenabled     interfaces virbr0         8000.525400d724b6       yes             virbr0-nic        3.6查看kvm模块 [root@CentOS6 ~]# lsmod|grep kvm kvm_intel              55624  0 kvm                   341551  1 kvm_intel       3.7  kvm网卡桥接配置 1安装tunctl yum install -y tunctl   2.禁用网络管理器(这步先不做,后面根据实际情况禁用) chkconfig NetworkManager off   #和桥接有冲突,要关闭 service NetworkManager stop        3.修改eth0(本实验以eth0为实例)物理网卡,br0为桥接网口配置文件 C6: cat ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=no #BOOTPROTO=none #IPADDR=10.0.0.27 #PREFIX=24 #GATEWAY=10.0.0.2 #DEFROUTE=yes #IPV4_FAILURE_FATAL=yes #IPV6INIT=no #NAME="System eth0" BRIDGE=br0   cp ifcfg-eth0 ifcfg-br0   cat ifcfg-br0 DEVICE=br0 TYPE=Bridge ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static NETMASK=255.255.255.0 IPADDR=10.0.0.27 GATEWAY=10.0.0.2         C7: cat /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet NAME=eth0 DEVICE=eth0 ONBOOT=yes BRIDGE=br0   cat /etc/sysconfig/network-scripts/ifcfg-br0 TYPE=Bridge NAME=br0 DEVICE=br0 ONBOOT=yes BOOTPROTO=static NETMASK=255.255.255.0 IPADDR=10.0.0.171 GATEWAY=10.0.0.2     [root@CentOS7 ~]# cat/etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet BOOTPROTO=none DEFROUTE=yes NAME=eth0 UUID=638d185d-ef0d-4fef-9668-893d397cddf2 DEVICE=eth0 ONBOOT=yes BRIDGE=br0 [root@CentOS7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0 TYPE=Bridge NAME=br0 DEVICE=br0 ONBOOT=yes BOOTPROTO=static NETMASK=255.255.255.0 IPADDR=10.0.0.202 GATEWAY=10.0.0.2     重启网络服务   查看网络 brctl show bridge name    bridge id               STPenabled     interfaces br0             8000.000c29ec932b       no              eth0 virbr0         8000.5254001285d4       yes             virbr0-nic     提示: 如果上面不能成功访问外网,请删除kvm自动生成两个桥接卡 virsh net-destroy default virsh net-undefine default /etc/init.d/libvirtd restart     3.7.1 修改kvm虚拟机网卡模式 virsh edit c73-moban      <interface type='bridge'>       <macaddress='52:54:00:f7:2e:80'/>      <source bridge='br0'/>      <model type='virtio'/>      <address type='pci' domain='0x0000' bus='0x00' slot='0x03'function='0x0'/>    </interface>   修改完成之后重启虚拟机   3.8创建虚拟机磁盘文件 创建一个虚拟磁盘,-f 指定格式 mkdir -p /application/kvm_data cd /application/kvm_data qemu-img create -f qcow2 /application/kvm_data/moban.qcow2 20G     3.9查看内核中kvm状态 [root@centos72 kvm_data]# qemu-img infomoban.qcow2                                            image: moban.qcow2 file format: qcow2 virtual size: 20G (21474836480 bytes) disk size: 196K cluster_size: 65536 Format specific information:     compat:1.1     lazyrefcounts: false     3.10 导入镜像 mkdir -p /application/tools cd /application/tools dd if=/dev/sr0 of=/application/tools/CentOS7_3.iso      3.11 创建虚拟机 C6: NAT virt-install --virt-type=kvm --name=kvm-demo -r1024 --cdrom /mnt/centos6.iso --network network=default --graphicsvnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel6 --diskpath=/mnt/kvm.raw   桥接 virt-install --virt-type=kvm --name=kvm1-demo -r1024 -cdrom /mnt/centos6.iso --network bridge=br0 --graphics vnc,listen=0.0.0.0--noautoconsole --os-type=linux --os-variant=rhel6 --disk path=/mnt/kvm1.raw   添加多块网卡 --network bridge=br0--network bridge=br1   C7: NAT virt-install --virt-type=kvm --name=c73-moban --vcpus=1 -r 1024 --cdrom /application/tools/CentOS7_3.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel7 --disk path=/application/kvm_data/moban.qcow2,size=20,format=qcow2   桥接 virt-install --virt-type=kvm --name=c73-moban --vcpus=1 -r 1024 --cdrom /application/tools/CentOS7_3.iso --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel7 --disk path=/application/kvm_data/moban.qcow2,size=20,format=qcow2      安装windows virt-install --virt-type=kvm --name=window_moban --vcpus=1 -r1024 --cdrom /application/tools/windowsxp.iso --network bridge=br0 --graphicsvnc,listen=0.0.0.0 --noautoconsole --os-type=windows --os-variant=win7 --diskpath=/application/kvm_data/windows.qcow2,size=20,format=qcow2   virsh list --all     3.12  工作环境中的参数命令: size是以G为单位的 第一种 virt-install --name=sa01 --ram 12288 --vcpus=8--disk path=/data/kvm-vhost/sa01.img,size=100 --accelerate --cdrom/data/iso/CentOS-6.5-x86_64-bin-DVD1.iso --graphics vnc,port=5901 --networkbridge=br0 --force --autostart 第二种 virt-install --name=win2008 --ram 8192 --vcpus=2--disk path=/kvm_vhost/win2008.img,size=100 --accelerate --cdrom/data/iso/windows_server_2008_r2x64.iso --graphics vnc,port=5901 --networkbridge=br0 --network bridge=br1 --network bridge=br2 --force --autostart 第三种 virt-install --name=mysql--1 --ram=512 --vcpus=1--disk path=/kvm/mysql--1.img,size=200,bus=virtio,cache=writeback--cdrom=/kvm/centos6.iso --vnc --vncport=5905 --noautoconsole --accelerate--autostart --network=bridge:br0,model=virtio --force--extra-args='console=tty0 console=ttyS0,115200n8 serial' 第四种 usr/libexec/qemu-kvm -name memcached--2 -S -Mrhel6.6.0 -enable-kvm -m 10240 -realtime mlock=off -smp8,sockets=8,cores=1,threads=1 -uuid 738d2778-bdaa-9cad-b1a4-fb24de9f7ee8-nodefconfig -nodefaults -chardevsocket,id=charmonitor,path=/var/lib/libvirt/qemu/memcached--2.monitor,server,nowait-monchardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown-device ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x4.0x7-device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x4-device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x4.0x1-device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x4.0x2-drive file=/kvm/mem--2.img,if=none,id=drive-virtio-disk0,format=raw,cache=writeback-devicevirtio-blk-pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1-drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw-device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev tap,fd=25,id=hostnet0,vhost=on,vhostfd=31-device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:1f:97:38,bus=pci.0,addr=0x3-chardevpty,id=charserial0-device isaserial,chardev=charserial0,id=serial0 -vnc 127.0.0.1:5 -vga cirrus -incoming fd:23 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 -msg timestamp=on   报错: 开始安装...... ERROR    内部错误 Process exited while readingconsole log output: char device redirected to /dev/pts/0 qemu-kvm: -drivefile=/root/windows_7_sp1_x64.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw:could not open disk image /root/windows_7_sp1_x64.iso: Permission denied 解决: 修改 qemu.conf 配置,把下面几个地方的注释去掉,然后把dynamic_ownership 的值改成0,禁止libvirtd 动态修改文件的归属: vim /etc/libvirt/qemu.conf ... user = "root" group = "root" dynamic_ownership = 0 ... 重启 libvirtd 服务再用上面的 virt-install 命令安装就应该可以了     3.13  移除虚拟机 [root@centos72 ~]# virsh list --all  Id    名称                         状态 ----------------------------------------------------  -     c73-clone                      关闭  -     c73-moban                      关闭   [root@centos72 ~]# virsh undefine c73-clone 域 c73-clone 已经被取消定义   [root@centos72 ~]# virsh list --all         Id    名称                         状态 ----------------------------------------------------  -     c73-moban                      关闭         快照存在,虚拟机不能移除 [root@centos72 ~]# virsh undefine c73-moban 错误:取消定义域 c73-moban 失败 错误:所需操作无效:无法删除使用 1 快照的不活跃域 [root@centos72 ~]# virsh snapshot-list c73-moban  名称               生成时间              状态 ------------------------------------------------------------  c73-moban_shot1      2017-03-13 16:05:07 +0800 shutoff   [root@centos72 ~]# virsh snapshot-delete c73-mobanc73-moban_shot1 已删除域快照 c73-moban_shot1   [root@centos72 ~]# virsh snapshot-list c73-moban                   名称               生成时间              状态 ------------------------------------------------------------   [root@centos72 ~]# virsh list --all  Id    名称                         状态 ----------------------------------------------------  -     c73-moban                      关闭   [root@centos72 ~]# virsh undefine c73-moban 域 c73-moban 已经被取消定义   [root@centos72 ~]# virsh list --all         Id    名称                         状态 ----------------------------------------------------     3.14vnc连接kvm虚拟机   [root@centos72 ~]# netstat -lntp |grep 59 tcp       0      0 0.0.0.0:5900            0.0.0.0:*               LISTEN      6689/qemu-kvm       tcp       0      0 0.0.0.0:5901            0.0.0.0:*               LISTEN      7028/qemu-kvm     默认端口  5900  wKioL1jMlHbg4YRAAACo1fWDHD0013.png-wh_50 wKiom1jMlJLS_7OSAAClOW-1gSU523.png-wh_50     3.15查看虚拟机 [root@oldboy mnt]# virsh list --all  Id    名称                         状态 ----------------------------------------------------  -     kvm-demo                       关闭     3.16 启动虚拟机 [root@oldboy mnt]# virsh start kvm-demo   域 kvm-demo 已开始   [root@oldboy mnt]# virsh list --all        Id    名称                         状态 ----------------------------------------------------  2     kvm-demo                       running     3.17正常关机 virsh shutdown kvm-demo      3.18强制关机 virsh destroy kvm-demo     第4章  克隆(添加)虚拟机 4.1 准备 克隆的虚拟机,首先要做的是: 清除网卡配置的UUID和MAC地址,否则克隆后网卡错乱 清空>/etc/udev/rules.d/70-persistent-net.rules,否则克隆后网卡错乱 最后关闭虚拟机,在虚拟机中使用halt命令关机。   4.2导出配置文件 virsh dumpxml kvm-demo >new.xml   4.3复制磁盘文件 cp /mnt/kvm.raw /mnt/new.raw   4.4修改配置文件 生成uuid [root@centos72 ~]# uuidgen 53308fa7-6e18-49af-b778-f67208b38105     vim new.xml   修改以下四行  <name>kvm-clone</name>  <uuid>1f1cf248-bd86-1e45-6ac9-0d4c05f15dd5</uuid>   <source file='/mnt/new.raw'/>   <mac address='52:54:00:2f:77:72'/>         4.5克隆(添加)虚拟机 [root@oldboy mnt]# virsh  define new.xml  定义域 kvm-clone(从 new.xml)           [root@oldboy mnt]# virsh list --all  Id    名称                         状态 ----------------------------------------------------  -     kvm-demo                       关闭       第5章  虚拟机快照    5.1转换磁盘格式    (关机状态转换) (此处很慢) qemu-img convert -c -f raw -O qcow2 new.rawnew.qcow2     5.2编辑 virsh edit kvm-clone 修改以下两行 23      <driver name='qemu' type='qcow2' cache='none'/> 24      <source file='/mnt/new.qcow2'/>       5.3创建快照 virsh snapshot-create-as kvm-clone kvm-clone_shot1       5.4查看快照 [root@oldboy mnt]# virsh snapshot-list kvm-clone        名称               Creation Time             状态 ------------------------------------------------------------  kvm-clone_shot1      2016-08-14 19:19:18 +0800 running       [root@oldboy mnt]# virsh snapshot-info kvm-clone kvm-clone_shot1          名称:       kvm-clone_shot1 Domain:         kvm-clone Current:        yes 状态:       running Location:       internal Parent:         - Children:       0 Descendants:    0 Metadata:       yes     5.5还原快照 virsh snapshot-revert kvm-clone kvm-clone_shot1         5.6删除快照 virsh snapshot-delete kvm-clone kvm-clone_shot1 本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1908212,如需转载请自行联系原作者
文章
Linux  ·  API  ·  KVM  ·  虚拟化  ·  图形学
2017-11-14
跳转至:
华章出版社
495 人关注 | 1015 讨论 | 10119 内容
+ 订阅
  • 带你读《Java并发编程的艺术》之一:并发编程的挑战
查看更多 >
开发与运维
5637 人关注 | 131544 讨论 | 303937 内容
+ 订阅
  • #{}与${}的区别
  • Python基础语法(四)之列表
  • JVM内存分析-清晰明了非常容易理解
查看更多 >
云计算
21788 人关注 | 59386 讨论 | 55993 内容
+ 订阅
  • 阿里云服务器操作系统选择方法
  • 3天玩转shell--8.awk编程技巧二
  • Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day04】——Java高级篇
查看更多 >
安全
1200 人关注 | 23967 讨论 | 81710 内容
+ 订阅
  • 基于Vue+Element UI+SSM+SpringCloud的员工管理系统
  • Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day06】——Java基础篇
  • Mybatis核心知识点整理,常见面试题总结必备!
查看更多 >
人工智能
2799 人关注 | 11411 讨论 | 97668 内容
+ 订阅
  • Python基础语法(四)之列表
  • C++STL【容器】详解 (全站最详细)
  • 算法集训 | 暑期刷题营】8.12题---数论
查看更多 >