遵循互联网架构“八荣八耻”,解析EWS高质量架构6个维度的20个能力

本文主要从最初的聚石塔容器服务EWS开始讲起,进而分享了EWS
高质量架构产品化的C2B方案和全渠道方案,着重说明了EWS的技术实现,包括EWS的总体架构以及EWS的功能实现等。

直播视频:点此进入

PDF下载:点此进入

以下是精彩内容整理:

 

聚石塔

聚石塔是阿里的电商云平台,聚石塔主要向商家提供电商云的支撑,能够更方便的和阿里做技术上和系统上的对接,所有的ISV和服务商开发的系统都部署在聚石塔上。今年整个零售平台提供了16字目标:聚焦体验、升级消费、赋能商家、繁荣生态。聚石塔扮演的是技术赋能商家、繁荣生态的角色。

聚石塔容器服务-EWS

EWS分为三个层面。第一环是PaaS的容器云,主要包括一些镜像的管理、机器资源的管理等,这一环是在原有的IaaS云基础上容器化一种容器PaaS云计算,目前Docker云平台服务商都在做这个事情。第二环是把淘宝的高质量互联网架构提供出来,会提供弹性计算、负载均衡等,希望两三个人的团队能够支撑像淘宝一样稳定的系统。第三环提供IT解决方案,比如OMS、互动游戏等。整个三环是商家事业部在电商云提供了一套从技术到产品到解决方案的完整体系,称之为EWS。

EWS 商业化的容器平台

EWS起初叫TAE,TAE1.0做到安全开放的目的;TAE2.0做到全架构服务,比如MySQL互备等,给开发者更方便、更高的体验;EWS从提供发动机到插座到照明的解决方案,是一个商业化的容器平台。

 

EWS 高质量架构产品化——C2B方案和全渠道方案

C2B定制解决方案

如图中类似的系统是ISV开发的,如何保证ISV开发的系统在淘宝的交易主链路上的稳定性、用户的体验等?

在服务了很多ISV后,我们总结了“老中医模式”,一套方法论,最后输出一套产品,平台方和客户方要求是有差异的。平台方希望高质量架构,标准化,关注运维,强调质量;客户方希望功能第一,多样灵活,关注开发,强调成本。

典型系统的架构演进

一个用户的系统基本上经历了五个步骤。

根据EWS在C2B开放场景下的目标和定位,我们的解决方法是由一个全架构的PaaS平台,将构建、运维、发布全部产品化,然后再把高质量做成固有的服务,包括弹性计算、多Region、负载均衡、健康检查和IP迁移等,把自己的系统建设成高质量架构,和把高质量架构作为一种能力输出完全不一样!若把高质量架构能力产品化输出,需要考虑到更好的扩展性和更好的兼容性。

全渠道
O2O
解决方案

商场同款的商品,下单可以选择门店发货或者门店自提。

门店原有线下的IT系统去帮助做订单的管理、库存的管理、供应链的管理,但线上线下怎么融合,就是摆在全渠道O2O的问题。很多商家是由软件服务商做开发,那么传统软件开发商怎么和互联网做对接,如何做互联网架构,原有系统怎么无缝迁移?我们总结了“老鸨模式”,老鸨模式是经纪人模式,它具备了大型软件的开发能力,进行包装变成互联网模式的软件,传统开发商都有去IOE的需求,软件SaaS化,我们更多的扮演的是咨询的角色,帮助他们向互联网架构迁移。

零售IT 互联网化的驱动是零售商业互联网化。

 

EWS技术实现

互联网架构八荣八耻

以可配置为荣 ,以硬编码为耻

以可互备为荣 ,以单点为耻

以可无状态为荣 ,以有状态为耻

以可随便重启为荣 ,以不能迁移为耻

以整体交付为荣,以部分交付为耻

以标准化为荣,以特殊化为耻

以自动化运维为荣,以人肉化运维为耻

以无人值守为荣,以人工值班为耻

高质量架构6个维度的20个能力

EWS总架构

系统架构分为左右两个部分,用户访问链路和运维管控链路。用户访问链路是指下单背后的流程逻辑是怎样的,运维管控链路是指一些后台能力。用户访问首先会访问到接入层,经历防安全攻击的扫描后,接下来是一个Tengine的集群,所有的访问日志都会从LogAgent写到日志服务子系统,日志服务子系统是一个消息队列,会不停地收用户日志并做排序、去重等来保证分布式日志的保序,后面会有一个大的Storm集群处理分布式日志,然后Tengine也会访问到容器中,容器中部署自己写的程序,也会有一些应用日志,这就算整个访问链路走过的流程。管控链路中,互联网架构下想做一个好的部署,首先要到达管控中心,通知用户将健康检查关掉,然后通知路由中心将Tengine的节点摘掉,在不服务状态下发布,接着将包传到中间的OSS存储上,再通知分区的管控去拉代码包。

