您的位置:首页 > 其它

使Kubernetes管理更轻松的十个工具

2018-08-09 10:10 477 查看

随着Kubernetes的发展和演变,人们可以从内部来驯服它的无节制行为。但有些人并不情愿干等Kubernetes变得易于使用,并且为已投入生产的Kubernetes中遇到的很多常见问题制定了自己的解决方案。

下面来谈谈能简化Kubernetes应用程序定义,增强CLI和监控,并使AWS云部署更顺利第三方项目。

Kubernetes已经成为一种部署大规模容器化应用程序的标准方法(很多人都是这么认为的)。但是,如果Kubernetes能帮我们驯服庞大而复杂的容器部署,那么有什么可以帮我们驯服Kubernetes?它也可能是复杂的,杂乱的,难以管理的。

随着Kubernetes的发展和演变,人们可以从内部来驯服它的无节制行为。但有些人并不情愿干等Kubernetes变得易于使用,并且为已投入生产的Kubernetes中遇到的很多常见问题制定了自己的解决方案。

在这里,我们重点介绍10个项目,这些项目以各种方式简化Kubernetes,从简化命令行交互,简化应用程序部署语法到与AWS的集成,乃至为多个集群提供渠道。

Bitnami Cabin:适用于iOS和安卓的Kubernetes仪表板

如果没有某种移动界面,现代的Web应用程序或服务就不可能存在。Cabin为Kubernetes管理员提供可从iOS或安卓智能手机访问的Kubernetes仪表板版本。Kubernetes仪表板中的很多功能都可以从Cabin中启动,包括Helm图表,扩展部署,阅读pod(译注:创建、调度和管理的最小部署单位)日志以及访问由Kubernetes托管的基于Web的应用程序。

Kedge:简洁的Kubernetes部署定义

人们对Kubernetes最常见的抱怨是它的应用程序定义太复杂和冗长。它们很难写,而且很难维护,所以人们求助于第三方工具也就不足为奇了。Kedge提供更简单,更简洁的语法。你将Kubernetes定义文件的简单版本提供给Kedge,Kedge将其扩展为成熟的Kubernetes对应文件中。与Koki Short不同(见下文),Kedge不会对其声明文件(declaration file)使用模块化句法;它只是将应用程序定义归结为常用的快捷键。

Koki Short:可管理的Kubernetes清单文件(manifest)

Koki Short和上述的Kedge一样是一个改进应用程序定义或清单文件在Kubernetes中的工作方式的项目。Short和Kedge一样提供了一个用来描述Kubernetes pod的简短语法,它可以被翻译成成熟的语法,然后再反译为pod。与Kedge不同的是,Short也是模块化的,这意味着来自一个Short声明的细节可以在其它声明中重复使用,这样的话,很多具有共同元素的pod就可以得到清晰的定义。

Kube-ps1:智能Kubernetes命令提示符

不,Kube-ps1并不是用于Kubernetes的第一代索尼PlayStation模拟器(虽然这个说法相当精彩)。这是对能显示提示符中当前的Kubernetes情境和名称空间的Bash的简单补充,。Kube-shell包含了很多其它的功能,但如果你想要的只是更智能的提示符,Kube-ps1可以花小钱办大事。

Kube-prompt:交互式Kubernetes客户端

对Kubernetes CLI的另一个最低限度但很有用的修改是,Kube-prompt可以让你在Kubernetes客户端输入相当于交互式命令会话的东西。Kube-prompt使你不必键入kubectl来为每个命令添加前缀,并为每个命令提供自动填充的背景信息。

Kube-shell:Kubernetes CLI的Shell

Kubernetes命令行功能很强大,但它与所有命令行应用程序一样,挑选其选项是一件非常繁琐的事情。Kube-shell将标准Kubernetes命令行包装在一个集成的shell中,该shell提供常见命令的自动填充和自动建议,包括由Kubernetes服务器提供的建议(例如服务名称)。它还为你提供更强大的命令历史记录功能,vi式(译注:vi-style,这里的vi应该是指Linux的一种编辑器)的编辑模式以及运行用户,名字空间,集群和其它安装特有的细节的背景信息。

AWS的Kubernetes Ingress Controller

Kubernetes通过名为Ingress的服务向集群提供外部负载均衡和网络服务。Amazon Web Services提供负载均衡功能,但它不会自动将这些服务与Kubernetes的设施相连。用于AWS的Kubernetes Ingress控制器弥补了这一缺口。Ingress Controller自动管理群集中每个Ingress对象的AWS资源,为新入口资源创建负载均衡器,删除已删资源的负载均衡器,并借助AWS CloudFormation确保群集的一致状态。它还能自动管理集群中使用的其它元素,如SSL证书和EC2 Auto Scaling组。

Kube-ops-view:用于多个Kubernetes集群的仪表板

Kubernetes为通用监控提供了一个有用的仪表板,但Kubernetes社区正在尝试其它向Kubernetes管理员提供有用的数据的方法。Kube-ops-view就是这样一个实验;它以图形方式呈现了多个Kubernetes集群的总体观察窗口,因此你一眼就能了解集群中CPU和内存的使用情况以及Pod的状态。尽管如此,它不允许你调用任何命令。它严格地用于可视化。但它提供的可视化效果是惊人且高效的,它注定为成为你的运营中心的壁挂式显示器而生。

Stern:记录Kubernetes的tail命令

此Stern非彼Stern,也不具有纪律上的意义。Stern可以让你根据Kubernetes中的pod和容器生成以不同颜色编码的输出(按照tail命令)。这是将这些资源的所有输出都汇集到一个可以一眼看出的单一流中的快速方法,并让你瞥见区分流的方法(颜色编码)。

Teresa:Kubernetes上的一个简单的PaaS

Teresa是一种应用程序部署系统,它在Kubernetes上作为简单的PaaS运行。组成团队的用户可以部署和管理属于他们的应用程序。这使得使用特定应用程序的人员可以更轻松地使用它,而无需直接与Kubernetes打交道。

版权声明:本文为企业网D1Net编译,转载需注明出处为:企业网D1Net,如果不注明出处,企业网D1Net将保留追究其法律责任的权利。

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: