我已经在 Docker 工作两年多了,参与过每个版本的 Docker 企业版 (前称 Docker Datacenter),在此之前还曾经有过一个 Docker 企业版 (EE)。我对这次的新版本比以往任何版本都更感兴趣。
此版本的 Docker EE 有几个新功能,可以帮助您简化应用程序(无论是传统应用程序还是云端)的管理,可以随时随地运行,包括云端或数据中心、虚拟机或物理机、Linux 或 Windows,现在还支持 IBM Z 大型机。
如果要讨论所有的新功能,可能会需要较长时间。因此,我将只讨论 Docker EE 17.06 中我最喜欢的 3 个功能。
混合操作系统集群
Docker 和 Microsoft 去年秋季推出了对 Windows Server 容器的支持。这是一个重要的里程碑,帮助 Docker 实现了对整个数据中心内所有应用程序的支持。
此次最新版本中,Docker 进一步扩展了混合操作系统的功能:IT 管理员现在可以构建和管理由 Linux、Windows Server 2016 和 IBM Z 大型机组成的集群 — 在同一管理界面中。这意味着您可以从 Docker UCP 管理由 Windows 和 Linux 组件组成的应用程序。例如,您可以在 Linux 上运行 Web 前端,并将其连接到在 Windows 上运行的 Microsoft SQL Server。
Docker EE 17.06 是第一个“容器即服务”平台,为 Windows Server 容器提供生产级的整合管理和安全性支持。
增强的基于角色的访问控制 (RBAC)
Docker EE 始终具有 RBAC 功能。在 Docker EE 17.06 中,我们增强了这些功能,以进一步丰富管理员对集群资源访问进行管理的手段。
为了更好地理解 Docker EE 17.06 中 RBAC 的工作原理,我尝试定义四个概念:
自定义角色:角色实质上是一组权限,用于定义某人可以对集群资源执行的操作。与以前的版本一样,Docker EE 17.06 具有一组预定义的角色 (View Only、Full Control 等)。此版本中的新增功能是管理员能够从几十个单独的权限中进行选择,用于自定义角色。
注意:此图仅显示了 Docker EE 17.06 中所有各种操作权限的一小部分。
简而言之,角色是指某人在 Docker EE 集群中可以做什么。
对象:对象定义谁可以执行某些任务。对象可以是 Docker EE 用户、团队或组织。
集合:集合是 Docker EE 中的一个新概念。它们为管理员提供了一种将集群资源(服务、容器、卷、网络、机密信息等)组合在一起的机制。管理员将特殊的 Docker 标签 (com.docker.ucp.access.label) 分配给特定资源,以定义资源所属的集合。
嵌套的集合将从其父集合继承权限。您可以将集合理解为某人可以在什么地方执行任务。
Grant:Grant 定义了谁(对象)可以在什么地方(集合)做什么(角色)。例如,您可以创建一个 grant,指定 "Dev Team" 对 "/Production" 集合中的资源获取 "View Only" 访问权限。
除了这些新功能外,Docker EE 17.06 高级版还将 RBAC 的概念扩展到节点。因此,现在管理员可以在团队之间细分集群服务器,并确保这些专用资源只能由已被明确授予权限的个人访问。这些功能为管理员提供了几乎无限的灵活性,以确保他们的集群资源的安全。
自动镜像升级和不可变的存储库
这在技术上是两个功能,但它们都很棒:自动镜像升级和不可变的存储库。这两种功能允许管理员进一步确保 Docker 镜像的完整性。
自动镜像升级可以让 IT 人员定义一些条件,当符合这些条件时,会自动将镜像从一个 Docker Trusted Registry (DTR) 存储库升级到另一个。
例如,今天您可能会创建一个新版本的应用程序,执行 QA,通过 QA 后,您手动将其升级到生产存储库。QA 过程可能包括一些步骤,如扫描漏洞或需要特定许可证的组件。
通过 Docker EE 17.06,您可以将此过程的各个部分自动化。您可以根据镜像标记、镜像中的漏洞数、某些软件包或在镜像中找到的许可证类型来定义条件。如果满足这些条件,镜像将自动从一个存储库升级到另一个。
此外,您还可以应用多个策略来创建复杂的自动升级方案。
不可变的存储库与镜像升级 (以及现有的安全扫描和镜像签名功能) 一起使用, 帮助保护您的 Docker 镜像的完整性。顾名思义,不可变的存储库可以让管理员保护给定存储库中的镜像标记不受更改。
例如,有人用给定的标记推送镜像的某个版本,然后另外一个人使用相同的标记推入不同的版本来覆盖该镜像,此功能可以避免上述场景发生。使用不可变的存储库,可以确保您的镜像不会被意外 (或有意) 覆盖。
保护和管理更多应用程序
我说过我要讨论的是最喜欢的三个新功能,但我必须补充一下我还喜欢的其他新功能:Docker 安全扫描现在支持 Windows 镜像。Docker 安全扫描作为 Docker EE 高级版的一部分,当镜像被推送到 DTR 时,可以自动扫描镜像的常见漏洞。以前,此功能只支持 Linux 镜像。现在,Docker EE 17.06 高级版也支持 Windows 镜像!
好了,今天我要分享的 Docker EE 17.06 新功能就这些(三个,四个,还是五个呢?)
感谢您抽出时间了解 Docker EE 17.06 的新功能。就像我说的,还有很多其他的新功能。例如,我没有讨论多阶段构建以及新的 UI 界面。
我希望您读完这篇文章后,跟我一样对 Docker EE 17.06 充满期待。
文章转载自:Docker官方公众号,原文链接
Docker 企业版在中国由我们的战略合作伙伴阿里巴巴提供
联系阿里云销售人员获取 Docker 企业版,或访问阿里云市场在线购买