前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在Docker平台和Moby项目中加入对Kubernetes的支持

在Docker平台和Moby项目中加入对Kubernetes的支持

作者头像
Techeek
发布2018-01-12 15:14:04
7440
发布2018-01-12 15:14:04
举报
文章被收录于专栏:云计算云计算

Docker 平台正在集成对 Kubernetes 的支持,以便 Docker 的客户和开发人员可以选择使用 Kubernetes 和 Swarm 来编排容器的工作负载。注册并访问测试版可查看详细的博客文章,以了解我们是如何将 Kubernetes 接入的:

Docker 是一个介于应用程序和基础架构之间的平台。开发者和 IT 运维人员可以通过在 Docker 上构建应用程序,来获得自由性和灵活性。这是因为 Docker 运行在任何企业部署应用程序的位置——本地(包括 IBM 大型主机,企业 Linux 和 Windows)以及云端。当一个应用程序被容器化,它就很容易重新构建,重新部署和移动,甚至可以运行在横跨本地架构与云架构之间的混合架构上。

Docker 平台由诸多组件组合而成,主要分为四个层次:

  • 满足容器行业标准的容器,实现了 OCI(开放容器标准)。
  • Swarm 将一组节点进行编排而成为一个分布式系统。
  • Docker 社区版(Community Edition)为开发人员提供了一个简单的用于构建和发布容器应用程序的工作流程,它具有应用组合,映像构建与管理等功能。
  • Docker 企业版(Enterprise Edition),主要管理终端安全软件供应链,并在生产环境中运行容器。
Docker平台的四个层次.jpg
Docker平台的四个层次.jpg

这四个层次是由上游组件组合而成,而上游组件则是开源 Moby 项目的一部分。

Docker 的设计理念始终是提供选择和灵活性。这对于那些在现有 IT 系统中集成了 Docker 的客户来说非常重要,而这也是 Docker 能够与已部署的网络,日志,存储,负载均衡器和 CI / CD(持续集成/持续交付) 系统配合使用的原因。对于所描述的这些(甚至更多),Docker 依赖于行业标准协议或发布和记录的接口,并且 Docker 企业版为它们提供了合理的默认值,不过这些默认值可以替换为已有系统的客户的认证第三方选项,或者更好的另一种解决方案。

2016年,Docker 通过 SwarmKit 项目为平台添加了编排。在过去的一年里,我们收到了很多关于 Swarm 的积极的反馈:它很容易设置,具有可扩展性,并且还是安全的。

我们也得到了一些其它反馈意见,一些用户虽然很喜欢端到端容器管理的集成 Docker 平台,但他们希望能够使用其他协调器(如 Kubernetes)来进行容器调度。因为他们已经设计好了在 Kubernetes 上工作的服务,或者是因为 Kubernetes 具有他们正好需要的特定功能。这也就是为我们要在 Docker 企业版和 Docker for Mac 和 Windows 中添加对于 Kubernetes 支持以作为编排选项(与 Swarm 一起)的原因。

由Swarm与Kubernetes共同驱动的Docker.png
由Swarm与Kubernetes共同驱动的Docker.png

当前,我们也在努力研究一些创新组件,它们将使得 Docker 用户可以更轻松地使用 Kubernetes 编排来本地部署 Docker 应用程序。比如说,用户可以通过使用 Kubernetes 扩展机制(如自定义资源和 API 服务端聚合层),即将推出的带有 Kubernetes 支持的 Docker 版本将允许用户将自己的 Docker Compose 应用程序部署为原生 Kubernetes 的 Pods 和 Services。

在 Docker 平台的下一个版本中,开发人员可以在工作站上直接使用 Kubernetes 构建和测试用于生产的应用程序。而操作系统可以拥有 Docker 企业版的所有优势——安全的多租户,映像扫描和基于角色的访问控制。同时还能运行经由 Kubernetes 或 Swarm 编排的应用程序。

我们加入到 Docker 中的 Kubernetes 版本将会是大家所熟悉的 vanilla Kubernetes,其直接来源于原生云计算基金会(CNCF,Cloud Native Computing Foundation)。它不是一个复刻,也不是过时的版本,更不会任何形式的包装与限制。

通过 Moby 项目,Docker 去年一直在努力为 Kubernetes 做出贡献并适配它。我们一直致力于为容器运行时使用容器项目与 cri(Container Runtime Interface,容器运行时接口)容器项目,并在 InfraKit 上创建、管理 Kubernetes 的安装,以及在 libnetwork 上进行网络覆盖的工作。更多示例与详细信息,您可以请参阅 Moby 项目博客文章

Docker 和 Kubernetes 有着很多共同的血统:它们是使用相同的编程语言编写而成,并且有重叠的组件,贡献者和理念。我们的 Docker 期待着将对 Kubernetes 支持融入到我们的产品,并进入到我们正在开发的开源项目中。我们迫不及待地想与 Kubernetes 社区进行合作,以使容器和容器编排变得更加强大和易于使用。

支持 Kubernetes 的 Docker 企业 Beta 版(对于支持的基础设施)和社区 Beta 版(Mac 和 Windows)将在今年晚些时候推出。您可以注册,以便在产品推出时及时收到通知

虽然我们在 Docker 中添加了编排选项 Kubernetes,但是我们依然会致力于 Swarm,以及依赖 Swarm 和 Docker 的客户和在生产中大规模运行关键性应用程序的用户。如果您需要详细了解 Docker 是如何集成 Kubernetes 的,可以查看 DockerCon EU 上的“Docker 新功能介绍”和“Gordon 的私密会话” 。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档