SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
T4:淘宝私有云
林昊
2012-10
● 起源
● 实现方案
● 碰到的问题
● 使用状况
● 美好的将来
Agenda
● 2010年引入虚拟化,1台物理机装3个虚拟
机,一定程度降低了成本;
● 机器规模增长非常快,其中1/3的虚拟机的
peak load < 0.5;
● 做一个产品来提升机器的资源利用率。
起源
● 为什么叫T4
○ Taobao的架构体系发展
■ 1.0: php
■ 2.0: 集中式Java
■ 3.0: 大规模分布式Java
○ 这个产品将再次改变淘宝的运行体系,因此命名
为:Taobao 4.0,缩写:T4。
起源
● T4的目标
○ 在保障系统稳定性的情况下降低运维成本;
○ 实现平滑迁移。
实现方案
● 运维成本不够低的主要原因
○ 单台物理机上跑的应用不够多;
○ 分给应用的机型以及机器数是静态的;
○ 集群的资源利用率不均衡。
实现方案
● 单台物理机上跑更多的应用;
○ 超配;
■ 支持资源可共享;
■ 支持共享的资源的动态调整。
○ 部署的应用的合理搭配;
■ 资源消耗多的和少的搭配;
■ 消耗的资源不同的互补。
实现方案
● 分配应用的机型以及机器数需要是动态的
○ 根据应用的资源利用率动态调整;
■ 机型需要支持动态调整;
■ 机器数要动态的要求是应用新上线机器和下线
机器的动作需要全自动化。
● 集群的资源利用率做到均衡
○ 根据集群各机器的资源利用率状况动态迁移应用;
实现方案
● 总结
○ 动态
■ 单机资源的搭配以及数量可动态调整;
● 需要一个可很好支持此需求的虚拟化方案;
■ 动态迁移应用保障单机应用搭配的合理性以及
集群资源利用率的均衡。
● 强大的监控;
● 资源管理系统;
● 应用上下线的全自动化。
○ 弹性
■ 根据应用的资源消耗状况动态调整机型以及机
器数。
● 强大的监控;
● 资源管理系统;
● 依赖动态特性。
实现方案
● 虚拟化方案
○ 需要支持动态搭配以及数量的调整;
○ 内部应用的特征
■ Share Nothing,集群化;
■ 统一的OS;
■ 安全级别要求不是很高。
○ 选择了LXC(Linux Container)
■ namespace
■ cgroup
■ 创建出的每个container我们称为instance;
实现方案
● 虚拟化方案
○ 自行实现了单机cpu搭配的动态调整;
○ 进行了一定的封装,实现了通过界面来调整
instance的机型。
实现方案
● 强大的监控
○ 现成的;
○ 需要做的是无缝集成;
● 应用上下线的全自动化
○ 内部已有多套负责各种功能的运维系统;
○ 需要做的是无缝集成。
实现方案
● 资源管理系统
○ 负责资源的分配;
■ 演变:资源池-->按需分配
○ 结合监控调度应用的资源
■ 真正的云阶段
■ 待实现,因此有点标题党...
实现方案
● 整体结构图
实现方案
Artoo2 RT VipViewer WF OPSDB ...运维系统
资源注册T4Console
(Java)
资源分配 资源监控 应用上下线 ...
instance
控制脚本
T4物理机
(t4kernel+lxc)
instance
应用环境
控制脚本
CPU调度
程序 ...
实现上下线的自动化
保持运维方式的不变
ssh通知需要执行的task http获取需要执行的task
● 在instance里top看到的是物理机的资源状况;
○ 修改内核;
● max user processes限制会互相影响;
○ 修改uid;
○ LXC不支持user namespace是一件很痛苦的事。
● 磁盘空间限制方式用img方式限制带来的问题;
○ 改为用quota;
● cgroup oom killer的死锁问题;
○ vm.oom_kill_allocating_task=1
碰到的问题
● 执行service network restart导致网络挂掉的问题;
○ https://access.redhat.
com/knowledge/solutions/65421
● instance里执行reboot的问题;
○ 暂时限制了;
● 挂载nfs时某些情况下导致load暴涨的问题;
○ http://www.spinics.net/lists/linux-nfs/msg17811.
html
○ http://www.spinics.net/lists/linux-nfs/msg27912.
html
● 机型的选择颇为痛苦;
○ 根源为目前不支持弹性。
碰到的问题
● 覆盖淘宝、天猫、一淘的部分Java应用、PHP
应用;
● instance数在9月份突破1k;
● instance的平均配置为:3 core/5g;
● 平均每台物理机(16 core/48g)运行了12个
instance,物理机的load在2-10之间;
使用状况
● 性能状况
○ A应用同等qps的情况下,xen vs instance的情况
为rt基本一致,xen的load是instance的1.5倍;
○ B应用同等qps的情况下,xen vs instance的情况
为xen的rt是instance的1倍,load是instance的2倍;
○ C应用在压测极限qps的情况下,xen的机器大概能
承担5倍流量,而instance的机器可承担8倍的流
量。
使用状况
● 动态
○ 集群利用率的均衡;
● 弹性
○ 真正迈入云时代;
● 和不同类型的应用一起运行
○ 类似Google Shared Environments。
美好的将来
● 谢谢!
The End!

