13

GitHub上 50+ Kubernetes DevOps 工具

 3 years ago
source link: http://dockone.io/article/246340
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

【编者的话】本文列举了一系列Kubernetes DevOps相关的工具,包括集群部署、监控、测试、安全、CLI、开发、CI/CD流水线、Serverless/Function、本地服务发现等各类工具,帮助k8s使用者和开发者选择最适合自己场景的那一款。

Kubernetes是一个流行的容器编排系统,能自动化地进行应用部署、伸缩和管理。它是目前可用的最流行的容器解决方案之一。

下面列举了一系列DevOps工具,能帮助你充分利用kubernetes的能力。

集群部署工具

1.Amazon EKS

Amazon Elastic Container Service 是一个Kubernetes DevOps工具,它允许用户管理和扩展他们的容器化应用程序,并使用Kubernetes简化部署。Amazon EKS可以运行Kubernetes,而无需在你自己的Kubernetes上操作。Amazon EKS与运行在上游Kubernetes上的现有应用程序兼容。

Amazon EKS Issues

Amazon EKS评价

Amazon EKS具有灵活的布局并减少了维护开销。这允许组织将其重点从从设置Kubernetes集群转移到构建应用程序上来。当前用户反馈,学习Amazon EKS需要一个调整过程。Amazon EKS适合推荐给这些AWS云用户,他们希望运行Kubernetes,而不想在Kubernetes中操作自己的控制平面。

资源:

2.Kubespray

Kubespray 是一个基于ansible的工具,它部署可用于生产的集群。因为Kubespray拥有一个开放的开发模型,所以任何人都可以很容易地学习如何使用Kubespray。对于那些已经了解Ansible的人来说,这个工具是个不错的选择。

Kubespray Issues

Kubespray评价

对于那些熟悉Ansible的人来说,Kubespray是一个很好的工具。它使用单个命令运行,大大降低了编排集群的难度。它也易于使用,推荐给那些没有互联网连接问题的用户,建议在裸机上运行。

资源:

3.Conjure-up

Conjure-up 允许用户重新使用他们的大软件,而不是学习如何通过几个简单的命令和最小的麻烦来部署它。Conjure-up支持本地主机部署、AWS、bare metal、Azure、VMware、Joynet和OpenStack。

Conjure-up Issues

Conjure-up评价

Conjure-up易于使用,允许用户以最少的问题部署他们的应用程序。但是,对于那些启用了IPv6又不想禁用它的用户,我们不建议这样做。在使用之前,请确保你满足了 硬件需求

资源:

4. Minikube

对于那些处于Kubernetes的探索阶段的人来说, Minikube 是一个很好的起点。通过在用户笔记本上的VM中运行单节点Kubernetes集群,该工具允许用户轻松地在本地运行Kubernetes。在OSX、Windows和Linux上都支持Minikube。

Minikube Issues

Minikube评价

Minikube很受欢迎,因为它在本地运行Kubernetes。这是操作Kubernetes集群最推荐的工具。然而,Minikube不推荐给那些处于DevOps SRE角色的人。

资源:

5. Juju

如果你正在寻找一种开源的应用程序建模工具,请查看 Juju 。Juju允许用户轻松地部署、配置、缩放和操作他们的软件。它在公有云和私有云(如微软Azure、亚马逊AWS和谷歌GCE)上都得到支持。

Juju Issues

Juju评价

Juju用户喜欢开放式平台和以客户为中心的支持。它也易于安装、实现和维护。然而,一些用户觉得它的云解决方案仍然很复杂。尽管如此,许多人仍然认为它比其他选择更好。

资源:

6. Kubeadm

Kubeadm 为用户提供了使用单个命令创建Kubernetes集群的最佳实践“快速路径”。使用这个工具,你可以在现有的基础设施上引导集群。Kubeadm符合Kubernetes的 认证指南

Kubeadm Issues

Kubeadm评价

