|
|
|
|
移动端

想要轻松扩展容器架构,这7款Kubernetes工具帮助你

最初由谷歌开发的容器编排工具Kubernetes已成为敏捷团队和DevOps团队的重要资源。作为一款开源工具,Kubernetes正成为自成一体的生态系统,支持它的其他工具纷纷在开发出来。其中一些直接来自Kubernetes,另一些本身就是开源项目。

作者:布加迪编译来源:51CTO|2018-03-13 10:00

【新品产上线啦】51CTO播客,随时随地,碎片化学习

想要轻松扩展容器架构,这7款Kubernetes工具帮助你

【51CTO.com快译】最初由谷歌开发的容器编排工具Kubernetes已成为敏捷团队和DevOps团队的重要资源。作为一款开源工具,Kubernetes正成为自成一体的生态系统,支持它的其他工具纷纷在开发出来。其中一些直接来自Kubernetes,另一些本身就是开源项目。

Kubernetes在官网(https://kubernetes.io/docs/tools/)上列出了一批原生开源工具,不过我们认为应更深入地探讨每个工具。其中一些工具受到Kubernetes初学者的青睐,另一些工具应该等你深入了解了该系统的工作机理再使用也不迟。

如果你准备好尝试采用这些工具,Kubernetes提供了全面的说明文档帮助你。我们附有所有相关页面的链接。

准备提升你的Kubernetes生活了吗?开始吧!

一、原生工具

1.Kubeadm

Kubeadm是命令行工具,让你能够在物理服务器、云服务器或虚拟机上面轻松配置一个安全的Kubernetes集群,从而可以轻松安全地启动Kubernetes集群。Kubeadm创建的集群旨在通过Kubernetes一致性测试(http://blog.kubernetes.io/2017/10/software-conformance-certification.html)。

Kubeadm既方便新用户试用并更深入地了解Kubernetes,又方便现有用户测试应用,并轻松创建集群。它适合测试Kubernetes集群的功效,又为团队提供了决定采用Kubernetes后所需的可扩展性。

2.Kubectl

Kubectl是面向Kubernetes的命令行工具,用于控制Kubernetes集群管理器。Kubectl中有几个子命令可用于更精确的集群管理控制,比如在不同的API版本之间转换文件或者执行容器命令。子命令的完整列表可以在这里(https://kubernetes.io/docs/reference/generated/kubectl/kubectl/)找到。

3.Kubefed

Kubernetes的另一个有用的命令行工具是Kubefed命令。该工具可帮助你管理联合集群。借助Kubefed,你可以部署新的Kubernetes集群联合控制平面。你还可以将集群添加到现有的联合控制平面,或者从现有的联合控制平面删除集群。该工具仅在Kubernetes版本1.5及更高版本中可用。

阅读本指南(https://kubernetes.io/docs/tasks/federation/set-up-cluster-federation-kubefed/#prerequisites),即可借助Kubefed让集群联合机制运行起来。

4.Minikube

Minikube是用于开发和测试的理想的Kubernetes工具。对于刚开始使用Kubernetes的用户来说,它也是另一款出色的工具。Minikube便于在本地运行单节点的Kubernetes集群,用于开发和测试。Minikube支持众多的Kubernetes功能,包括DNS、NodePorts、ConfigMaps及Secrets、Dashboard、Container运行时环境(Docker、rkt和CRI-O)、支持CNI和ingress。

启用Minikube是个简单的过程。遵照这篇逐步介绍的指南(https://kubernetes.io/docs/tasks/tools/install-minikube/),即可快速轻松地安装。

5.Dashboard

Kubernetes Dashboard是一个非常有用的集群管理工具。你可以从基于Web的仪表板,将容器化的应用程序部署到Kubernetes集群中,并排查故障。一旦部署完毕,你可以全面管理集群及其所有资源。

一旦启动并运行,Dashboard让你可以全面查看所有运行中的应用程序。你还可以修改任何的Kubernetes资源。这些资源可以是DaemonSets、Deployments、Jobs或你使用的其他任何资源。

就像Retrace(https://stackify.com/retrace/)让你清楚地了解应用程序那样,Dashboard让你也可以查看所有的Kubernetes资源,找出可能发生的任何错误。

想要轻松扩展容器架构,这7款Kubernetes工具帮助你

这是Kubernetes Dashboard的一个示例,从Kubernetes工具页面(https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard)截取。

二、第三方工具

第三方Kubernetes工具不是由Kubernetes自己开发的,但仍得益于一个繁荣的社区,为充满激情的开源开发人员提供支持。Kubernetes在官网上对这些工具予以了认可,因而可以像Kubernetes那样信任他们。

1.Helm

Helm是用于管理Kubernetes图表的理想工具。Kubernetes图表其实是软件包,集合了预先配置的Kubernetes资源。这些图表包括两个部分:对软件包的描述和包含Kubernetes清单文件的一个或多个模板。实际上,Helm简化了安装和管理Kubernetes应用程序的工作。

Helm有大量宝贵的功能可帮助DevOps团队顺利运行Kubernetes应用程序。你可以找到使用打包成官方Kubernetes图表的流行软件。一些图表可以在Kubeapps(https://kubeapps.com/)上找到。你甚至可以创建并共享自己的应用程序作为Kubernetes图表,供他人使用。

2.Kompose

对于容器管理方面经验丰富,但不熟悉Kubernetes的开发人员来说,Kompose是个很好的工具。如果在容器方面有经验,你很可能熟悉Docker Compose(https://docs.docker.com/compose/)。Kompose让用户只需点击一下命令,就可以将Compose文件和应用程序顺利地转移到Kubernetes对象。

将Docker Compose文件传输到Kubernetes资源可能并不完全准确,所以在传输后务必仔细核查。不过,使用Kompose进行传输对于Docker Compose老手大有帮助。

三、用Kubernetes做更多的事

Kubernetes在容器和微服务生态系统(https://stackify.com/microservices-containers/)中起到了不可或缺的作用。它让你能够连接和管理任何所需数量的容器,同时开发更敏捷、更安全的应用程序。

一个充满活力而强大的生态系统已围绕Kubernetes系统建立起来,本文介绍的这些工具只是其中的一小部分。随着更多的开发人员采用容器和Kubernetes,预计会有越来越多的工具扩展容器和Kubernetes的功能。

原文标题:7 Kubernetes Tools to Expand Your Container Architecture,作者:JOHN JULIEN 

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

【编辑推荐】

  1. N个免费DevOps开源工具,没用过,至少应该了解!
  2. 进行数据挖掘的8个最佳开源工具
  3. 在Azure中部署Kubernetes容器集群
  4. “看破”各大知名网站所用框架和库,这个开源工具太牛了!
  5. 新开源工具诞生!让C++秒变JavaScript
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

网管员必读—服务器与数据存储(第2版)

本书是在第1版的基础上全面更新、改版而成的,仍然是目前图书市场中唯一一本全面介绍硬件服务器的IT图书。本书针对近两年来所出现的新服务...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