其他分享
首页 > 其他分享> > K8S集群管理 | 4个杀手级工具Get

K8S集群管理 | 4个杀手级工具Get

作者:互联网

Kubernetes,作为容器化工作负载的集群管理器,非常流行。当大K担当起负载均衡和作业管理的重任,你就可以把注意力转移到其他事情了。


但几乎每一个开源项目,都处在进程当中。而且几乎每一个参与Kubernetes项目的人都会发现它的缺点、粗糙以及令人头痛的地方。


以下介绍四个工具,它们都将为Kubernetes集群的管理工作减轻负荷。


1

    

Kube-applier


Kubernetes取得成功的一个关键是,除了Google,还汲取了其他IT厂商和产品的营养。云存储公司Box在Kubernetes上取得成功并开源了以往用于内部部署的部分工具。kube-applier就是这样一个项目。


作为Kubernetes服务运行的Kube-applier,为Git仓库中托管的Kubernetes集群提供了一组声明性配置文件,并将其持续应用于集群中的pod。无论何时对定义文件进行任何更改,它们都将被自动提取并应用于相关的pod。


这些变化也可以在按时间或者按需求应用。Kube-applier会记录每次运行时的行为,它提供了Prometheus-compatible指标,这样对于它如何影响集群行为你就尽在掌握了。


2

    

Kubetop



有时最简单的工具往往是最有用的。用Python编写的Kubetop,列表显示当前所有正在运行的节点、这些节点上所有的pods、这些pods中所有的容器以及相伴随的CPU和内存利用率,类似于Unix / Linux top命令。它不能替代更加详细的日志记录或报告生成工具——它生成的信息特别简洁——但有时对于Kubernetes集群,简洁的报告一览更加重要。


如果你只需要知道是什么在快速消耗您的集群资源,这无疑是一个方便的选择。Kubernetes kubectl也有类似的功能,但Kubetop的输出格式化更整齐。



3

    

Kubectx/K8senv



Kubernetes中有“上下文”的概念,指的是带有不同配置数据的离散集群。使用常用的kubectl命令行工具实现切换相当的繁琐笨拙,所以第三方想出了一种瞬间切换上下文的实现方法。


Kubectx是一个简单的shell脚本,Kubectx可以为Kubernetes上下文分配短名称,并使用短名称在它们之间切换。将破折号(-)传递给kubectx,将被切换回以前的内容,而无需记住名称。该脚本还支持完成名称的选项卡,因此用户不必挖掘长名称并手动重新键入。


K8senv是另一个shell脚本,要简单得多,但没有那么强大。例如,它就没有在当前和最后的上下文之间实现翻转的能力。



4

    

kubeadm-dind-cluster



如果你想启动一个本地的单节点Kubernetes实例进行测试,Kubernetes提供了一个很好的默认模版:Minikube。但对于那些想要启动多节点集群来测试和开发Kubernetes本身的人,还有另一种选择:Mirantis的kubeadm-dind-cluster(KDC)。


KDC通过使用Kubernetes的kubeadm应用启动一个Docker容器集群,注意并不是虚机。当你在Kubernetes上工作的时候,这将支持更快地集群重启,这样你就可以更快地看到任何代码更改的影响。在一个“没有嵌套虚拟化问题”的持续集成环境中,也可以使用KDC。KDC支持跨平台运行——Linux、MacOS、Windows——并且不需要Go安装,因为它使用了Dockerized构建的Kubernetes。


标签:上下文,Kubernetes,Get,杀手,KDC,集群,工具,K8S,节点
来源: https://blog.51cto.com/15077561/2584806