Kubdeam是熟练用户和/或首次用户部署集群的优秀工具。然而,配置软件和网络设置超出了Kubeadms的范围。相反,它的作用域旨在成为高级工具的可组合构建块。

资源:

7. SimpleKube

SimpleKube 是另一个对初次使用Kubernetes的用户友好的工具。你可以在Linux服务器上部署单个Kubernetes集群,而无需集成任何云提供商。SimpleKube将所有k8s安装到服务器本身。

SimpleKube Issues

SimpleKube评价

SimpleKube对于那些想要尝试Kubernetes的人来说是很棒的。但是,它不像Minikube那样,Kubernetes集群运行在VM上。相反,它将K8s安装到服务器本身上,这允许你启动脚本并在Kubernetes集群中工作。

8. Kops

Kops 是一个AWS支持的工具,用于管理生产级Kubernetes集群。Kops使用声明式配置将基础结构更改应用到现有集群。AWS通常使用Kops来实现Kubernetes的自动化。

Kops Issues

Kops评价

Kops用户经常说它与AWS一起工作得很好。但是,请注意,Kops确实缺少用于节点配置的安装前/安装后钩子。Kops做了很多,但它不能做所有的事情。在使用之前确保它满足了你的需要。

资源:

9. Kubernetes on AWS (Kube-AWS)

Kube-AWS ,也称为Kubernetes孵化器,使用AWS CloudFormation 提供生产环境的Kubernetes集群。通过使用Kube-AWS,你可以部署传统的Kubernetes集群,并以可定制的方式提供这些集群。

Kubernetes on AWS (Kube-AWS) Issues

Kubernetes on AWS (Kube-AWS)评价

Kube-AWS是CloudFormation用户的一个很好的工具。虽然它使管理Kubernetes集群变得更加容易,但请确保安装了所有正确的AWS Cloud Formation工具,以确保有效的安装。

资源:

10. Bootkube

Bootkube 启动自托管的Kubernetes集群,并帮助建立临时的Kubernetes控制平面。Bootkube还可以用于在引导新集群时生成必要的资产。你可以更改资产以支持任何配置更改。

Bootkube Issues

Bootkube评价

Bootkube是用于集群中第一个注意事项的一次性使用工具。如果你正在寻找一个全功能的渲染引擎,有更好的工具可用。

资源:

监控工具

11. Kubebox

Kubebox 为你提供了一个老式的界面,用于监视和管理集群活动状态。使用它来监视集群和容器日志,以及pod资源使用情况。

Kubebox Issues

Kubebox评价

一些人认为Kubebox应该和kubectl一样工作。凭证,主机节点连接,以及确保每台机器都有适当的kubectl配置有关,这些上面仍然有一些问题。Kubebox没有网络版本。

资源:

12. Kubernetes Operational View (Kube-ops-view)

Kubernetes操作视图(Kube-ops-view) 允许你通过只读系统仪表板管理多个K8s集群。Kube-ops-view的目标是通过在集群和监视节点之间轻松导航,为多个Kubernetes集群提供一个通用的操作视图。

Kubernetes Operational View (Kube-ops-view) Issues

Kubernetes Operational View (Kube-ops-view)评价

Kube-ops-view不是Kubernetes仪表板的替代品。如果你正在寻找一个仪表板或监视系统,那么你必须找到适当的工具来这样做。此工具严格用于为多个Kubernetes集群提供操作图。

资源:

13. Kubetail

Kubetail 使用一个小的bash脚本将多个pods中的日志收集到一个流中。对于希望在副本控制器后面运行pod的多个实例的用户来说,它是一个非常有用的工具。

Kubetail Issues

Kubetail评价

用户发现Kubetail有助于诊断部署中的问题。但是,初始版本中没有突出显示或过滤功能。

资源:

14. Kubewatch

Kubewatch 使用网络钩子通过Kubernetes监视器发出通知。该工具运行在Kubernetes集群中的pod上,当前在监视系统更改时向可用的协作中心/通知通道发布通知。你可以通过简单地编辑配置文件来定制通知。

