- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
容器技术之Docke
* * * * * * * * * * * * * * * * Docker命令 docker info sudo?docker?pull?busybox docker run busybox /bin/echo Hello Docker sample_job=$(docker run -d busybox /bin/sh -c while true; do echo Docker; sleep 1; done) Docker优点 快 :运行时的性能可以获取极大提升(经典的案例是提升97%),管理操作(启动,停止,开始,重启等等) 都是以秒或毫秒为单位的。 敏捷:像虚拟机一样敏捷,而且会更便宜,在bare metal(裸机)上布署像点个按钮一样简单。 灵活:将应用和系统“容器化”,不添加额外的操作系统, 轻量:你会拥有足够的“操作系统”,仅需添加或减小镜像即可。在一台服务器上可以布署100~1000个Containers容器。 便宜:开源的,免费的,低成本的。 Docker的缺点 主要体现在安全性 Docker本身安全隔离是基于Linux内核的Namespace/cgroup这些容器隔离和资源的组调度机制的,所有进程运行在同一个内核中,一旦有什么Bug被利用,突破这层隔离,就会危及到宿主机和其他容器 还缺少对于防止一个容器获取过量的资源而影响到其他应用方面的保护 其他 Docker支持Unix/Linux操作系统,不支持Windows或Mac(即使可以在其上安装,不过也是基于Linux虚拟机的) Docker还没有可视化界面,都是命令行指令 容器技术+虚拟技术 一种技术不会取代另一种技术,它们将共存并建立彼此之间相互的价值。 * * * * * * * * * * * * * * * * * * * * * * * 容器技术之Docker 任梓涵 24320151153214 提纲 容器技术的基本概念 容器技术的历史 容器技术之Docker 什么是容器 容器 容器就是一个认为只有其本身在运行状态的linux程序,只服从用户指定的命令 容器程序有自己的IP地址 一个可访问网络的独立设备 容器化VS虚拟化 虚拟机 容器化VS虚拟化 容器 提纲 容器技术的基本概念 容器技术的历史 容器技术之Docker 最早的OS级虚拟化 Chroot:改变根目录 1982年出现 只提供有限的文件系统隔离,无任何其他隔离手段 不安全,有手段可以逃离设定的根目录访问host pivot_root:改变根文件系统 2000年,Linux内核版本2.3.41 没有chroot的安全问题 商用容器技术的出现 Virtuozzo 2000年 由Swsoft(现在的Paralles)开发 Linux-VServer 2001年 应用场景 Virtual Private Server 开源的OpenVZ OpenVZ(open virtuozzo) 2005年发布 开始推动OpenVZ进Linux 内核主线 内核主线的容器技术 Namespace+Cgroup Namespace 程序运行环境的隔离 基本原理:将内核中的全局变量改为per-namespace变量 Cgroup 计算资源的QoS:CPU、内存、磁盘IO、网络IO Namespace Namespace的类别 Cgroup Task: 一个进程 Control group:控制族群,按照某种标准划分的进程组 Hierarchy:层级,control group可以形成树形的结构,有父节点,子节点,每个节点都是一个control group,子节点继承父节点的特定属性 Subsystem:子系统,就是资源控制器 Cgroup子系统 子系统介绍 blkio 设置限制每个块设备的输入输出控制。例如:磁盘,光盘以及usb等等。 cpu 使用调度程序为cgroup任务提供cpu的访问。 cpuacct 产生cgroup任务的cpu资源报告。 cpuset 如果是多核心的cpu,这个子系统会为cgroup任务分配单独的cpu和内存。 devices 允许或拒绝cgroup任务对设备的访问。 freezer 暂停和恢复cgroup任务。 memory 设置每个cgroup的内存限制以及产生内存资源报告。 net_cls 标记每个网络包以供cgroup方便使用。 ns 名称空间子系统。 perf_event 增加了对每group的监测跟踪的能力 Linux容器虚拟技术(LXC) Linux Container 通过虚拟化操作系统的方式来管理代码和应用程序 轻量级虚拟化 隔离进程和资源 不需要提供指令解释机制 资源孤立分组 由单个操作系统管理的资源划
文档评论(0)