多机房资源池

EWS支持多机房能力。目前支持五个机房,具备多机房的资源管理和系统部署能力。

图中界面为分Region资源池的管理,有以下三点:

  • 多机房资源池化:命令方式:curl
    https://as-hz.acs.aliyun.com/agent/PmndU | sudo bash;购买有EWS镜像ECS主机。
  • 多机房资源 OS化:能够把多机房的CPU,内存,带宽资源调度,像单机操作系统一样统一调度。
  • 快速新建机房的能力:用户使用EWS 多机房部署功能,一键新部署到新建Region。

官方Service

EWS后端软件是以Service来执行的最基本单元,EWS官方镜像覆盖80%常用系统软件,提供服务从功能、性能、稳定性和可维护性四个维度来考虑的。

EWS 系统模型

  • 一个Region 有多个 Service Group
  • 一个Service Group 有多个 Service
  • 一个Service 有多个Container
  • 一个Container 一定在一个ECS里面,可以独占,也可以和其他Container混部
  • 一个Service 可以属于不同的ECS,也可以数据同一个ECS
  • POD 是多个Service的逻辑组合,系统编排和调度以POD为单元

Service管理

基于EWS系统模型,核心是对Service管理,Service最重要的是发布功能。其中包括:

  • 包发布: 支持大文件程序上传,断点续传。Zip 包,War包,Jar包,Http
  • Git发布:每个Service一个独立的Git仓库
  • 灰度发布:可以对Service下面的Container分组,对分组进行发布,来实现灰度发布
  • 回滚发布:每个Service会保存 10个最近的发布版本,可以回滚到任意一个
  • 预发布: 可以将两个Service分为一组,让Service1 作为 Service2的预发环境

EWS统一接入层

除了Service管理,还有接入层。接入层主要提供以下几个功能:

  • 域名:为用户每个应用提供一个域名,用户也可以通过cname操作添加新的域名。
  • 负载均衡:提供了七层负载均衡服务(HTTP&HTTPS),包括四层的TCP。
  • 安全防护:配合云盾,高防IP,TMD,WAF防御DDOS,CC,SQL注入,XSS,跨站等各种攻击。
  • 健康检查:应用级别健康检查,端口网络检查,脚本健康检查。

负载均衡和健康检查

  • 每一个Service,下面的所有Container,会Round-Robin 负载均衡
  • Service域名、Service下面的Container 都有健康检查
  • 域名健康检查主要检查连通性
  • Container健康检查 主要检查可用性,也就是对应的ECS是否挂了
  • 可以自定义健康检查脚本

EWS弹性计算

系统编排和混布

  • 系统构建的编排 :新建服务
  • 发布的编排:按顺序,依赖关系编排
  • 混部:核心是资源的池化

弹性扩容和缩容

  • 优雅发布,热升级,不停服升级
  • 垂直扩缩容,水平扩缩容
  • 手动扩缩容、自动扩容和缩容规则引擎

健康检查和迁移

  • 健康检查:机器故障检查,应用故障检查
  • 迁移:有状态迁移、无状态迁移,IP地址漂移、域名漂移
  • 检测和恢复规则引擎

EWS在后台都已经实现了,但是在前台还没有完全开放。一些场景中用户并不知道究竟该迁移、摘掉、告警还是重启,如果用户有这方面的需求,可以找到对应的小二,会在后台帮用户把规则配置上。

动态迁移

  • 扩容镜像预热,保证迁移时传输最少量的数据
  • 无状态迁移扩容,不停服, 分钟级
  • 有状态配置类迁移扩容,不停服,分钟级
  • 混布 java1:2 、php1:4
  • 故障告警检测分钟级
  • 有状态数据类迁移扩容,利用Docker镜像概念,分钟级

EWS 监控和APM

系统健康靠监控,我们提供了应用监控,服务端监控以及客户端监控等。APM是应用性能管理,包括内部Redis调用、MySQL调用是不是够好,在程序中是不是有瓶颈,都会可视化的表达出来。

EWS总结

EWS提供了镜像服务,网络层防攻击,计算层将ECS资源池化,具备多Region的能力,还会和阿里云的存储类动态的服务无缝的打通,走内网高速通道,接着会给用户控制台,可以做可视化操作。

时间: 2024-09-10 02:26:08

遵循互联网架构“八荣八耻”,解析EWS高质量架构6个维度的20个能力的相关文章

[QCon讲稿实录]谈高质量架构产品化输出

本文是<2016 Qcon北京>运维专场开场讲稿实录,讲阿里聚石塔TAE团队如何做高质量架构产品输出 大家早上好,我是智宇,来自阿里巴巴商家业务事业部.很高兴能今天能在运维专场的开场给大家分享一下聚石塔容器系统运维.在进入正题前我先简单介绍一下聚石塔.聚石塔是阿里巴巴电商云平台,主要是面向整个阿里电商生态,提供带有电商属性的云服务.大家知道围绕着阿里电商生态有传统概念的买家,卖家之外,还有品牌商,服务商和ISV也就是独立软开发商等角色.除了阿里巴巴提供的基础的电商服务外,这些中小卖家,品牌商在

