分类: 虚拟化
2014-05-10 00:53:52
一:项目情况介绍
以前购置的刀片机最近频出问题。于是准备整合迁移刀片机上的业务,由于预算费用吃紧,再加上旧机器上跑的并非核心业务。所以考虑迁移到虚拟化平台上,在虚拟化平台选项上,结合自身的服务器特点,选择了Xenserver6 free XenServer tria版本进行线上部署,部署完成后能使的我们的VM机能够无故障的在各节点之间进行切换和迁移。整体方案图如下所示:(详情就不解释了)
总共购置了3台机器。后端存储用了一台低配的server调整了一下DIY了一套存储系统。
机器硬件平配置如下:外加一台KVM设备。Admin(XenCenter管理端的机器是我平时办公用的机器)
PS: 64GB内存 2.7T硬盘空间
软件版本:Xenserver6.0 free XenServer tria版本。请移步下面的地址下载
二.部署Xenserver6.0
安装详细的步骤就不在写了。Google出来一大把的。。很详细的,这里就忽略了。安装OK后如下图所示.
实在搞不定的请移步 谢谢!在搞不定的,不要玩了。
三.Xenserver的配置前的简要说明。
由于我们要求部署完成后能使的我们的VM机能够无故障的在各节点之间进行动态切换和迁移。说道这里用过Vsphere的SA都懂的Vmotion。这个功能其实xenserver里面也有只不过叫做XenMotion而已。
XenMotion能够将正在运行的虚拟机从一台XenServer主机上迁移到另外一台,而不带有任何停机的危险。这就意味着在整个迁移过程中,被移动的虚拟机在任意时刻都处于正常的工作状态。XenMotion的主要目的是在某台服务器需要进行计划维修的情况下,终端用户无法觉察到应用程序出现过极短暂的中断,令整个服务过程正常顺畅。说到这里不得不提说一下资源池Pool。(要组成一个Pool必须要有2台或者2台以上的机器构成.)
XenMotion与Pools(资源池)协同工作。Pools的功能是收集在一组资源中相互连接的多个相似XenServer Enterprise服务器。这种统一的管理单元(Pools)能够使与之相连接的虚拟机共享远程存储和网络资源。对于同一个Pool来说,它允许其中的虚拟机进行实时迁移。当Resource Pools与共享存储器共同工作时,只要XenServer主机的容量足够大,那么就虚拟机就可以在这些主机中任意启动。这就为XenMotion创造了一定的条件。如果有某一台正在运行的服务器超负荷或者发生了故障,那么管理员就可以立刻在Pool中选择另一台服务器进行虚拟机的迁移。虽然没有进行明确的规定,但是每一个Pool一般最多可以支持16台XenServer主机。
值得注意的是,XenMotion并不仅仅在服务器出现故障,无法正常工作的情况下才进行迁移。当服务器超负荷的时候,XenMotion就会将 一部分的操作系统,包括上面正在运行的应用程序原封不动地迁移到候补服务器上。因此,XenMotion能够合理地分配Pool中XenServer的工作量,大大提高了资源利用率和工作效率。
XenMotion和VMotion都是致力于在服务器无法正常工作时,将其上正在运行的虚拟机迁移到其他候补服务器上,实现零停机。尽管如此,两者在操作,配置上还是有些许的不同的:
1. XenMotion只需要支持软件iSCSI或者NFS;VMotion则可以选择光纤(Fibre),软件或者硬件的iSCSI以及NFS。
2. 当虚拟机与内部网络相连接时,XenMotion是不可用的;对于VMotion来说,只要相互迁移的两台主机连接的是相同的网络即可,无论该网络是内部的还是外部的。
3. XenMotion需要手动操作;VMotion可以手动,也可以通过分布式资源调度程序(DRS)自动进行。
需要注意的是XenMotion对机器配置是有一定的要求的。
1. XenServer中的处理器必须具有相同的类型。
尽管XenMotion允许每个系统的内存,存储控制器和网络控制器可以不相同,但是其处理器却必须具有相同的类型。除了类型有硬性的规定之外, 它还允许其存在一些细微的差异(比如CPU的运转速度)。举个例子,对同一个Resource Pool中的服务器来说,必须使用同一系列处理器。
2. Resource Pools中至少要有两台XenServer Enterprise服务器处于运转状态。
3. 虚拟机的存储器类型
虚拟机必须存储在远程共享的存储器中。比如与基于网络文件系统NFS(Network File System)或者iSCSI(通过iSCSI启动软件)的存储器相连接。
此外,假如Pools中有某台XenServer主机被移除,那么原本在上面运行的虚拟机并没有随之被删除,而是依然存在于数据库中,不会导致数据丢失,并且对于其 他的XenServer主机成员是可见的。但是这些虚拟机是处于停用状态,只有它们的虚拟磁盘被连接到共享服务器时,才可以被Resource Pools中的其他XenServer共享。因此,为了提高资源的利用率,最好在共享存储器创建完成的时候,就把本地磁盘添加到共享存储器中。
4. 网络的带宽要求:推荐使用千兆位的以太网。其他的要求大家自己在使用的时候挖掘吧。
四. Xenserver的配置
1.管理端admin安装好XenCenter软件。
2.创建资源池。添加机器
加完第一台机器默认会成为Master,接着添加其他的。
3台机器全部添加完毕后点击Create pool创建资源池。如下图所示:
三台机器全部添加完毕。接下来添加ISO library文件库。其实上图已经显示了添加完成后的效果。ISO library又中可选择效果。一种是用nfs共享存放ISO的文件夹。另一种是用windows共享。添加方法基本相同。
选中wp_Center_SZ右键,选择New SR。按照提示进行即可。
接下来按照提示添加即可。添加存储的方法和添加ISO library一样。
nfs.就选择NFS。 ISCSI就选择ISCSI其他类型的选择其他的即可。
完成后的效果如下所示:
接下来部署虚拟机:(由于NodeA是master主机,我选择在NodeB主机上创建虚拟机,这个问题后面解释)
选择Other install media.其他的按照提示进行。
选择部署节点。这里选择了NodeB(当然也阔以部署到本地存储上面的)
添加磁盘。(我们这里添加网络磁盘,前面已经说过了。实现虚拟机动态迁移)
添加完成后的效果。
VM安装系统步骤就忽略了。自行搞定即可。系统安装完成后装上xentools制作快速部署模板:首先对安装好的机器进行配置修改,根据你自己的线上需求配置。配置修改完成后create Snapshot然后保存为模板即可。
为保存的模板设置一个名称:
利用Create好的模板快速部署:(1分钟之内搞定线上机器)
可以在logs部分查看虚拟的创建进度,以及虚拟机的的相关信息。
下面是用模板创建的虚拟机。
需要注意的是,可以使用模板文件快速部署。也可以使用模板文件进行安装。(一劳永逸我喜欢)
下面的部署和部署创建新的虚拟机的方法一样,下图所示部署完成的虚拟机。
接下来一个重要的动作。虚拟机的迁移。需要注意的是当所有的虚拟机关闭后无论你在哪个节点创建的虚拟机,他都会回归到Master机器。Performance阔以检测虚拟的性能和资源使用情况。
下来看虚拟机的迁移:(迁移节点A上面的Centos5.6-x86-64/ Centos5.6-x86-64-Clear_system (1)
Centos5.6-x86-64 迁移到节点B机器
Centos5.6-x86-64-Clear_system (1)迁移到节点C机器
可以看到已经顺利的迁到了节点B机器上。网络中断了有3秒。
迁移OK后的效果。
关于维护需注意的事项:Master主机上机器全部迁移到其他机器。对Master主机进行停机维护前就进行角色转移。这个是必要的。
迁移到其他节点以后 进入Enter Maintenance Mode 可以重新在资源池内的节点上选举一个新的Master主机。当所有动作都完成后。就可以方向的对NodeA主机停机维护了。关机。添加硬件等等。。完成后开机即可自动从新加入。Master主机这个时候不会自动恢复到NodeA主机的。如果需要的话,可以手动将其迁移回来。
假设现在把NodeC停机。我们在来做上述的动作。会看到什么效果!
一个资源池里面必须有2个主机。或者2个以上的存活主机。这时候能看出来Master主机的重要性了吧。前面已经说过了。这里不再重复。
需要注意的是当你切换了Master主机之后,用xenCenter管理连接的时候请连接新的Master主机的IP地址。当然连接原来的也是可行的。会帮你跳转到新的Master主机的地址。
免费版能用到的特性基本就这么多了。非共享存储使用XenMotion迁移就不演示了。
再下来就是P2V功能,可以很方便的将物理机转换为虚拟机,从而将整个环境迁移到虚拟环境,达到节省资源,减少重复投入的浪费。优点:勿需关机,设备驱动器会自动被修改,方便的从光盘引导。
建议:1、在非高峰时间进行转换
2、转换老式机器,选择“P2V-Legacy”
转换工具:XenConvert。
转换步骤:
1、 从XenServer光盘引导转换,如果引导失败,选择“P2V-Leagacy”进行转换。
2、 显示初始信息后,选择TAB键或ALT+TAB键进行转换。
3、 选择“Convert an existing OS on this machine to a VM ”
4、 转换完成后,需要添加网卡以便连接外部网络,如果有需要,可以添加虚拟磁盘。
这个就不演示了。Google搞定。记得自己做笔记哦。
转换前:做一个评估和测试,看是否所有功能都能在虚拟环境下实现。
哦。忘记了XenServer license的相关问题了。
许可 XenServer 所采取的步骤因版本而异。Citrix XenServer 可免费用于生产,无约束或时间限制。只需激活该产品即可,这样会记录要使用该产品的意图。激活是一个简单的过程,仅需几分钟时间。必须在第一次安装 XenServer 的 30 天内激活产品,然后每年激活一次。
Citrix 高级版、企业版和铂金版 XenServer 要求使用的每台 XenServer 主机都有一个许可证。许可证不再存储在主机服务器上,而是必须在单独的一台许可证服务器上添加和管理许可证文件。现在,XenServer 使用的许可方式与其他 Citrix 产品相同,这意味着您可以跨产品共享许可证服务器。
在许可 XenServer 主机之前,会以 XenServer(免费版)的形式运行 30 天。此后,无法启动任何新的、已挂起或已关机的 VM,直至通过将主机激活或为其配置 Citrix 许可(即,安装 Citrix 许可证服务器并下载许可证文件)来许可该主机。
之前加入了3台服务器,我将这3台服务器做一个“池子”来进行统一的管理。
在菜单栏,选择tools,点击license Management,查看下Xenserver的授权情况。
剩余29天,因为没有lic,Xenserver只有免费版本的功能,不具有Xenmotion HA等功能。
激活免费版 Citrix XenServer 产品的过程非常简单,包括两个步骤:
1. 从 Citrix 申请激活密钥。之后会通过电子邮件向您发送一个包含激活密钥的文件。您可以通过 XenCenter或直接转至 My Citrix.com 申请激活密钥。
2. 在主机服务器上安装激活密钥。激活密钥文件的文件扩展名为 .xslic。在 XenCenter 管理客户端的 Windows 资源管理器中双击该文件。该操作会启动 XenCenter 许可证管理器。
带来的收益杀的。。其他的屁话就不写了。。