什么是容器,为什么需要它们?

能为你的容器做什么?这里有10个左右的应用程序容器技术的常见问题,在一般情况下,和码头工人,尤其如此。

思想库

搬运工人几年前,它在it界引起了轰动。

Docker提供的应用程序容器技术承诺将改变IT操作的执行方式,就像几年前的虚拟化技术一样。

下面是与此相关的技术的10个最常见问题列表。

什么是容器,为什么需要它们?

集装箱是如何得到一个计算环境转移到另一个软件时,运行可靠的解决问题的办法。这可能是从开发人员的笔记本电脑的测试环境,从登台环境到生产,也许是从一台物理机器在私有云或公共云数据中心的虚拟机。雷竞技电脑网站

Docker的创建者Solomon Hykes说,当支持的软件环境不一样时,就会出现问题,“您将使用Python 2.7进行测试,然后在生产环境中运行Python 3,就会发生一些奇怪的事情。或者,您将依赖于某个版本的SSL库的行为,然后安装另一个版本的SSL库。你可以在Debian上运行测试,在Red Hat上运行产品,然后各种奇怪的事情就会发生。”

而且它不只是不同的软件,可以有所作为,他补充说:“网络的拓扑结构是不同的,或安全策略和存储可能会有所不同,但该软件已在其上运行。”

如何集装箱尝试解决这个问题呢?

简单地说,一个容器由一个完整的运行时环境组成:一个应用程序,加上它的所有依赖项、库和其他二进制文件,以及运行它所需的配置文件,打包到一个包中。通过封装应用程序平台及其依赖项,OS发行版和底层基础设施之间的差异就被抽象出来了。

这听起来像是虚拟化。有什么区别呢?

随着虚拟化技术,即可以被传递的包是一个虚拟机,它包括一个完整的操作系统以及应用程序。运行三个虚拟机在物理服务器将有一个管理程序,并在它上面运行三个独立的操作系统。

相比之下,与Docker一样运行三个容器化应用程序的服务器只运行一个操作系统,每个容器与其他容器共享操作系统内核。操作系统的共享部分是只读的,而每个容器都有自己的挂载(即,访问容器的一种方式)用于写入。这意味着容器要比虚拟机轻得多,使用的资源也少得多。

有什么区别这是否在实践中?

一个容器的大小可能只有几十兆字节,而拥有自己的整个操作系统的虚拟机的大小可能是几千兆字节。

因此,一台服务器可以承载的容器比虚拟机多得多。虚拟机可能需要几分钟来启动它们的操作系统并开始运行它们所承载的应用程序,而容器化的应用程序几乎可以立即启动。

如果容器共用一个操作系统,如何安全可他们呢?

的共识是,容器没有安全的,因为虚拟机。其理由是,如果有在内核中的一个漏洞,它可以在该共享它的容器提供了一种方式(尽管SELinux的可以提供帮助。)这也是一个管理程序没错,但因为管理程序提供远不功能比一般的Linux内核(这通常实现文件系统,网络,应用过程控制等),它提出了一个更小的攻击面。

总之,容器通常不能提供与硬件虚拟化相同的隔离级别。

Docker和容器之间有什么区别?

Docker已经成为容器技术的同义词,因为它在普及容器技术方面是最成功的。但是容器技术并不是新技术:它已经以以下形式构建到Linux中了LXC近10年,及类似的操作系统级虚拟化也得到了监狱的FreeBSD,AIX工作负载分区和Solaris容器提供。

今天泊坞窗是不是在城里Linux的唯一的游戏。一个显着的替代方案是RKT的命令行工具运行产生的应用程序容器CoreOS。Rkt能够处理Docker容器以及符合its的容器应用程序容器图像规范

用于发射RKT一个原因是码头工人已变得太大而失去了它的简单性,根据CoreOS首席执行官Alex Polvi。“码头工人正在建设的工具推出云服务器,系统集群,以及广泛的功能:构建映像,运行图片,上传,下载,最终甚至覆盖网络,所有的编译成一个整体的二进制文件服务器上,主要以root运行”他

CoreOS的首席倡导者Kelsey Hightower补充说,应用程序容器图像比Docker图像更安全,因为它们是由它们的创建者签名的。他说:“我认为用户想要签名,就像苹果在AppStore里给应用程序签名一样。”“当你使用rkt并获取一个应用程序容器图像时,你可以在运行它之前决定是否信任开发者。Rkt也可以运行Docker图像,但它们不会总是被签名。”

什么操作系统应该泊坞窗和RKT上运行?

LXC(以及Docker自己的容器技术libcontainer,它取代了LXC)是基于Linux的,因此任何具有相当现代的内核(如3.8或更新的内核)的Linux发行版都可以在x64硬件上运行它们。

大多数Linux发行版是不必要的功能,如果重达到预定可使用是运行容器。这并不奇怪,因为许多Linux发行版也出现了其已为特别设计运行的容器。一些例子包括CoreOS,红帽项目原子,Canonical的活泼的Ubuntu,VMware的项目光子

是否有任何的商用Linux容器解决方案?

是的。其中包括:

  • 企业Docker订阅- 一个捆绑解决方案,包括泊坞枢纽企业,多克尔引擎和商业支持订阅。
  • CoreOS构造-一个集成的CoreOS软件栈,包括一个用于工作流程和仪表板的管理控制台,一个用于构建和共享Linux容器的集成注册表,以及用于自动化部署和自定义滚动更新的其他工具,以及谷歌的Kubernetes容器管理平台。

如果我是一个Windows商店会发生什么?我仍然可以使用的容器?

微软已经宣布它会带来泊坞窗容器技术的Windows Server,以及推出的Windows Server容器,将在Windows Server上运行。

在Windows Server的“瘦身”版本,称为纳米服务器,它是专门设计来运行的容器也将被介绍。在概念上的Windows Server 2008的Windows Server Core的相似,这将是关于一个典型的Windows服务器安装的规模的5%。

容器最终会取代完全成熟的服务器虚拟化吗?

如果只是因为虚拟机提供了比容器更好的安全性,那么短期内不太可能出现这种情况。

用于编排大量容器的管理工具也远不如VMware vCenter或Microsoft的System Center这样的软件那样全面,它们可用于管理虚拟基础设施。

虚拟化和容器也可能被视为互补技术,而不是竞争技术。这是因为容器可以在轻量级虚拟机中运行,以增强隔离性和安全性,而且硬件虚拟化使管理支持容器所需的网络、服务器和存储等硬件基础设施变得更加容易。

“大多数人都没有的愿望,管理硬件,所以他们把它到VMware和软件进行管理,”海托华说。“集装箱改变什么。你可以使用的容器,如果你不想管理硬件,那么你使用虚拟化一样。”

这个故事,“有什么容器,你为什么需要他们?”最初由出版首席信息官

加入网络世界社区有个足球雷竞技app脸谱网LinkedIn对最重要的话题发表评论。
有关:

版权所有©2015年Raybet2

IT薪资调查:结果是