如何设置一个正经的Kubernetes终端

开发 前端
Kubernetes预先包装了出色的CLI。 对于基本操作,它的运行非常出色。 las,当需要快速执行某项操作时,复杂性就会增加。

 所有k8s书呆子需要的CLI工具

 

[[344967]]

 

Kubernetes预先包装了出色的CLI。 对于基本操作,它的运行非常出色。 las,当需要快速执行某项操作时,复杂性就会增加。

Kubernetes社区已经构建了各种基于Web的工具来监视您的集群-kube ops视图,grafana等。但是,拥有完整的终端设备将迅速加快解决问题的根源。 它构成了瑞士军刀的基本组成部分。

以下是我已应用于OSX终端的开源工具的简短列表。 一起使用时,它们使我可以跳过kubernetes集群,快速解决问题并监控行为。 我删去了许多小的实用工具,并坚持使用每天都能使用的工具。

在使用任何工具之前……

在使用这些工具之前,我强烈建议您安装zsh。 它是围绕标准OSX终端的出色的开源包装器。 它具有丰富的功能和直观的功能,您可以安装的插件很棒。 列出的其中一些工具假定您已安装ZSH。

k9s

 

如何设置一个正经的Kubernetes终端

 

> oh yes

我开始坚强。 K9s是用于Kubernetes集群的CLI工具的后盾。 您可以通过一次按键直接SSH到pod中,查看日志,删除资源等等。 它为您执行的最常见操作提供了出色的访问权限。 对于使用kubernetes的任何工程师来说,这都是最重要的。

kubectx

我们只有一个集群是非常罕见的。 这些之间的切换非常简单

kubectl config use-context my-context

但是,这样做有一些先决条件:

  • 在运行之前,您需要知道集群的名称。
  • 还有另一个类似的set-context命令可以使您崩溃。

kubectx提供了一种更简单的替代方法。 如果您单独运行kubectx,它将在.kube / config文件中列出所有上下文。 然后,您可以提供您感兴趣的上下文的名称:

kubectx my-context

无需记住所有上下文,无需手动检查文件,也无需获取错误的命令。 漂亮又简单。 与k9s结合使用时,只需最少的按键操作,就可以从CLI进行很多导航。

编辑:我最初说过k9s不支持在上下文之间切换。 Fernand Galiana的出色回应指出,使用:ctx命令,这是可能的。

kubens

随处可见的内容后,您可能想挖掘一个特定的名称空间。 再说一次,在群集中拥有多个命名空间是很常见的。 嗯,ahmetb(为您带来kubectx的绅士)也将kubens放在一起。 与kubectx相同,仅适用于名称空间。

 

  1. kubens kube-system 

现在,默认情况下,所有命令都针对kube-system名称空间运行。 您也可以不带其他任何内容运行kubens来查看名称空间列表。

kube-ps1

因此,您可以在上下文和名称空间之间切换。 但是,您怎么知道您当前针对的是哪一个呢? 继续检查很痛苦。 目前,要找出答案,您需要运行:

  1. kubenskubectxkubectl <my-command> 

要删除此问题,ps1是一个zsh插件,它将自动向您显示您当前的上下文和名称空间:

 

如何设置一个正经的Kubernetes终端

 

> I'm pointing at my minikube context and the default namespace

现在,您无需运行任何命令即可查看要指出的名称空间和上下文。 它也具有高度可配置性-如果您只对名称空间或上下文感兴趣,则可以将其关闭,或者可以使用kubeoff完全禁用整个功能。

popeye

现在,进入一些不同的地方。 popeye将对存储库中的资源进行自动扫描,并突出显示明显的明显问题。 这是一个非常新的工具,我发现它非常有用。 如果您要在集群中进行一些春季大扫除,那么从popeye开始将为您提供一些需要修复的明确指示。

 

如何设置一个正经的Kubernetes终端

 

> This was the first few lines of a very long, detailed report.

Stern

曾经使用过kubectl logs吗? 是否注意到您一次只能跟踪一个Pod中的日志? 好吧,不用担心! Stern是一种工具,可让您基于非常灵活的查询从多个Pod中提取日志。

我经常在我的Twitter帐户上谈论kubernetes,DevOps等。

责任编辑:华轩 来源: 今日头条
相关推荐

2020-08-25 07:48:17

Kubernetes集群系统

2020-10-13 10:49:23

APPAndiroid终端

2021-11-12 06:03:10

开发人员开发安全意识

2021-09-14 12:34:33

LinuxLinux终端

2013-11-18 14:00:09

2023-01-30 16:21:24

Linux外观

2021-06-15 09:33:44

Kubernetes Prometheus 容器

2020-12-04 18:44:29

KubernetesHTTPS Wordpress

2023-12-18 08:23:12

CSI插件Kubernetes

2011-10-18 13:43:31

福布斯信息技术企业计算

2021-09-02 08:02:50

深度学习Kubernetes集群管理

2019-11-07 14:00:36

MySQL数据库SQL

2021-12-24 10:59:37

Kubernetes架构代码

2021-03-09 11:42:08

GuakeFPS游戏Linux终端

2024-06-06 08:46:26

弹性布局元素浏览器

2022-02-17 11:08:00

KubernetesMySQL运维

2016-10-13 12:53:06

Linux终端仿真器

2021-12-02 08:00:00

Kubernetes集群容器

2022-04-17 10:04:32

HerokuPaaSPorter

2020-12-16 14:29:40

终端开发shell
点赞
收藏

51CTO技术栈公众号