32
Docker 原之道 The Power of Native Allen Sun DaoCloudwww.daocloud.io

DaoCloud - Docker 原生之道7xi8kv.com5.z0.glb.qiniucdn.com/DaoCloud - Docker 原生... · 2016-03-21 · Creates, ships and runs Docker containers deployable on physical or virtual

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Docker 原⽣生之道The Power of Native

Allen Sun「DaoCloud」

www.daocloud.io

新的硬件架构及指令集,⽀支持在单⼀一硬件上运⾏行多个租户操作系统。IBM/Intel

硬件·虚拟化1990

传统的硬件架构上,Hypervisor解析执⾏行操作系统到硬件的指令集。VMware/KVM

计算·虚拟化2000

Linux系统上,通过调⽤用内核特性,以进程的⽅方式运⾏行多个应⽤用容器。LXC/Warden

应⽤用·虚拟化2010

操作系统

应⽤用

服务器

操作系统

应⽤用

服务器

操作系统

应⽤用

服务器

PC/Web

Windows/Linux

Power/X86

应⽤用

服务器

应⽤用 应⽤用

虚拟化

Web

Linux

X86

Cloud

中间件 J2EE

服务器 服务器 服务器 服务器

操作系统 操作系统 操作系统 操作系统 操作系统

发布全球第⼀一款商⽤用PaaS平台技术,并公布其开源项⺫⽬目。

CloudFoundry2011

商业化运作CloudFoundry2.0版本,成⽴立Pivotal公司。

Pivotal2013

离职创⽴立专注于Docker容器技术的公司。

DaoCloud2014

云 · 操作系统

服务器

App

Cloud

HCI服务器 服务器服务器 服务器 服务器 服务器 服务器 服务器

应⽤用 应⽤用 应⽤用应⽤用 应⽤用 应⽤用 应⽤用 应⽤用 应⽤用

2005 年 Google

LXC

2011 年 VMware

Warden

2013 年 DotCloud

Docker

2015 年 DaoCloud

Container +今天

2014 年 Docker

OCP

特性LXC

2009

Warden Docker

2011 2013

API

管理界⾯面

跨平台

发布规范

维护者

REST

许多

Image

None

⼀一个

不限

CLI

⼏几个

Linux

⽆无 Buildpack

不限

Docker社区Linux开发者 Pivotal公司

容器技术的发展,从系统向应⽤用靠近,从功能向服务转换,从单点到集群为管理⺫⽬目标。

⽤用户级

Hypervisor

5-15%

分钟级

虚拟机模拟

内核级

CGroups

0-5%

秒级

容器直接

运⾏行空间

隔离策略

系统资源

启动时间

特性硬件接⼝口

操作系统 ⼲⼴广泛 Linux为主

GB-TB KB-MB镜像存储

近百 上万集群规模

备份,容灾,迁移 弹性,负载,动态⾼高可⽤用策略

容器技术不等同于轻量级虚拟化技术,适合传统IT转互联⺴⽹网架构的应⽤用场景。

Docker in 2013A lightweight runtime and robust tooling to build and run virtual containers on Linux to create the operating environment for your distributed applications.

Docker Basics

Docker ImageThe basis of a Docker container

Docker ContainerThe standard unit in which the application service resides

Docker Engine Creates, ships and runs Docker containers deployable on physical or virtual host locally, in a datacenter or cloud service provider

Docker RegistryOn-premises registry for image storing and collaboration

2nd1st 3rd 4th 5th

⽂文件系统

AUFS ZFS Windows兼容

⺴⽹网络

libnetwork overlay虚拟⺴⽹网络

1.10

libcontainer runC标准

Docker Registry

V1 -> V2安全

存储

Volume Driver有状态

Docker in 2016

A Containers as a Service (CaaS) platform which enables IT Ops managed and secure application environment (infrastructure and content) for developer self service to build and deploy applications

Docker Native Toolbox

Swarm管理

调度容器

Machine配置

创建主机

Compose编排

创建应⽤用

Docker Native

Compose

App

YAML

Machine

Engine

Host

Swarm

Container

Cluster

40%Docker users already running in production

85% using Swarm & Compose

5X Real Docker adoption last year

Production Ready for 1.5 year

0

50

100

150

200

250

300

350

400

VXLan FLANNEL UDP WEAVE PCAP CALICO

Overlay Network benchmark

Bandswitch CPU Cost

front-tier

front-tier

Voting APP Result APP

https://github.com/docker/example-voting-app

worker

DB

Voting APP

Voting APP

Result APP

Result APP

worker

worker

Redis

db-data

version: "2" services: voting-app: image: voting-app ports: - "80" networks: - front-tier - back-tier result-app: image: result-app ports: - "80" networks: - front-tier - back-tier worker: image: app-worker networks: - back-tier 接右边

接左边 redis: image: redis ports: - "6379" networks: - back-tier container_name: redis db: image: postgres:9.4 volumes: - "db-data:/data" networks: - back-tier container_name: db volumes: db-data:

networks: front-tier: back-tier:

Compose UP !

Container 100000Node 1000

Latency <150ms

DaoCloud Stack, 100% Docker Native

透明的团队协作

分层的服务契约

应⽤用定义基础设施

持续交付的流⽔水线作业

显⽰示并可声明的⽅方式,来完成协作⼯工作,并使得这⼀一过程对所有的参与者可⻅见,可追

溯。

形成明确的契约,在系统架构上,分层是前提⽽而不是⺫⽬目标。越早形成分层的共识,并协同维护好分层间

的契约。

让应⽤用定义基础架构,任何层⾯面访问基础架构的过程都是影响效率的事情,⼀一旦发⽣生就要优先想办法⾃自动化并契约它

持续的交付是业务⽣生命线,互联⺴⽹网的能⼒力描述就是迭代速度。不仅要交付组件,也要交付测试。交付⽆无关基础架构。

微服务架构 容器化 持续交付DevOps

分布式的⾼高可⽤用架构

云平台

弹性扩展是多粒度的,不仅仅是架构能⽀支持弹性,组件也能弹性,最后实现集群弹性。前提是⾃自动化策略具

备弹性。

应⽤用管理

数据服务

开发 测试 部署 运维交付

平台,应⽤用和服务

运营

运维

发布

开发

测试

交付

DevOps + Docker + PaaS开发-运维-云平台

Demo 视频

⾃自治进化

规划设计

⾼高速迭代

永远可⽤用

横向扩展

移动优先

⾼高可靠性

纵向扩展

桌⾯面应⽤用

控制互联

资源的云 应⽤用的云vs.

https://www.forrester.com/The+Forrester+Wave+Enterprise+Public+Cloud+Platforms+In+China+Q3+2015/fulltext/-/E-res121929

Thank You!