程序员人生 网站导航

OpenStack企业应用之路技术培训:虚机迁移、HA、VDI、跨Hypervisor管理

栏目:互联网时间:2014-10-14 04:59:13

【CSDN现场报道】第六届中国云计算大会于2014年5月20-23日在北京国家会议中心拉开帷幕。本次大会立足实践,以国际化的视野,帮助与会者了解全球云计算技术的发展趋势;从应用出发,探讨交通、医疗、教育、金融、制造、数字娱乐等行业领域的实践经验;并通过技术专场、产品发布和培训课程等方式,深度剖析云计算大数据的核心技术。

大会首次加入了培训环节,融入了“实战”的要素。作为专用云构建技术的领跑者,活跃的开源社区以及IT制造商的鼎力支持使OpenStack逐渐走向了成熟和商用。随着云计算与大数据的深入实践,OpenStack技术领域已经产生巨大的人才缺口,一场OpenStack高端实战技术培训恰逢其时。5月20日,一线技术专家对OpenStack进行了涵盖技术应用、问题解析、实战经验等方面的高端培训。

由于网络报名的人数在60人左右,所以我们准备的会场太小了,很多学员都是站着听课的,在这里向各位学员道歉。当天的培训共有五位讲师进行了分享,都是实践过程中的干货总结。上午, TryStack团队核心成员章津楠分享了“虚拟机迁移及HA方案”和“OpenStack网络模式性能分析” ,携程云平台研发总监吴毅挺分享了“基于OpenStack的VDI方案及案例分析 ”和“跨Hypervisor管理最佳实践”。


TryStack团队核心成员 章津楠

章津楠:虚拟机迁移及HA方案

首先为什么要做迁移?比如,计算机的硬盘发生故障,需要停机维护,要把虚拟机全部迁移到一台健康的机器上,这时需要把物理机关掉,然后将磁盘更换。

在迁移之前需要考虑四个问题:

  1. 如果要做虚拟机的热迁移,必须要有一个共享存储;
  2. 要迁移的两个VM必须在同一个subnet,因为跨subnet的虚拟机之间不是互通的;
  3. 要考虑兼容性,比如从AMD的CPU迁到Intel的CPU是不行的,建议CPU尽量是一样的;
  4. 网络建议是1G以上。

关于共享存储的问题,KVM和Xen没有自带的集群文件系统,需要借助一些开源的解决方案,有以下这么几种:

  • 最简单的是用一台NFS Server直接挂出来
  • GlusterF
  • CEPH
  • GFS2/OCFS2,传统的企业中,有很多FC的存储。挂出来就是个裸设备,需要集群文件系统去解决文件的共享问题。

OpenStack上的迁移有三种:

  • Live Migration,和VMware的热迁移是一样的
  • Block Migration,不需要share storage,对网络要求比较高,local I/O也比较麻烦。
  • Migration,是指将一台宕机的虚拟机迁移到另一台物理机上。

HA(High Available,高可用性群集)是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,且分为活动节点及备用节点。通常把正在执行业务的称为活动节点,而作为活动节点的一个备份的则称为备用节点。当活动节点出现问题,导致正在运行的业务(任务)不能正常运行时,备用节点此时就会侦测到,并立即接续活动节点来执行业务。从而实现业务的不中断或短暂中断。章津楠列举了通过独裁和投票两种方式实现HA的具体操作。

章津楠:OpenStack网络模式性能分析

Neutron能不能在实际生产用?原来的生产环境中网络如何扩展? 虚拟环境中Neutron的性能如何?企业级的环境网络该如何做?基于这几个问题,章津楠对VLAN、GRE和VLAN+ph_gw三种网络进行了测试。测试中用到的主要工具有:

  • tcmpdump
  • traceroute
  • ip netns
  • ethtool
  • ovs-vsctl

