使Kubernetes变得更好的11种工具
2019/12/17 14:59:08
本文是我们发现的11款主要的Kubernetes配套工具。一些可以补充任何Kubernetes集群,另一些可以满足Kubernetes无法满足的特定需求。
作者:布加迪编译来源:51CTO
【51CTO.com快译】很少有计算平台可以满足所有需求,哪怕是那些功能强大、规模巨大的计算平台。虽然Kubernetes一打开就很有用,但还远远不够。总是能找到默认Kubernetes功能集不尽如人意或完全忽视的用例或需求,前者如数据库支持,后者如持续交付。
这时候更广泛的Kubernetes社区挺身而出,提供了针对这种容器编排框架的诸多附件、扩展件和第三方产品。以下是我们发现的11款主要的Kubernetes配套工具。一些可以补充任何Kubernetes集群,另一些可以满足Kubernetes无法满足的特定需求。
Gravity:易于移植的Kubernetes集群
如果你要将应用程序部署到Kubernetes中,许多应用程序都有Helm图表来引导和自动化该过程。但是如果你想直接拿来Kubernetes集群并将其部署在某个地方该怎么办呢?
Gravity可以为Kubernetes集群、容器注册中心以及运行中应用程序创建快照,名为“应用程序bundle”。bundle只是一个.tar文件而已,可以在Kubernetes运行的任何地方复制集群。
Gravity还确保目标基础架构可以支持与源基础架构同样的行为要求,并确保目标上的Kubernetes运行时环境状况良好。企业版Gravity添加了安全功能,包括基于角色的访问控制以及跨多个集群部署同步安全配置的功能。
Kaniko:在Kubernetes集群中构建容器
大多数容器映像是在容器堆栈外面的系统上构建。不过有时候,你想要在容器堆栈里面执行构建过程,比如在运行中容器里面或在Kubernetes集群上的某个位置。
Kaniko在容器环境中执行容器构建,但不依赖Docker之类的容器守护进程完成其工作。 Kaniko拿来基本映像后提取文件系统,然后在所提取文件系统上面的用户空间中执行所有构建命令,并在每个命令后获取文件系统的快照。
请注意,Kaniko目前无法构建Windows容器。
Kedge:简洁的Kubernetes部署定义
Kubernetes最饱受诟病的地方是其清单或应用程序定义有多重叠复杂而冗长。它们编写和维护起来很痛苦,于是难怪人们求助于第三方工具以减少痛苦。
Kedge提供了一种更简单更简洁的语法。你可以为Kedge提供Kubernetes定义文件的简单版本,Kedge可以将该简单定义扩展为完整的Kubernetes定义。与下面介绍的Koki Short不同,Kedge并不为声明文件使用模块化语法。它只是将应用程序定义简化为常见快捷方式。
请注意,Kedge的上一个版本是2018年4月发布的。
Koki Short:易于管理的Kubernetes清单
与上面的Kedge一样,Koki Short这个项目旨在改善应用程序定义或清单在Kubernetes中的工作方式。与Kedge定义一样,Short定义使用一种简短的语法来描述Kubernetes容器,可以转换成完整的语法并再次转换回去。与Kedge定义不同,Short定义还是模块化的,这意味着来自一个Short声明的详细信息可以在其他声明中重复使用,那样就可以简明地定义拥有通用元素的许多pod。
Kubecost:运行中Kubernetes的成本度量指标
大多数Kubernetes管理工具专注于易用性、监视和了解pod行为等方面。但如何监视与运行中Kubernetes有关的成本(用美元和美分来度量)呢?
Kubecost使用实时Kubernetes度量指标以及从几大云提供商上运行的集群获得的实际成本信息,提供显示每个集群部署每月成本的仪表板视图。内存、CPU、GPU和存储的成本全部按Kubernetes组件(容器、pod、服务和部署等)加以细分。
Kubecost还可以跟踪“集群外”资源(比如Amazon S3存储桶)的成本,不过这目前仅限于AWS。成本方面的数据甚至可以发回Prometheus以共享,那样你可以使用该数据以编程方式更改集群行为。
KubeDB:在Kubernetes中运行
下一页
返回列表
返回首页
©2025 人工智能世界_专注人工智能领域,汇集人工智能技术资料 电脑版
Powered by iwms