Upload
tommy-tommy
View
224
Download
0
Embed Size (px)
Citation preview
京东弹性计算云:软件定义数据中心与容器集群调度
刘海锋
内部基础云服务建设广告拍拍 金融商城
中间件系统数据存储、分发网络
弹性计算云
智能硬件国际化 新业务
挑战 : 越来越多的机器server
server
server
trading
OFC
Webpage serving
serverserver
searchadvertising
server server server
hadoop spark mpi
server
Image serving
server
Streaming compute
京东弹性计算云之路京东弹性计算云之路
在线容器11000+
战略项目
2014/10
2015/2
2015/618
新数据中心建设
2015/8
思考:虚拟机还是容器?• 技术没有新旧优劣
• 统一管理服务机、虚拟机、轻量容器–容器作为一等公民
思考:激进改造还是逐渐变革?• Mesos, Kubernetes, CoreOS…
• OpenStack + Docker + 集成现有基础设施
弹性计算云 -网络挑战 I• 采用能实在落地& 适配现有网络的 vlan模式
VM1
switch
nova-computeneutron-openvswi tch-agent
计算节点
OVS
Eth1 Eth2
VM2
neutron-dhcp-agentneutron-openvswi tch-agent
neutron-l 3-agent
网络节点
OVS
Eth1 Eth2
VM3
计算节点
OVS
Eth1 Eth2
VM4dnsmasq
dnsmasq
eth0172.17.4.10
manage swi tch
eth0172.17.4.11
eth0172.17.4.12
VLAN ID converted with flow tabledl_vlan=101 => mode_vlan_vid:1dl_vlan=102 => mode_vlan_vid:2
VLAN ID converted with flow tabledl_vlan=1 => mode_vlan_vid:101dl_vlan=2 => mode_vlan_vid:102
OVS VLAN
nova-computeneutron-openvswi tch-agent
Trunk模式、Bond4 Trunk模式、Bond4
Tag 1 Tag 2 Tag 1 Tag 2Tag 1 Tag 2
VLAN 101
VLAN 102
弹性计算云 -网络挑战 II
tap1 tap2
OpenvSwitchNamespace ns1 Namespace ns2
Linux Server
OVS with two veth pairs
Veth pai rovs-tap1
ovs-tap2
Veth pai r
tap1 tap2
OpenvSwitchNamespace ns1 Namespace ns2
Linux Server
OVS with two ovs ports
OVS port OVS port
• 请不要使用 veth pair• 万兆网络环境,请平衡 CPU处理网卡中断• 请勿频繁 show OVS 的 status,它设计的不是非常异步( JD改进了它)• 慎用OVS 的 Qos功能有导致内核 crash问题, JD
patch fix了它
弹性计算云 -存储挑战• 自研 vDisk解决 DM Thin-Pool问题 ( 生产环境频繁元数据异常& 刷盘错误 )• 分级存储投入生产环境有效适应应用对 IO要求
Container
/export/L0 (tmpfs)
/export/L1 (SSD)
/export/L2 (SAS)
/export/L3 (JFS)
Local Host
弹性计算云 -镜像挑战• JD compress: 镜像层间压缩技术,适应 base镜像多个版本迭代场景,有效降低镜像总大小 (compress
image-id)• JD clear all: 适应 JD众多定制镜像基于一个 base镜像迭代场景,有效避免历史镜像环境因素干扰
(entrypoint/cmd/env,,,)• JD include: 用于引入某一个单层,适应 JD软件栈堆叠场景• JD import: 用于引入其他 dockerfile
弹性计算云 -规模 &速度的挑战• 单个 Openstack集群管理 4k台物理计算节点
– DB读写分离– 大量使用缓存– 自研 RPC替代社区 rabbitMQ
• JD容器”着色”功能,支持秒级创建 1k台容器
软件定义数据中心与容器集群调度
Jingdong Datacenter Operating System (JDOS)
Containers
Persistent block storage(JFS)
Networking (vlan-ovs)
Cloud Application Platform (CAP)(deploy, logging, monitoring, container cluster scheduling)
Various Applications
IDC physical infrastructure
弹性微服务
两类服务: Web , Application弹性伸缩策略:资源指标,历史趋势, TPS 性能
规模2015 年 618 :生产环境 11000+ 个 docker 实例,接入了 1000+应用新 IDC 建设:年底规模再翻两番,大部分应用程序通过容器技术来发布
单品页 图片青龙系统
O2O 无线 拍拍 团购
频道页风控
缓存服务
登录MySQL部署管理
开发测试
618 大促中发挥的作用
618618 大促大促
BB
EE
CC
DD
AA618 当天弹性扩容
加速资源申请审批
节约物理资源
稳定支持大流量应用(图片展现、单品页、秒杀风控… ) 节约部署上线时间
正在做的事情• 规模–建设新机房:软件定义、自动化容器管理
• 技术–内部应用引擎–在线离线业务统一调度