接下来,章津楠分享了测试的网络拓扑结和几个测试场景,比如三种网络对OpenStack的性能损耗问题,一个compute节点上两个VM之间的通讯情况,虚拟机访问外网的性能,多个虚拟机同时访问外网等。


  • 增加缩进" class="redactor_btn_indent" tabindex="-1" style="color: rgb(0, 102, 204);">

网络拓扑结构

通过这些测试可以得出几个结论:一是在同一宿主机之间数据交换速度挺快的;两个不同网段间的数据交换,如果经过L3的话,GRE的性能肯定比VlAN低,如果过switch的话,它的性能稍微好一点;在企业级私有云中VLAN足够了,但要注意switch能够支持的VLAN数量;Neutron的L3高可用目前还没有好的解决方案,最好用VLAN+switch gateway的方式。


携程云平台研发总监 吴毅挺

吴毅挺:基于OpenStack的VDI方案及案例分析

携程云平台研发总监吴毅挺在课程“基于OpenStack的VDI方案及案例分析”中,主要分享了以下几个话题:什么是VDI?远程桌面协议?瘦客户机的终端如何选择、优化?

吴毅挺首先总结了VDI的几个优势:

  • 降低运维成本,特别是耗电可以减少60-70%;
  • 可以远程办公
  • 快速扩容
  • 数据安全

接下来,吴毅挺主要介绍了Spice协议,分别介绍了Spice架构中几个主要部分。


Spice协议架构

携程呼叫中心目前的VDI部署已经达到了1000多台,并在不断增加,并且是7×24小时不间断,每天能接通20k-30k个呼叫。吴毅挺还分享了携程应对VDI启动风暴的方案。

Commodity MLC SSD
4 * 200G Raid10
2* 8Core 160G mem
  • Linked-clone in 1s
  • Delta < 5G
  • Boot 50 win7 in 30s

吴毅挺:跨Hypervisor管理最佳实践

最初携程的虚拟化是基于VMware的,后来部署OpenStack后才开始使用KVM。吴毅挺在第二部分的课程中主要介绍了OpenStack跨Hypervisor的管理,主要涉及 VMware、KVM和 Bare Metal。


OpenStack对Hypervisor支持概览


下午的培训中,Intel信息技术工程计算部研发经理束文辉和Intel信息技术工程部软件工程师黄舒泉共同分享了“OpenStack功能性测试(Tempest)以及持续交付最佳实践”和“英特尔亚太研发中心OpenStack私有云案例分享”两个话题;TryStack架构师梁博分享了“OpenStack网络核心介绍”和“ OpenStack AD/LDAP域控集成”。


Intel信息技术工程计算部研发经理 束文辉

束文辉:OpenStack功能性测试(Tempest)

OpenStack集成测试集(Tempest)是指对于一个完整部署的OpenStack环境所需要的功能测试与集成测试, 包含了一个使用testr来并行运行测试以及跟踪结果的功能测试框架,测试用例通过对OpenStack服务Endpoint执行一系列API的调用,并通过Endpoint验证调用返回的结果。束文辉首先介绍了Tempest的使用方法。通过源代码可以看出Tempest的主要功能:

  • etc:测试配置文件的存放目录
  • common:为测试与验证提供额外功能可重用类的存放目录
  • tests:测试用例存放目录
  • API:验证测试OpenStack API测试用例,并非调用已有的Python Client
  • CLI:通过调用CLI完成的测试用例,测试对命令行的执行结果
  • Scenario:对OpenStack 更加复杂的功能场景测试,包含更多的测试动作与路径
  • Stress:通过对OpenStack环境进行大量负载的压力测试,来验证是否稳定
  • Third party:测试许多OpenStack的组件,包括第三方API的支持。Tempest 支持对第三方 API的测试。

Tempest项目中目前还存在着一些问题,比如由于未知错误的发生,前一个测试的teardown函数不能运行,造成遗留的脏数据无法删除;某些测试脚本依赖于测试环境的内容;当批处理执行测试用例时,无法通过一个完整可自定义内容与优先级的测试计划。而且同时执行跨文件目录的测试用例十分困难;测试结果和错误信息是分开的,无法直接导入Excel,作为可视化测试结果呈现,进行分析。 束文辉分享了Intel对以上问题的解决方案。


Intel信息技术工程部软件工程师 黄舒泉

黄舒泉:持续交付最佳实践

服务器中的部署配置信息容易丢失或遗忘,开发者往往需要经过很长时间才能在生产环境中看到他们在OpenStack中做出的定制化改变, 不容易跟踪与快速尝试社区中的最新更新与补丁,每次代码以及配置的变化都需要快速触发自动化的回归测试。持续交付最重要的目的是开发者作出的改变能够得到快速得到用户的反馈。持续交付就是一个不断循环反馈的过程,使得每次项目代码中的变化和配置的变化快速反应到CI环境和产品环境中,结果就是tempest测试报告。


英特尔持续交付解决方案

在技术实现上,主要包括:配置即代码

  • 基于源代码部署,精确控制每个环境的版本
  • 所有配置都由puppet代码实现,保证对配置进行版本管理

基于Tempest的自动化回归测试

  • 所有变化都必须在CI环境中跑过Tempest测试才能进入到产品环境
  • 保证CI环境与产品环境拥有类似的配置

束文辉,黄舒泉:英特尔亚太研发中心OpenStack私有云案例分享

英特尔IT EC(工程计算部)专注于英特尔私有云解决方案的实施和部署,英特尔内部用OpenStack搭建的私有云,主要服务于内部的芯片设计和验证工程师们。英特尔从OpenStack的Essex版本就开始成为OpenStack 社区活跃的贡献者,在跨多个OpenStack项目的性能调优、验证与补丁和开源工具的发行上都有贡献。

英特尔选择OpenStack基于以下几个原因:

业务驱动

  • 节省开销
  • 高效的运维
  • 构建开放平台
  • 灵活选择底层的技术
  • 能让我们在最大程度上进行创新,增强我们产品的竞争力

Intel的战略以及业界的方向

  • Intel是OpenStack社区最活跃的贡献者之一
  • OpenStack被视为继Linux以来,最成功的开源项目
  • 业界有不少成功的案例

接下来,黄舒泉介绍了英特尔私有云架构的主要部分:OpenStack集群,Ceph存储集群, Mysql集群,RabbitMQ集群。其中,在HA和负载均衡方面, 采用haproxy与keepalived实现控制节点Active&Active的高可用、负载均衡。OpenStack的存储后台完全采用Ceph RBD,虚拟机的磁盘文件不放在计算节点的本地存储。


TryStack架构师 梁博



梁博:OpenStack网络核心介绍

梁博在课程中主要介绍了Neutron的抽象概念、网络模式和架构。Neutron 是OpenStack 核心项目之一,提供云计算环境下的虚拟网络功能,由之前的 Quantum 改名而来。Neutron提供了相互独立的L2网络, 类似物理网络VLAN的概念。

Neutron 网络的API:

  • Network:相互独立的L2网络, 类似物理网络VLAN的概念
  • Subnet:一个网络里面的IP V4或者IP V6的ip地址段
  • Port:用于连接设备的连接点
  • 虚拟路由 & NAT
  • Local & External 网络

Neutron 支持5种不同的网络类型,梁博分别介绍了这5中网络类型主要的应用场景。

  • Single Flat Network
  • Multiple Flat Network
  • Mixed Flat & Private Networks
  • Provider Router with Private Networks
  • Per-tenant Router with Private Networks

更多精彩内容,敬请关注 第六届中国云计算大会专题报道,关注新浪微博直播  @CSDN云计算。


免费订阅“CSDN云计算”微信公众号,实时掌握第一手云中消息!

CSDN作为国内最专业的云计算服务平台,提供云计算、大数据、虚拟化、数据中心、OpenStack、CloudStack、Hadoop、Spark、机器学习、智能算法等相关云计算观点,云计算技术,云计算平台,云计算实践,云计算产业资讯等服务。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