Weitere ähnliche Inhalte

Ähnlich wie T4 淘宝私有云

从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰Scourgen Hong
 
高可用和可伸缩架构
高可用和可伸缩架构高可用和可伸缩架构
高可用和可伸缩架构LI Daobing
 
Times Ten Training
Times Ten TrainingTimes Ten Training
Times Ten TrainingLi Chen
 
用简单语言构建复杂系统
用简单语言构建复杂系统用简单语言构建复杂系统
用简单语言构建复杂系统Leo Zhou
 
Ops as Code using Serverless
Ops as Code using Serverless Ops as Code using Serverless
Ops as Code using Serverless Rick Hwang
 
微博平台混合云实践 - Docker全架构
微博平台混合云实践 - Docker全架构微博平台混合云实践 - Docker全架构
微博平台混合云实践 - Docker全架构Chen Fei
 
Operation Logic Manager
Operation Logic ManagerOperation Logic Manager
Operation Logic ManagerLee Seungki
 
超融合桌面雲完美方案_v8.2
超融合桌面雲完美方案_v8.2超融合桌面雲完美方案_v8.2
超融合桌面雲完美方案_v8.2Samuel Lu
 
Nodejs & NAE
Nodejs & NAENodejs & NAE
Nodejs & NAEq3boy
 
微信201204
微信201204微信201204
微信201204drewz lin
 
微信之道201204
微信之道201204微信之道201204
微信之道201204shaomeng shi
 
App operationattaobao-velocity2010 bj-final
App operationattaobao-velocity2010 bj-finalApp operationattaobao-velocity2010 bj-final
App operationattaobao-velocity2010 bj-finaliambuku
 
开源软件营销策略
开源软件营销策略开源软件营销策略
开源软件营销策略linhaicaoyuan
 
如何設計電腦 -- 還有讓電腦變快的那些方法
如何設計電腦  -- 還有讓電腦變快的那些方法如何設計電腦  -- 還有讓電腦變快的那些方法
如何設計電腦 -- 還有讓電腦變快的那些方法鍾誠 陳鍾誠
 
云的基石:Net app存储平台
云的基石:Net app存储平台云的基石:Net app存储平台
云的基石:Net app存储平台ITband
 
CollabNet TeamForge 8.0 简介 (Chinese)
CollabNet TeamForge 8.0 简介 (Chinese)CollabNet TeamForge 8.0 简介 (Chinese)
CollabNet TeamForge 8.0 简介 (Chinese)CollabNet
 
MariaDB: 新兴的开源大数据引擎
MariaDB: 新兴的开源大数据引擎MariaDB: 新兴的开源大数据引擎
MariaDB: 新兴的开源大数据引擎Colin Charles
 

Ähnlich wie T4 淘宝私有云 (20)

Hadoop ecosystem
Hadoop ecosystemHadoop ecosystem
Hadoop ecosystem
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
 
高可用和可伸缩架构
高可用和可伸缩架构高可用和可伸缩架构
高可用和可伸缩架构
 
Times Ten Training
Times Ten TrainingTimes Ten Training
Times Ten Training
 
用简单语言构建复杂系统
用简单语言构建复杂系统用简单语言构建复杂系统
用简单语言构建复杂系统
 
Ops as Code using Serverless
Ops as Code using Serverless Ops as Code using Serverless
Ops as Code using Serverless
 
什麼是Nephio?
什麼是Nephio?什麼是Nephio?
什麼是Nephio?
 
微博平台混合云实践 - Docker全架构
微博平台混合云实践 - Docker全架构微博平台混合云实践 - Docker全架构
微博平台混合云实践 - Docker全架构
 
