微信号:infoqchina

介绍:有内容的技术社区媒体

微软宣布Microsoft Azure支持Kubernetes,并发布可视化工具Kubernetes Visualizer

2014-09-04 21:11 InfoQ

最近一段时间,微软在容器技术领域动作频频。微软开放技术公司先是于69日在DockerCon上宣布支持在Microsoft Azure虚拟机上部署Docker,又在710日宣布与GoogleDocker开展合作,将Kuberneteslibswarm引入Azure828日,它兑现承诺,宣布开发者已经可以在Azure上使用Kubernetes管理Docker容器。

Kubernetes是一个开源的、用Go语言开发的容器集群管理工具,其理念和架构体现了谷歌多年来设计和构建大规模集群管理系统的经验。它主要包含如下特性:

  • 创建容器,然后发布到Azure存储

  • 使用Azure存储或者DockerHub上的容器镜像部署Azure集群

  • 配置Azure集群

  • 在现有集群上更新Kubernetes应用程序

  • 取消Azure集群部署

这些特性实现了复杂应用程序集群的部署和管理,但要做到这一点,还需要理解Kubernetes中引入的一些概念:

  • 容器:一个可移植的轻量级运行时环境。

  • Master:管理一个或多个Minion,提供应用程序的整体视图。

  • Minion:一台虚拟机,用于运行Docker容器及终端用户工作负载。一个Minion运行一个或多个Pod

  • Pod:运行在单个Minion上的一个单独的应用程序或一个应用程序的一部分。

  • 标签:Pod用标签进行组织。每个Pod具备一个key/value键值映射的标签。

  • 复制控制器:管理失败和扩展,确保数据中心在任何时间都可以提供一定数量的Pod部署。

在宣布Azure支持Kubernetes的当天,微软开放科技还在GitHub上发布了Kubernetes Visualizer的源代码。这是一个用Node.js编写的Web应用程序,用于监控KubernetesAzure上管理Docker时的行为,将上述概念直观地展示出来,如下图所示:

Kubernetes Visualizer中,用户输入名称和副本数量后,点击“创建”按钮就可以更新JSONPod模板”。该模板定义了与容器相关联的Pod,每个容器中应该运行的镜像,以及为外界提供服务所需要的端口映射。由于Visualizer的目的是帮助理解Kubernetes,所以用户可以点击“Pod源代码”和“RC源代码”对自动生成的Pod模板进行编辑。另外,Visualizer会根据Pod标签中的名称为其设定颜色,每个名称不同的Pod都会有一个不同的颜色。

在摆弄KubernetesDocker的过程中,Azure团队发现,Docker会缓存Pod创建过程,从而加速容器重复创建。此外,他们还对集群进行了压力测试,发现Kubernetes一次可以很好地处理副本数量为3050的创建请求,而且副本数量可以增加到200

要了解更多信息,可以观看该工具的演示视频,或者从GitHub上下载源代码并在自己的Azure集群上运行它。


 
InfoQ 更多文章 Facebook如何实现PB级别数据库自动化备份 学术派Google软件工程师Matt Welsh谈移动开发趋势 Spotify为什么要使用一些“无聊”的技术? 妹纸们放假了,汉纸们做啥? 大多数重构可以避免
猜您喜欢 【跟着妹子学编程】第十讲,PHP教程 树莓派专用Chromium OS 华为余承东:中国智能机行业面临重新洗牌 一次皆大欢喜的程序员跳槽加薪 虚拟化平台的选择:开源软件 or 商业软件?