6. 2.面临的挑战
l 产品功能迭代快,系统变更及代码上线次数多
l 业务上复杂的依赖关系
l 突发的热点事件
#周一见# #马航370# #刘翔摔倒# #明星丑闻#
l 大型运营活动及三节保障:红包飞
l 每日不定时段的Push(推送)
n 分类:应用内Push,应用外,活动Push,运营Push
n 用户互动时间:<1h
n 下发速度:快,中,慢
n 用户模型:全量,高中低频,地区,灰度模型
8. 4.1 痛点1:扩缩容流程繁琐
Text in here
Step1 设备申请
- 设备申请,项目评审
- 入CMDB,装机
Step2 机器初始化
- 设备录入资源池,初始化
Step3 服务部署
- 环境部署
- 监控部署
- 服务部署(代码 & confs)
- 流量引入
Step4 自动报修&下架
- 服务自动上下线
- 机器置换或下架
业务运维可控
上架装机
Title in here
服务部署
新机器
初始化
Title
in
here
分配给业务
管理员
CMDB
Title
in
here
流量引入
Title
in
here
自动报修
Title
in
here
过期下架
19. 1.1 Docker 选型
l 裸机 or VM
n 私有云采用裸机,公有云采用VM(ECS)
l 网络选型
n 线上环境:Host模式
n 灰度环境:Ovs Bridge模式 + L2 Switch (改造成本高)
l 参数设置
n --bridge,--iptables,控制网桥和NAT,host模式下关闭
n 开启2376端口
l 版本搭配
CentOS 6.6/Kernel 2.6.32
DeviceMapper-loop
Docker Daemon 1.3.2
CentOS 7.1/Kernel 3.10.0
DeviceMapper-direct-lvm
Docker Daemon 1.6.2
Mesos0.25 Swarm 1.0.0 Mesos 0.25Dispatch 1.1
旧版容器调度方案 新版容器调度方案
32. 4 DCP核心设计思想
l 核心思想:借鉴于银行的运作机制
l 弹性方案:内网共享池 + 公有云
l 服务:IP + Port
私有云:共享池
公有云:阿里云
设备
BufferPool
服务池
SrvPool
集群
Group
层级关系
l DCP:分为多个集群
l 集群:为独立平台,对应业务线
n 集群内:自由调度(跨Pool)
n 集群外:配额调度
l 服务池:同一业务线的同构服务
l 设备:共享池 + buffer池 + ECS
33. 1
5 DCP管理员视角
超级
管理
员
集群
管理
员
服务
池管
理员
l 内网共享池管理
l 阿里云ECS管理
l 计费及账单管理
l 服务器录入/还原
l Buffer池管理
l 配额及申请管理
l 服务池扩缩容
l 代码构建及发布
l 业务监控
l 容量管理
l 超级管理员:负责阿里云ECS管
理以及内网集群间设备交换
l 集群管理员:负责产品线内设备
管理以及从共享池,阿里云筹借
机器
l 服务池管理:负责具体业务的扩
缩容以及代码变更等
管理员分工及权限
34. 6 大规模集群操作自动化
1 2 3
设备申请 初始化 服务上线
l 设备申请
n 内: 共享池
n 外: 阿里云
l 初始化
n 包标准化
n 配置管理
l 服务上线
n 容器动态调度
n 服务弹性扩缩容
40. 9.1 大规模集群第三步:扩容
l 扩容
n 输入:服务池名称、服务类型,容器类型、数量、镜像地址等
n 输出:扩容报告
l 告警机制
n 用户在使用完80%的资源时,短信和邮件提供
n 用户在使用超过90%的资源时,需要审批机制
l 记账中心
n 资源拥有者、使用方、型号、使用时间、日期、信用等
l 容器服务类型:按照dPxx(dockerPxx)命名
dP01
8核12G
dP02
12核12G
dP03
12核16G
dP04
16核16G
43. 9.4 弹性扩容-Swarm调度策略
Ø Swarm创建容器过程,调度分为两个阶段
l 1 根据条件过滤出符合要求的节点
n Constraints(约束过滤器)
n Affinity(亲和性过滤器,)
n Dependency(依赖过滤器)
n Health(会根据节点状态进行过滤,会去除故障节点)
n Ports(会根据端口的使用情况过滤)
l 2 在过滤出的节点中根据策略选择一个最优节点
n Binpack:在同等条件下,选择资源使用最多的节点
n Spread:在同等条件下,选择资源使用最少的节点
n Random:随机选择一个
Ø 调度颗粒度
n Memory:docker run –m 1g …
n CPU:docker run –c 1 …
44. 9.5 弹性扩容-服务发现
LB
Nginx
Nginx Upsync
Consul Cluter
Health Check
Consul
SrvA:ip:port
Consul Agent
Host1
SrvB:ip:port
Consul Agent
Host2
服务check 服务check
register register
Discover
前端类:
1
2 2
1
3
4 4
48. 3 三节弹性调度解决方案
l 部署模式
n 优先调度内网共享池资源
n 存储节点、主要计算节点仍部署在公司内网,以确保数据安全
n 红包飞,春晚等峰值流量应对计算节点部署在阿里云
l 对阿里云的要求
n 日常提供1000节点计算能力,可以5~10分众完成在阿里云的部署
n 春晚提供3000节点计算能力,微博信息流、红包飞均可支持
49. 4 阿里云弹性方案
W W W W W W W W
C C
D D D
前端机
缓存
存储
微博内网
W
C C
前端机
缓存
阿里云
春晚峰值应对
申请一倍服务器
W W W W W W W W
C C
D D D
前端机
缓存
存储
W
C
前端机
缓存
W W W W W W W W W
C