程序员的八荣八耻

以动手实践为荣,以只看不练为耻. 以打印日志为荣,以出错不报为耻. 以局部变量为荣,以全局变量为耻 以单元测试为荣,以手工测试为耻. 以代码重用为荣,以复制粘贴为耻. 以多态应用为荣,以分支判断为耻. 以定义常量为荣,以魔法数字为耻. 以总结思考为荣,以不求甚解为耻.

八年来我们到底经历了什么?——中间件专家带你“重走”双11高可用架构演进之路

双11的技术挑战 双11技术挑战的本质使用用有限的成本去是实现最大化的用户体验和集群整体吞吐能力,用最合理的代价解决零点峰值,支撑好业务的狂欢.阿里做双11已经有八年之久了,八年来双11的交易额增长200倍,交易峰值增长400多倍,系统复杂度和大促支撑难度以指数级攀升:并且经过多年的发展,双11技术实现链条中的变量不断增加,如峰值的增量和系统架构的变化.交易峰值的组成.拆单比.每个业务入口的访问量等,这些变量也给系统带来了不确定性.回顾这八年的双11零点之战,它推动了阿里的技术进步.推动了架构优

基于.NET平台的分层架构实战(八)—数据访问层的第二种实现:SQLServer+存储

基于.NET平台的分层架构实战(八)-数据访问层的第二种实现:SQLServer+存储过程 在上一篇中,讨论了使用SQL构建数据访问层的方法,并且针对的是Access数据库.而这一篇中,将要创建一个针对SQLServer数据库的数据访问层,并且配合存储过程实现. 曾经有朋友问我使用SQL和存储过程在效率上的差别,惭愧的是我对这方面没有研究,也没有实际做过测试.通过查阅资料,发现在一般情况下,存储过程的效率由于使用SQL,但是也不绝对,也发现有的朋友测试时发现在特定情况下SQL的效率优于存储过程,

全国整治互联网低俗之风第八批曝光网站名单

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断淘宝客 站长团购 云主机 技术大厅 中新网2月5日电 互联网违法和不良信息举报中心公布了全国整治互联网低俗之风第八批 曝光网站名单.全文 如下: 互联网违法和不良信息举报中心根据公众举报核查,下列网站存在大量违背社会公德.损害青少年身心健康的低俗内容,有的具有色情性质,在全国整治互联网低俗之风专项行动开展之后未采取有效措施,现予公布. 1."赶集网"

DockOne微信分享( 八十八):PPTV聚力传媒的Docker与DevOps

本文讲的是DockOne微信分享( 八十八):PPTV聚力传媒的Docker与DevOps[编者的话]DevOps是2009年前后提出的一个概念,提倡开发(Development)和运维(Operations)这两个领域的高度协同.从而在完成高频率部署的同时,提高生产环境的可靠性.稳定性.弹性和安全性.本次分享介绍了PPTV聚力传媒以Docker技术为支撑,在DevOps方面做的优化,包括: DevOps简介 Docker在PPTV的应用 DevOps与Docker的结合 实现方案 DevOps

【新闻晨报】八问八答拆解LTE生态 P2P网贷倒闭潮背后

中云网每天精选各科技媒体头条! 1. 新浪科技 破解UGC的盈利难题:智能内容 http://tech.sina.com.cn/zl/post/detail/i/2013-11-20/pid_8437295.htm 2006年,谷歌收购YouTube标志着"用户制作内容(User Generated Content,简称UGC)"模式的全面兴起.随后,越来越多互联网公司热衷于搭建网络平台,并将平台上的内容制作放手给用户去完成. 在这一模式下,确实有许多公司在吸引用户方面取得了堪称&qu

阿里云“盘古”是如何打造的? — 盘古底层架构及块存储技术解析

阿里云-飞天-盘古 董元元 同学在2016年云栖大会(北京)分享了<阿里云"盘古"是如何打造的? - 盘古底层架构及块存储技术解析>,高质量!!!

八心八箭四喇叭 诺基亚音乐机X7规格曝光

无论诺基亚还是http://www.aliyun.com/zixun/aggregation/17028.html">Symbian再怎么衰落,诺系音乐手机对于喜欢听歌的朋友依然拥有很高的人气,在Symbian^3系统手机产品陆续上市之后,首款使用新系统的音乐手机X7-00也已曝光.首先出现的是X7-00手机玩<极品飞车>的视频,除了比较独特的外观设计之外,还能明显看到机身四角均设置有扬声器.也就是说X7-00采用了四声道立体声设计,难道是诺基亚从山寨厂商们那里学来了宝贵经验,