Operation Logic Manager
Operation Logic ManagerOperation Logic Manager
Operation Logic Manager
 
超融合桌面雲完美方案_v8.2
超融合桌面雲完美方案_v8.2超融合桌面雲完美方案_v8.2
超融合桌面雲完美方案_v8.2
 
Nodejs & NAE
Nodejs & NAENodejs & NAE
Nodejs & NAE
 
QIoT ,QuAI
QIoT ,QuAI  QIoT ,QuAI
QIoT ,QuAI
 
微信201204
微信201204微信201204
微信201204
 
微信之道201204
微信之道201204微信之道201204
微信之道201204
 
App operationattaobao-velocity2010 bj-final
App operationattaobao-velocity2010 bj-finalApp operationattaobao-velocity2010 bj-final
App operationattaobao-velocity2010 bj-final
 
开源软件营销策略
开源软件营销策略开源软件营销策略
开源软件营销策略
 
如何設計電腦 -- 還有讓電腦變快的那些方法
如何設計電腦  -- 還有讓電腦變快的那些方法如何設計電腦  -- 還有讓電腦變快的那些方法
如何設計電腦 -- 還有讓電腦變快的那些方法
 
云的基石:Net app存储平台
云的基石:Net app存储平台云的基石:Net app存储平台
云的基石:Net app存储平台
 
CollabNet TeamForge 8.0 简介 (Chinese)
CollabNet TeamForge 8.0 简介 (Chinese)CollabNet TeamForge 8.0 简介 (Chinese)
CollabNet TeamForge 8.0 简介 (Chinese)
 
MariaDB: 新兴的开源大数据引擎
MariaDB: 新兴的开源大数据引擎MariaDB: 新兴的开源大数据引擎
MariaDB: 新兴的开源大数据引擎
 

Mehr von drewz lin

Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearyWeb security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearydrewz lin
 
Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013drewz lin
 
Phu appsec13
Phu appsec13Phu appsec13
Phu appsec13drewz lin
 
Owasp2013 johannesullrich
Owasp2013 johannesullrichOwasp2013 johannesullrich
Owasp2013 johannesullrichdrewz lin
 
Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2drewz lin
 
I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2drewz lin
 
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolfDefeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolfdrewz lin
 
Csrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equalCsrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equaldrewz lin
 
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21drewz lin
 
Appsec usa roberthansen
Appsec usa roberthansenAppsec usa roberthansen
Appsec usa roberthansendrewz lin
 
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaolaAppsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaoladrewz lin
 
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_editsAppsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_editsdrewz lin
 
Appsec2013 presentation
Appsec2013 presentationAppsec2013 presentation
Appsec2013 presentationdrewz lin
 
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitationsAppsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitationsdrewz lin
 
Appsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martinAppsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martindrewz lin
 
Amol scadaowasp
Amol scadaowaspAmol scadaowasp
Amol scadaowaspdrewz lin
 
Agile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usaAgile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usadrewz lin
 
Vulnex app secusa2013
Vulnex app secusa2013Vulnex app secusa2013
Vulnex app secusa2013drewz lin
 
基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架drewz lin
 
新浪微博稳定性经验谈
新浪微博稳定性经验谈新浪微博稳定性经验谈
新浪微博稳定性经验谈drewz lin
 

Mehr von drewz lin (20)

Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearyWeb security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-keary
 
Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013
 
Phu appsec13
Phu appsec13Phu appsec13
Phu appsec13
 
Owasp2013 johannesullrich
Owasp2013 johannesullrichOwasp2013 johannesullrich
Owasp2013 johannesullrich
 
Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2
 
I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2
 
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolfDefeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
 
Csrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equalCsrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equal
 
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
 
Appsec usa roberthansen
Appsec usa roberthansenAppsec usa roberthansen
Appsec usa roberthansen
 
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaolaAppsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaola
 
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_editsAppsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_edits
 
Appsec2013 presentation
Appsec2013 presentationAppsec2013 presentation
Appsec2013 presentation
 
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitationsAppsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
 
Appsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martinAppsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martin
 
Amol scadaowasp
Amol scadaowaspAmol scadaowasp
Amol scadaowasp
 
Agile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usaAgile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usa
 
Vulnex app secusa2013
Vulnex app secusa2013Vulnex app secusa2013
Vulnex app secusa2013
 
基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架
 
新浪微博稳定性经验谈
新浪微博稳定性经验谈新浪微博稳定性经验谈
新浪微博稳定性经验谈
 

T4 淘宝私有云