前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >推荐几个krew的效率插件

推荐几个krew的效率插件

作者头像
云原生小白
发布2021-05-13 10:10:52
7510
发布2021-05-13 10:10:52
举报
文章被收录于专栏:LokiLoki

Krew是kubectl插件的软件包管理器,简单来说它就像apt、dnf或者brew一样,通过krew你可以方便的管理机器上kubectl的插件。小白在这里根据日常工作给大家推荐一个效率的krew插件,带有一定的主观性,大家自行选择。

kubectl别名

这个并不是krew插件,不过我们可以利用alias将常见的kubectl组合命令精简成简单的别名。GitHub上有个kubectl-aliases项目,上面有很多精简的别名,虽然可以通过tab命令补全,不过能记住它们并不是容易的事。小白简单提取一部分,将它贴在~/.bashrc就可以使用啦。

alias k=kubectl
alias kg='kubectl config get-contexts'
alias ksg='kubectl config use-context'
alias keti='k exec -ti'
alias kg='k get'
alias kg='k describe'
alias kdel='k delete'
alias kl='k log -f'

更多的别名玩法,大家按照自己使用shell的习惯自行修改即可

ns 插件

ns是一个可以在kubernetes集群里面切换命名空间的插件。你是否厌烦了每次敲kubectl命令时都要加上-n <namespaces>的参数,又不想在config里面维护大量context。那么ns插件就是来解救你的,它会在切换命名空间时修改当前config里面的context到当前命名空间,这样你就不用再加-n参数了。

安装:

k brew install ns

演示:

mtail 插件

mtail允许你通过<label-selector>的方式在当前命名空间内同时查看pod的日志,这个对于需要在多个实例里面同时的实时观察日志并过滤来说十分方便。mtail支持如下功能:

  • 指定一个或者多个label-selector匹配pod输出日志
  • 可以指定pod中的container名称输出日志
  • 根据pod名称标记不同的颜色展示日志

安装:

k krew install mtail

演示:

images 插件

images插件允许你查看当前命名空间(甚至整个集群)Workload中使用的镜像信息。这个对运维的同学来说比较友好,可以节省大部分descript pod的操作。当前支持几个功能如下:

  • 列出所有命名空间workload的镜像信息
  • 指定字段展示镜像的关联k8s信息
  • 指定单独的命名空间展示镜像信息

安装:

k install images

演示:

view-secret 插件

大部分情况下,我们secret里面的信息会事先经过base64编码后存储。当我们需要从secret里面读取内容在做decode,有时也不免糟心。比如我们想从secret里面取SA的token,虽然我们可以用jsonpath | decode拿到信息

kubectl get secret <secret> -o=jsonpath='{.data.token}' |base64 -d

但是我们的目标能少打命令绝不多敲一个字母。那么这个时候view-secret就可以帮助到我们。

安装:

k install view-secret

演示:

view-allocations 插件

对于想快速知道当前你的kubernetes集群资源分布情况,view-allocations这个插件它一定能够帮助。view-allocations当前能够根据resource,nodepod三个维度展示集群当前的资源分配状况。值得一提的是如果你的kubernetes集群有GPU节点,采用view-allocations也可以快速查到你的GPU显卡分配状态

...
 Resource      Requested  %Requested        Limit  %Limit  Allocatable     Free
  nvidia.com/gpu  14.0       70%         14.0     70%          20.0      6.0
  ├─ node1        4.0        100%          4.0    100%          4.0      0.0
  ├─ node2        3.0         75%          3.0     75%          4.0      1.0
  ├─ node3        0.0          0%          0.0      0%          4.0      4.0
  ├─ node4        4.0        100%          4.0    100%          4.0      0.0
  └─ node5        3.0         75%          3.0     75%          4.0      1.0
...
总结

当前Krew上有多达120多个插件,里面的插件品质也良莠不齐,不过合理的使用插件让自己操作更加丝滑未尝不是一件美事,毕竟哪个男孩不想自己用kubectl拯救世界呢?

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-03-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云原生小白 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • kubectl别名
  • ns 插件
  • mtail 插件
  • images 插件
  • view-secret 插件
  • view-allocations 插件
  • 总结
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档