利用这些Kubernetes相关组件的优势来改善监视,命令行操作,多集群管理等操作。
是,如果Kubernetes帮助我们管理了庞大而复杂的容器部署,那么有什么可以帮助我们管理Kubernetes的呢?它也可能是复杂,混乱且难以管理的。
随着Kubernetes的发展壮大,毫无疑问,它的许多功能都将在用户的项目内部得到使用。但是有些用户并没有等着Kubernetes变得更容易使用,他们已经针对生产中Kubernetes的许多常见问题推出了自己的解决方案。
Bitnami Cabin:适用于iOS和Android的Kubernetes仪表板
任何现代Web应用程序或服务都不应该没有某种移动界面。Cabin为Kubernetes管理员提供了一个Kubernetes的仪表板,可从iOS或Android智能手机上进行访问。完整的Kubernetes仪表板中的许多功能都可以从Cabin中启动,包括Helm图表,缩放部署,读取pod日志以及访问Kubernetes托管的基于Web的应用程序。
Goldpinger:可视化Kubernetes集群
人类是视觉生物。图形和图表使我们更容易理解全局。考虑到Kubernetes集群的范围和复杂性,我们可以考虑使用图形化的工具来表现kubernetes集群的结构。彭博的技术部门开源的这个有趣的工具,名字叫Goldpinger,它很简单,它在Kubernetes集群中运行,并显示节点之间关系的交互式地图。健康的节点显示为绿色,不健康的节点显示为红色。只需单击一个节点以获取详细信息。您可以使用Swagger自定义API,以引入其他报告,指标或其他集成。
K9s:全屏Kubernetes CLI UI
管理员喜欢“单一窗格”的实用程序。K9s是Kubernetes集群的全屏CLI UI。它使您可以快速查看正在运行的Pod,日志和部署的视图,并可以快速访问Shell。请注意,您将需要授予用户Kubernetes在user和namespace级别的读取权限,以使K9正常工作。
Kops:Kubernetes集群的命令行操作
Kops由Kubernetes团队开发,可让您从命令行管理Kubernetes集群。它支持在AWS和GCE上运行的集群,以及正在运行的VMware vSphere和其他环境。除了自动进行设置和拆卸过程外,Kops还可以帮助进行其他类型的自动化。例如,它可以生成Terraform配置,以允许使用Terraform重新部署群集。
Kubebox:Kubernetes的终端控制台
Kubebox是Kubernetes的高级终端控制台,不仅为Kubernetes及其API提供了好看的外壳。它提供内存和CPU利用率,窗格列表,运行日志和配置编辑器的交互式显示。最重要的是,它可以作为适用于Linux,Windows和MacOS的独立应用程序使用。
Kube-ps1:Smart Kubernetes命令提示符
不,Kube-ps1并不是适用于Kubernetes的第一代SonyPlayStation模拟器(尽管那很漂亮)。这是对Bash的简单补充,可在提示中显示当前的Kubernetes上下文和名称空间。 Kube-shell包括此功能以及许多其他功能,但是如果您只想提供更智能的提示,Kube-ps1几乎不会给您带来任何开销。
Kube-prompt:交互式Kubernetes客户端
对Kubernetes CLI的另一种最小但有用的修改,Kube-prompt允许您输入相当于与Kubernetes客户端的交互式命令会话的内容。Kube提示使您不必键入kubectl来为每个命令添加前缀,并为每个命令提供带有上下文信息的自动完成功能。
Kube-shell:Kubernetes CLI的Shell
Kubernetes命令行功能强大,但是与任何命令行应用程序一样,选择其选项可能很繁琐。 Kube-shell将标准的Kubernetes命令行包装在一个集成的Shell中,该命令行提供自动完成和自动建议的常用命令,包括Kubernetes服务器提供的建议(例如,服务名称)。它还为您提供了更强大的命令历史记录功能,vi风格的编辑模式以及有关用户,名称空间,集群和其他特定于安装的详细信息的运行上下文信息。
Kubespy:Kubernetes资源的实时监控
Pulumi的Kubespy是一种诊断工具,可让您实时跟踪对Kubernetes资源的更改,从而为您提供了一种实时的文本视图仪表板。例如,您可以在启动时查看Pod状态的变化:将Pod定义写入Etcd,将Pod计划在节点上运行,在该节点上的Kubelet创建Pod,最后将Pod 标记为正在运行。Kubespy可以作为独立的二进制文件运行,也可以作为Kubectl的插件运行。
Kube-ops-view:多个Kubernetes集群的仪表板
Kubernetes有一个有用的仪表板,可用于通用监控,但是Kubernetes社区正在尝试其他方法,以向Kubernetes管理员有用地呈现数据。Kube-ops-view是这样的一种实验。它提供了以图形方式呈现的多个Kubernetes集群的概览视图,因此您可以一目了然地看到集群中整个CPU和内存使用率以及Pod的状态。请注意,它不允许您调用任何命令;仅用于可视化。但是,它提供的可视化效果惊人且高效,是为您的运营中心中的墙壁监控器所生。
Stern和Kubetail:Kubernetes的日志工具
通过Stern,您可以从Kubernetes中的容器和容器中生成含有颜色编码的输出(按照tail命令)。这是一种将来自多个资源的所有输出传输到单个流中的快速方法,一目了然。同时,您可以使用颜色一目了然地的进行区分。 Kubetail同样将来自多个Pod的日志聚合到单个流中,并对不同Pod和容器进行颜色编码。但是Kubetail是Bash脚本,因此只需要一个shell。