3-网易蜂巢的DOCKER实践之路
面临问题
场景分析
如何解决
功能性需求(基础)
第一步 技术支撑公有化
开发流程
场景分析
功能性需求(基础)
非功能性需求(SLA)
第二步 产品技术云端化
开发流程
场景分析
多版本
服务依赖(SOA,MSA)
规范流程
第三步 云端技术容器化
开发流程
三步走
第一步 技术支撑公有化
第二步 产品技术云端化
第三步 云端技术容器化
云计算是互联网+的必然选择
实践之路
为开发者打造的基于DOCKER容器云
开发者定义
问题
研发+Kubernetes+Docker
实践之路-架构
场景分析-示例
实践之路
实践之路-反馈三境界
命令无法使用(nt found)
命令无法使用(not found等)
命令无法正常工作(iptables,drop cache等)
命令运行结果不一致(aufs,dm,overlay等)
实践之路-总结
性能优化(镜像架构,编排调度,资源池等)
运行规模(多租户,节点数,POD数等)
掌控底层及SDN网络技术的必要性
线上互联网产品稳定运行多年
更多服务容器化(业界领先RDS,日志,安全等)
目标与展望
4-京东弹性计算实践
私有云面临得挑战
用户需求
1、稳定性
2、性能
3、用户习惯
弹性计算之路
从KVM迁移到Docker
弹性计算架构
弹性计算平台 = JDOS(JD Datacenter OS)+CAP(Cloud Application Platform)。
JDOS实现实现基础设施(网络,物理机,存储)的资源管理、容器的生命周期管理、监控指标采集;
CAP负责应用治理、部署、监控报警、资源利用率统计、手动和自动的弹性伸缩。
OpenStack
Docker Driver
网络(OVS/VLan)
为了兼容现在的基础设施系统,满足用户习惯,每个容器都有独立的IP。
禁用了Docker网络,采用Neutron集成OVS;
优化OVS转发层,提升网络小包延迟,适用于微服务调用;
存储
镜像分层合并
镜像中心
配置中心
CAP 架构
核心是一套工作流,基于Zookeeper分布式调度引擎来实现。能动态注册发现节点;能控制单个节点并发任务数,失败重试次数,确保同一应用互斥任务串行执行。
系统监控指标
监控架构
指标数据带有明显的时间特性,每日数据上亿,采用了成熟的OpenTSDB方案。
提供了从应用和实例多个维度查看负载情况,满足用户的需求。
可以对应用配置警策略,进行短信或邮件报警。
宕机探测架构
硬件故障探测
监控页面
调度流程
弹性扩容流程
应用在启动之前可能需要数据库授权,启动之后需要挂载VIP,注册统一监控和统一日志。如何能自动发现应用的注册信息,采用了模版方式。应用先申请一个容器,手工注册这些信息,后续的扩容会以该容器为模版来进行自动注册。
故障迁移流程
当遇到容器或物理机故障,需要进行快速的迁移,迁移后的容器需要保持原有的IP,避免还要重新申请授权。
弹性调度算法
应用场景
双11全面使用弹性云来备战,线上应用在新机房都部署在容器上;
核心应用如:网站,交易,订单履约,配送,售后,无线,拍拍,金融,O2O等等平稳运行在容器上
容器资源利用率
以一小时为单位,计算容器的资源最大使用率;
应用资源利用率
根据应用和容器的关系,统计应用资源使用率;
部门资源利用率
根据负责人、部门、应用和容器的关系,统计部门资源使用率;
一键伸缩
批量快照水平扩容;
批量水平扩容;
批量水平缩容;
批量垂直搜索;
应用部署巡检
定期巡检应用容器部署情况,邮件报告;
实践经验
无状态,同时对磁盘IO要求不高的应用,很适合部署到弹性云;
微服务应用由于能自动服务注册发现,辅助均衡,非常适合部署到弹性云
推荐万兆网络和网卡,避免网络共享出现资源竞争;
稳定的操作系统版本;
推荐高配置物理机,合理得CPU和内存比,便于充分利用资源;
采购高质量的交换机和物理机;