最近一段时间,微软在容器技术领域动作频频。微软开放技术公司先是于6月9日在DockerCon上宣布支持在Microsoft Azure虚拟机上部署Docker,又在7月10日宣布与Google和Docker开展合作,将Kubernetes和libswarm引入Azure。8月28日,它兑现承诺,宣布开发者已经可以在Azure上使用Kubernetes管理Docker容器。
Kubernetes是一个开源的、用Go语言开发的容器集群管理工具,其理念和架构体现了谷歌多年来设计和构建大规模集群管理系统的经验。它主要包含如下特性:
这些特性实现了复杂应用程序集群的部署和管理,但要做到这一点,还需要理解Kubernetes中引入的一些概念:
在宣布Azure支持Kubernetes的当天,微软开放科技还在GitHub上发布了Kubernetes Visualizer的源代码。这是一个用Node.js编写的Web应用程序,用于监控Kubernetes在Azure上管理Docker时的行为,将上述概念直观地展示出来,如下图所示:
在Kubernetes Visualizer中,用户输入名称和副本数量后,点击“创建”按钮就可以更新JSON“Pod模板”。该模板定义了与容器相关联的Pod,每个容器中应该运行的镜像,以及为外界提供服务所需要的端口映射。由于Visualizer的目的是帮助理解Kubernetes,所以用户可以点击“Pod源代码”和“RC源代码”对自动生成的Pod模板进行编辑。另外,Visualizer会根据Pod标签中的名称为其设定颜色,每个名称不同的Pod都会有一个不同的颜色。
在摆弄Kubernetes和Docker的过程中,Azure团队发现,Docker会缓存Pod创建过程,从而加速容器重复创建。此外,他们还对集群进行了压力测试,发现Kubernetes一次可以很好地处理副本数量为30到50的创建请求,而且副本数量可以增加到200。
要了解更多信息,可以观看该工具的演示视频,或者从GitHub上下载源代码并在自己的Azure集群上运行它。 本文转载自:微信公众账号 - InfoQ,版权归原作者所有! |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|