Kubewatch Issues

Kubewatch评价

Kubewatch是一个很好的工具,可以确保你的容器是安全的,并使用行业最佳实践进行打包,同时监视软件的漏洞和更新。但是,用户表示,添加对多个实例的支持将会更有帮助。

资源:

15. Weave Scope

Weave Scope监视和解决Kubernetes和Docker集群的故障,这样你就可以轻松地识别和纠正你的容器化应用程序的问题。你可以使用它来轻松地识别应用程序性能瓶颈

Weave Scope评价

Weave Scope是一个很好的工具,可以用来监视你的容器化应用程序的瓶颈。当前用户表示,该工具非常适合他们的Docker和Kubernetes集群。

16. Searchlight

Searchlight用于检查Kubernetes集群中的问题。如果检测到问题,你可以通过短信、电子邮件或聊天接收通知。Searchlight包括一套针对Kubernetes的检查命令。

Searchlight评价

Searchlight是一个非常有用的工具,用于检测Kubernetes集群的问题。然而,你将需要实现额外的工具/流程来解决Searchlight检测的问题。

17. Kubeturbo/Turbonomic

Turbonomic/Kubeturbo为你的整个堆栈提供可见性和控制。它支持应用程序和底层集群的持续扩展。这个工具确保了底层基础设施的效率和Kubernetes pod中运行微服务的性能。

Kubeturbo/Turbonomic评价

Kubeturbo/Trubonomic是一个很好的工具来平衡他们的环境工作负载。该工具可以报告性能、工作负载自动化等。然而,大多数用户发现使用这个界面有一个轻微的学习曲线。

测试

18. Kube-monkey

你在找Netflix《混乱的猴子》(Chaos Monkey)的Kubernetes版本吗?Kube-monkey是“Kubernetes的对等物”。遵循混沌工程的原则,Kube-monkey将随机删除集群中的Kubernetes pods,并验证抗故障服务的开发。

Kube-monkey评价

Kube-monkey是一个帮助用户建立抗失败服务的好工具。计划何时删除K8s以确保故障恢复的能力尤其受欢迎。

19. K8s-testsuite

K8s-testsuite使用测试套件中的两个helm图表在Kubernetes集群上进行网络带宽测试和负载测试。这有助于用户确保他们的配置是正确的,他们的服务正常运行并正确地实现负载均衡。

K8s-testsuite评价

对于那些在OpenStack系统中积极使用Kubernetes的用户来说,K8s-testsuite是一个很好的工具。这些工具有助于铺开CI/CD管道,确保你的配置是正确的,并确保服务正常运行和负载均衡。

20. Test-infra

test -infra是用来测试和验证Kubernetes结果的工具集合。它基于Pytest框架,并包含显示历史、聚合失败和当前测试的仪表板。

Test-infra评价

Test-infra是一个伟大的Kubernetes测试工具。它可以处理复杂的模板来测试和检测错误,并且对于编写和处理有效的测试非常有用。

21. Sonobuoy

Sonobuoy以可访问的、非破坏性的方式对Kubernetes集群的状态运行测试。这允许用户通过基于测试的信息更丰富的报告来了解Kubernetes集群的状态。

Sonobuoy评价

Sonobouy用户喜欢在Kubernetes集群上定制测试的能力。该工具还确保正确设置这些集群,并满足CNCF的一致性标准。

22. PowerfulSeal

PowerfulSeal是彭博发布的另一个受混沌猴启发的工具。该工具是Kubernetes特有的,并遵循混沌工程的原则。你可以使用它通过交互模式手动中断特定的集群组件,并且不需要来自SSH的外部依赖项。

PowerfulSeal评价

PowerfulSeal的交互模式是手动中断集群、导致故障并查看结果的好工具。但是,过于依赖手动中断可能会阻碍在其他集群中发现问题的机会。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK