虚拟化在去哪儿网的应用 -...

29
1 虚拟化在去哪儿网的应用2011年5月25日 吴永强 CTO, Qunar.com

Upload: others

Post on 31-Aug-2019

9 views

Category:

Documents


0 download

TRANSCRIPT

1

“虚拟化在去哪儿网的应用”

2011年5月25日

吴永强CTO, Qunar.com

一、“去哪儿网” 介绍

二、虚拟化在去哪儿网的应用

一、“去哪儿网” 介绍

“去哪儿网”简介

• 中国领先的旅游媒体

• 2005年5月上线

• 目前最大的旅游搜索引擎

• 机票、酒店、团购、度假、知道、博客、火车票、旅行、签证

• 移动互联网– Android– Iphone– Symbian

增长趋势

数字

• 45M月访问用户

• 每天120M用户动态请求,峰值3500+/sec• 每天消息系统承载60M消息,峰值2000/sec

• 每天25M次数据获取、网页解析

• 36G memcached data, 564M次访问,峰值14000/sec

• 70%的数据能够在3s内得到服务,90%的数据能在8s内提供服务

数字

• 过去三年– 技术团队从10个人增长到130个人

– 产品线从2个增长到10个– 各种系统从5个增长到近130个

二、虚拟化在去哪儿的应用

当时的状况

• 业务增长迅速带来的压力

– 成本压力大• Capex• Opex

– 部署速度慢,不能满足业务的需要

• 没有计划性– 流量

– 功能

• 所有人都着急

成本压力大

• 使用不均衡

– 忙的忙死,闲的闲死

– 忙的拼命加服务器,闲的撤不下来

– 高可用性,每个部件最少两个服务器

• 复用、重用

– 一个服务器部署多个应用,管理太复杂了

– 重用服务器,需要比较多的操作

• 开发和测试环境

– 开发人员增长,开发环境

– 质量要求越来越高,beta,staging

实施周期长

• 精打细算,机器是一台一台加

– 购买

– 上架

– 部署

– 还没实施完,应用死掉了

• 重用(re-use)– 确认结构,制定重用方案

– 重新安装,重新部署应用

– 有时候,刚刚重新安装完,又得加回去

应对方法

• 虚拟化

– 与物理服务器分离

– 开源软件,免费

– 部署、管理简单,可以开发自动化脚本

• OVM/Xen– 有基于web的管理界面

– 剪裁比较好,300M

实施过程

• 在开发、beta、staging环境开始使用虚

拟化

• 在production上使用虚拟化

• 自动化、多vlan支持

• 改进管理、监控手段

• 改进系统结构、部署方法适应虚拟化的要求

• 目前我们70%以上的服务运行在xen上

效果-成本

• 搜索量增加37倍• 系统模块数量增加7倍

• 物理服务器数量,以机票搜索为例– 增加70% 从52->88台– Instance 从52->190

• CPU使用率

– 15% -> 55%

• 资源使用更加有计划性

效果-实施效率

• 增加服务器

– 自动化程度更高

– 5-10天 -> 5分钟

• OPS去IDC次数

– 一周2次 -> 一个月1-2次

• OPS的工作变化

– 实施 -> 改进自动化、系统管理

变化

变化

• Example[[email protected] ~]$ ssh l-ovms8.ops.cn1 'sudo /usr/sbin/xm list'Name ID Mem VCPUs State Time(s)112_tw6_f_cn1 2 2200 4 r----- 3097120.3114_tw7_f_cn1 3 2200 4 -b---- 3099024.2116_mem1_f_cn1 1 1700 4 -b---- 267107.3118_sug1_f_cn1 10 1200 4 -b---- 58702.3430_twb2_f_cn1_ovms8 9 2200 4 r----- 2283516.6434_askdb1_ovms8 11 2200 4 -b---- 60466.4Domain-0 0 668 8 r----- 1661065.3

我们学到的

• 性能

– 虚拟机的性能是有损失的

– 同样配置的虚拟机性能大约为物理机70%左右

我们学到的

• 网络

– 规模扩大,单个网段无法满足需求

– 安全分区需求

– 一个物理主机上要支持在多个vlan的虚拟机

我们学到的

• 部署

– 直接拷贝映像太慢

– 使用PXE+kickstart• 2-3分钟搞定一个服务器

• 传统的拷贝需要30分钟以上

– 跨vlan的部署能带来极大的便利性

– 可用性,需要考虑放置服务器的方法• 单个component要分开

• 不同的需求的服务器整合在一起

我们学到的

• 一个服务器当掉影响很大– 一堆instance当掉了

– 影响被放大

• 物理服务器从大家眼中消失了,但是其实你还是要去管理

– 负载

• IO/CPU争用

• 还得有物理服务器

– 不是所有的应用都合适虚拟化

– 数据库

虚拟化!=云

• 互联网业务的特点

– 业务增长不可预期

– 产品演进不可控

– 迭代式开发,系统优化常常落后于系统的发展

• 结果

– 资源需要波动非常大

虚拟化!=云

• 没有解决总体资源的伸缩问题

虚拟化!=云

• 没有改变固定资产投入的方式

• 没有改变运维支出的方式

– 不是用多少付多少

• 没有从资源调度中解放出来

• 没有从物理建设解放出来

• 重复的共享服务的投资

虚拟化!=云

• 虚拟化只是第一步

• 云的挑战

– 系统结构的变化

– 开发理念的变化

– 运维理念的变化

– 安全管理的挑战

云计算的机会

• 资源伸缩性问题– IDC空间

– 硬件

• 硬件和IDC定制,获得更低的成本

– 我们这个规模的企业不可能做大的投入

• 共享基础服务

• 公有云的机会?

怎么迁移??

Q&A

We are [email protected]

邮箱: [email protected]

电话: 13701172202

msn: [email protected]