hyper: docker 引擎 - · pdf filehyper: 基于虚拟化的docker 引擎 王旭 cto &...

18
Hyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Upload: vuongkiet

Post on 23-Feb-2018

325 views

Category:

Documents


15 download

TRANSCRIPT

Page 1: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Hyper: 基于虚拟化的Docker 引擎

王旭

CTO & Cofounder, hyper.sh

Page 2: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Docker 热潮

• 2015年4月14日,Docker获得D轮9500万美元融资

• 2015年4月6日,CoreOS 宣布获得 Google 领衔的1200万美元投资

• 2014年11月13日,亚马逊在 re:Invent 大会发布 Amazon EC2 Container Service

(ECS)

• 2014年11月5日,谷歌发布 Google Container Engine (GKE)

• 2014年10月15日,微软和 Docker 宣布将合作把 Docker 移植到Windows上

• 2014年7月10日,微软宣布将与谷歌、Docker 合作,在 Azure 上支持 Kubernetes 和

libswarm

• 2014年6月9日,Docker 1.0 正式发布

• 2013年3月20日,Docker发布第一个版本

Page 3: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Docker的创新点在哪

Docker 如此火爆,也把容器技术带到焦点,但是究竟什么引爆了 Docker?

Page 4: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Docker = 容器?

• 几种常见的容器技术:

Unix Chroot 1982

FreeBSD Jail 1998

Linux vserver 2001

Solaris Zone 2004

Linux OpenVZ 2005

Linux LXC 2008

来源:Wikipedia: Operating-system-level virtualization

Page 5: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Docker 究竟是什么

Docker Container

(LXC)

Layered Image

(aufs)

Page 6: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Docker 的核心在于以应用为中心

• 一致性

–开发-测试-交付

• 快速收敛

–降低自动化困难

• 操作系统回归本原

– 应用与操作系统解耦

Page 7: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

虚拟化的问题

多年来,虚拟机一直致力于真实模拟硬件,并承载完整的操作系统,可这并不是我们真正要的

“虚拟机”的问题—— 不在“虚拟”而在于“机”

Page 8: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Hyper: 应用中心的虚拟化

既然虚机的问题在于没有做到“应用为中心”,

那么是否可以做面向应用的虚拟化呢?

Page 9: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Hyper 是什么

Hyper Hypervisor Docker Image

Page 10: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Hyper 如何工作

Light Kernel on Hypervisor

Initrd: Hyperstart

App

(Docker Image)

App

(Docker Image)

Hyperd

虚拟机

Page 11: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Hyper 命令行工具

Page 12: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Hyper 的性能与开销

• 启动时间 (启动完整应用)

– 350ms ( Xeon 1270

3.5GHz, 4-Core)

– 500ms ( i3 5010U

2.1GHz 4-Core)

• 运行时

– CPU: 与宿主机接近

– IO:

Page 13: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

WHY HYPER

既然已经有容器,为什么还要用虚机

Page 14: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Hyper vs. 容器

• 公有容器服务

– 用户需要容器服务

– 隔离性:

• 虚拟化:独立内核、基于硬件辅助强隔离

• 容器:共享内核的弱隔离

• 既有系统

– 私有云中的已有大量虚拟机

• “Docker化”演迚的需求 vs 已有虚拟化基础设施

– 已有硬件存储与网络解决方案

• OpenStack Cinder/Neutron

Page 15: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Hyper开源项目

• 主页与文档

– https://hyper.sh

– https://hyper.sh/faq.html

– https://docs.hyper.sh

• Github

– https://github.com/hyperhq/hyper

– https://github.com/hyperhq/hyperstart

Page 16: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

HyperStack

• Hyper + OpenStack

• Hyper 作为DCOS的调度单位

– Magnum 框架

– Mesos & Kubernetes

• OpenStack提供存储、网络等组件

– Neutron, Cinder 等标准API接口

– OpenStack 社区成熟的设备厂商支持

Page 17: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Q & A

Page 18: Hyper: Docker 引擎 -  · PDF fileHyper: 基于虚拟化的Docker 引擎 王旭 CTO & Cofounder, hyper.sh

Backup: More Features

• Pod: group of apps, rather than OS

• Change pod on the fly: eliminate the boot

time

• Persistent mode: update pod without a VM

reboot

• Kubernetes Pod Support