• Docker技术使用场景主要特性等相关资源整理
  • OpenStack与Docker集成:使用openstack管理docker
  • Docker的隔离性和安全性问题
  • docker使用的技术之Container内核原理介绍
  • Docker详细的应用与实践架构举例说明
  • ​基于Docker的大数据开发实践
  • ​docker之轻量虚拟化技术——docker实战分享
  • 什么是docker?Docker技术详细介绍
  • 基于Docker容器的云计算平台搭建实战
  • docker和VM虚拟机的区别以及如何用docker搭建基础设施
  • ​Docker容器术语以及docker的特点
  • Docker & Docker Hub
  • Introduction to Swarm, a Docker-native clustering system
  • Docker、Kubernetes、Neutron中的网络简介
  • ​James Turnbull:《The Docker Book》
  • Docker on AWS:Running Containers in the Cloud
  • Introduction docker Container Security
  • docker应用之利用Docker构建自动化运维
  • Docker基本原理简介和详细安装步骤介绍
  • Docker 基础用法和常用命令及选项介绍
  • Docker 端口映射,端口绑定操作介绍
  • Docker 四种网络模式及网络配置详细介绍
  • docker下通过Dockerfile指令构建镜像的指令选项介绍
  • ​Docker 容器数据管理,链接容器,构建私有库
  • Docker容器分析----好处和缺点介绍
  • 如何实现 coreos 下Docker 与分布式数据库结合
  • 应对 Docker 网络功能难题的挑战与思考
  • Docker着手将容器部署到私有云与公有云
  • 为现在和未来改善Docker安全
  • Docker容器与企业存储的结合思考
  • Docker监控以及cAdvisor和Prometheus监控工具的对比
  • ​有关Docker的八个令人难以置信的事实
  • ​部署 Docker 前必须问自己的四个问题
  • 程序猿,千万别说你不了解Docker!
  • 将要改变IT世界的的docker技术是什么?
  • Docker支持更深入的容器日志分析
  • Docker宣布支持Windows 10和Azure Windows Server
  • Docker 1.12.0到底有哪些不同之处
  • 云计算之Docker容器技术如何落地?
  • Docker v1.12.0-rc5 普通版实验版本下载,高级容器引擎
  • 针对Docker容器的监控指标
  • ​Docker 的步伐:DevOps 与 OS 化
  • php开源软件 iis7站长之家
  • ​什么是Docker以及docker的 诞生技术演进
  • ​Docker v1.12.1-rc1各种版本发布下载,高级容器引擎
  • ​Docker 1.12.0 改进了服务的负载均衡参数
  • Windows下Docker应用部署相关问题详解
  • Docker1.12 引擎使用体验 ​
  • Docker官方镜像将会使用Alpine Linux替换Ubuntu
  • ​Windows Server 2016提供Docker原生运行的企业级支持
  • ​传统应用的docker化迁移
  • Docker携手Windows Server
  • Docker扁平化网络设计与实现
  • Plesk 中操作和设置 Docker 容器
  • 如何通过 Docker 在 Linux 上托管 .NET Core
  • Docker 1.12.4应用容器引擎发布及下载地址
  • Docker v1.13.0 应用容器引擎正式版发布及下载地址
  • docker源码分析之容器日志处理与log-driver实现
  • 如何在win7,win8下面启动docker
  • win7,win8安装Docker具体过程
  • win7, win8安装docker需要了解的概念
  • win7,win8安装docker的依赖条件
  • Docker Toolbox 介绍
  • Arch下面安装启动及删除docker介绍
  • Debian 7(Wheezy)下面如何安装docker
  • Debian 8(Jessie )下面如何安装docker
  • 红帽RHEL下如何删除docker详细步骤介绍
  • 红帽RHEL下面设置docker服务自动启动
  • linux下不使用sudo命令执行docker的操作步骤
  • 红帽redhat下通过脚本和yum安装docker容器引擎的详细步骤
  • 红帽RHEL下安装docker依赖性检查
  • Ubuntu Vivid 15.04 下面安装docker的详细步骤
  • Ubuntu Trusty 14.04 (LTS) 下面安装docker及依赖关系检查
  • Ubuntu Raring 13.04 和 Saucy 13.10 (64 bit)下面安装docker
  • Ubuntu Precise 12.04 (LTS) (64-bit)下面安装docker
  • Docker支持的安装方式
  • 通过docker ps命令检查运行中的docker镜像
  • 关于docker入门教程
  • 通过docker search命令搜索可用docker镜像
  • 在docker容器中运行hello world!
  • 在docker容器中通过apt-get安装新的程序
  • 通过docker commit命令保存对docker容器的修改
  • 通过docker run命令运行新的docker镜像
  • 准备学习docker: docker version命令查看版本
  • 什么是Docker?Docker通常用于如下场景
  •  
    当前位置:  教程>docker中文入门学习手册

    OpenStack与Docker集成:使用openstack管理docker

     
        发布时间:2017-2-20  


        本文导语: OpenStack与Docker集成:使用openstack管理dockerAgenda一些有利于理解的原理高密度容器下网络设计的主要挑战Neutron L2pop特性Open questions网络虚拟化技术演进基本思想数据包从虚拟机到物理机的路径是:虚拟机进程(用户空间) -- 虚拟TAP...

    OpenStackDocker集成:使用openstack管理docker

    Agenda

    网络虚拟化技术演进基本思想

    virtio,vhost,vhost-user|snabb,openonload


    物理网卡的发展

    • VMDQ将原来VMM中L2 virtual switch实现的队列功能通过硬件实现, 软件交换机无需排序路由操作

    • SR-IOV更彻底,将二层交换的功能也通过硬件实现,并且创建不同的虚拟功能(VF)的方式,呈现给虚机的就是具有独立的中断号的物理网卡,因为虚机直接和物理网卡通信,不需要经过软件交换机, 虚机与VF之间通过DMA传输

    内核态协议 & 用户态协议栈

    • 协议栈的主要处理开销:中断处理、内存拷贝、系统调用、协议处理

    • 千兆万兆网络出现后,更加频繁的硬件中断、软中断及上下文切换都会占据大量的CPU周期。

    • 传统协议栈针对通用性设计,区分内核空间和用户空间,应用无法直接访问协议栈的地址空间,因此协议栈的安全性较高。有数据表明,在Linux协议栈中,数据包通过socket从内核缓冲区复制到用户空间的时间占到了整个数据包处理时间的57.1%。

    • 系统调用是内核态向用户态提供的一组API集,一般通过软中断实现,会产生较大的上下文 开销。

    • 协议处理,耗时主要包括:校验和计算,定时器管理,IP分片/重组,可靠传输机制,拥塞控制等。

    操作系统 OSv, CoreOS, Ubuntu Core

    • 单内核减小IPC调用,每个CPU核上单线程

    • 最小化系统,去掉Shell, 去掉不必要的库,去掉不必要的开机服务,减小容器共享内核的攻击面

    • 使用systemd/upstart加速启动,认为shell拖累启动

    • 基于容器技术

    • 云操作系统image文件小,应用的文件也小,有的可以delta分发

    • 装载容器,在应用分发上做文章, Ubuntu Core使用了基于事务的包管理工具snappy, 且使用了微内核由vendor来实现snappy应用

    • 升级方面,Ubuntu Core基于事务升级,要不升级成功,要不升级不成功但不影响原有系统;CoreOS更绝采用两个root文件系统,有一个用于升级

    • 配置管理方面,OSv是零配置无状态;CoreOS使用共享的etcd;Ubuntu Core采用Snappy打包

    • 安全方面,容器间的共享的内核受到攻击后对容器威胁很大,Ubuntu Core采用apparmor来对程序进行资源的访问控制

    • 内核方面,CoreOS与Ubuntu Core基于Linux内核,OSv无用户空间减少了用户态内核态切换的开销

    • CoreOS实现了HA容器,有点儿入侵了Neutron的地盘啊 :)

    容器,Linux容器(LXC), Docker

    容器的优点:

    • 密度大,启动快,因为它省去了一个操作系统栈,正是这点,给网络设计带来了挑战

    • 容器解偶了应用与操作系统,为应用的分发提供了可能,更适合SaaS。它使用namespace进程资源隔离(IPC,NET,PID,UTS,NS,USER);使用chroot隔离根文件系统;使用cgroup资源限制

    • 所有容器共享相同的内核,便于维护。但同时也带来了安全性风险

    容器的缺点:
    • 容器共享内核带来了安全性风险,所以云OS应该是最小化操作系统,减小攻击面

    • 隔离性还不如虚机,如netlink暂时不支持namespace所以导致不支持iSCSI存储

    • 在线迁移,所以LXD要在LXC上再添加这样更等价虚机的功能

    • 更高密度带来的网络挑战

    Docker基于LXC基础上继续:
    • 封装REST API,交叉式Shell, 日志功能

    • 采用CoW创建根文件系统,让镜像变得Delta,部署极其快捷

    • 类似于OpenStack的镜像及调度管理

    • 应用分发机制

    应用分发机制,以 Ubuntu Core为例


    高密度容器带来的网络挑战

    • 没有控制平面,高密度直接要求必须禁掉ARP广播,改由地址学习。neutron的数据库是一个学习的好地方,neutron l2pop特性能允当控制平面。

    • 高密度要求网络资源必须充足,像limit, namespace, neighbor table size, vlan等,Linux是一个通用的操作系统,不是为云设计的

    • 容器的快速启动特性要求dnsmasq支持HUP信号持HUP信号

    ...


    快速搭建可运行的环境 - devstack

    计算节点 (LXC+ OVS)

    网络节点

    网络拓扑图

    Neutron L2pop



    • 本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
      本站(WWW.)站内文章除注明原创外,均为转载,整理或搜集自网络.欢迎任何形式的转载,转载请注明出处.
      转载请注明:文章转载自:[169IT-IT技术资讯]
      本文标题:OpenStack与Docker集成:使用openstack管理docker
    相关文章推荐:


    站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3