800 多个 Kubectl 常用命令,再也不怕不会用 Kubernetes!

这个存储库包含脚本 gener_ aliases.py 可以生成数百个方便的 kubectl shell 别名,您不再需要拼写出每个命令和--flag 参数。

https://github.com/ahmetb/kubectl-aliases/blob/master/generate_aliases.py

通过命令/标志排列创建的 shell 别名示例如下:

alias ksysgdepwslowidel='kubectl --namespace=kube-system get deployment --watch --show-labels -o=wide -l'

示例

800 个别名,下面列出一部分:

alias k='kubectl'
alias kg='kubectl get'
alias kgpo='kubectl get pod'

alias ksysgpo='kubectl --namespace=kube-system get pod'

alias krm='kubectl delete'
alias krmf='kubectl delete -f'
alias krming='kubectl delete ingress'
alias krmingl='kubectl delete ingress -l'
alias krmingall='kubectl delete ingress --all-namespaces'

alias kgsvcoyaml='kubectl get service -o=yaml'
alias kgsvcwn='kubectl get service --watch --namespace'
alias kgsvcslwn='kubectl get service --show-labels --watch --namespace'

alias kgwf='kubectl get --watch -f'
...

访问下面地址,查看所有别名:

https://github.com/ahmetb/kubectl-aliases/blob/master/.kubectl_aliases

安装

您可以直接下载 bash/zsh 的文件.kubectl_aliases

https://raw.githubusercontent.com/ahmetb/kubectl-aliases/master/.kubectl_aliases

或者 fish 的文件.kubectl_aliases.fish,并将其保存到$HOME目录中。

https://raw.githubusercontent.com/ahmetb/kubectl-aliases/master/.kubectl_aliases.fish


Bash/Zsh

将以下内容添加到您的.bashrc/.zshrc文件中:

[ -f ~/.kubectl_aliases ] && source ~/.kubectl_aliases

建议:如果想使用 GNU watch 命令而不是 kubectl […] –watch,请这样运行:

[ -f ~/.kubectl_aliases ] && source \
   <(cat ~/.kubectl_aliases | sed -r 's/(kubectl.*) --watch/watch \1/g')

在运行之前打印完整的命令:将其添加到您的.bashrc 或 .zshrc文件中:

function kubectl() { echo "+ kubectl $@">&2; command kubectl $@; }

Fish

添加下面内容到你的~/.config/fish/config.fish文件:

test -f ~/.kubectl_aliases.fish && source ~/.kubectl_aliases.fish

这实际上增加了更强大的 fish 缩写:

https://fishshell.com/docs/current/cmds/abbr.html

而不是别名,这样在执行前按空格显示完整的命令。

建议:如果想使用 GNU watch 命令而不是 kubectl […] –watch,请这样运行:

test -f ~/.kubectl_aliases.fish && source \
     (cat ~/.kubectl_aliases.fish | sed -r 's/(kubectl.*) --watch/watch \1/g' | psub)

语法解释

  • k=kubectl
    • sys=--namespace kube-system
  • commands:
    • g=get
    • d=describe
    • rm=delete
    • a:apply -f
    • ak:apply -k
    • k:kustomize
    • exexec -i -t
    • lologs -f
  • resources:
    • po=pod, dep=deploymenting=ingress,svc=servicecm=configmapsec=secret,ns=namespaceno=node
  • flags:
    • output format: oyamlojsonowide
    • all--all or --all-namespaces depending on the command
    • sl--show-labels
    • w=-w/--watch
  • value flags (should be at the end):
    • n=-n/--namespace
    • f=-f/--filename
    • l=-l/--selector

运行脚本

该脚本只有一个可选参数,即:将生成别名的 shell。如果不指定,则默认为bash。例如:

# Generate aliases for bash/zsh
python generate_aliases.py > .kubectl_aliases

# Generate abbr for fish
python generate_aliases.py fish > .kubectl_aliases.fish

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/9201

(0)
郭靖的头像郭靖
上一篇 2023年7月25日 下午4:30
下一篇 2023年7月26日 下午4:19

相关推荐

  • MySQL 如何使用离线模式维护服务器

    离线模式 作为 DBA,最常见的任务之一就是批量处理 MySQL 服务的启停或其他一些活动。在停止 MySQL 服务前,我们可能需要检查是否有活动连接;如果有,我们可能需要把它们全部杀死。通常,我们使用 pt-kill 杀死应用连接或使用 SELECT 语句查询准备杀死语句。例如: MySQL 有一个名为 offline_mode 的变量…

    2023年10月20日
    1.3K00
  • Linux 实用工具 Screen —— 再也不怕因为网络连接中断杀死任务了!

    不知道小伙伴们是否遇到过这样的场景: 有时候,我们本地通过 SSH 连接到远程服务器并不是很稳定,经常会断开连接。如果此时我们正在做类似更新系统、DD 系统、远程传输 / 下载文件等需要一定时间的操作,就会非常难受,好不容易传了半天的文件,中断了,又得重新来传一次,还得祈祷这次别传一半断开了。 今天我们介绍的这个工具 ——screen,就是为了来解决上面这些…

    2023年11月9日
    1.3K00
  • OpenSuSe系统登录密码忘了如何进行重置

    如果你的OpenSusE系统密码忘记了,又不想重装系统,那么,你可以通过如下几个步骤来强制重置root密码 1、重新启动机器,在出现grub引导界面后,按“e”,出现启动Linux的选项,移动光标至第一个选项上再次按“e”出现一个编辑字符的界面在字符后面加入“init=/bin/bash”字段,然后回车。按Ctrl+X,通过给内核传递init=/bin/ba…

    2022年11月24日
    1.9K00
  • ipmitool 工具使用教程

    IPMI全称为Intelligent Platform Management Interface(智能平台管理接口),原本是一种Intel架构的企业系统的周边设备所采用的一种工业标准。IPMI亦是一个开放的免费标准,用户无需支付额外的费用即可使用此标准。IPMI 能够横跨不同的操作系统、固件和硬件平台,可以智能的监控、控制和自动回报大量服务器的运作状况,以降…

    2024年3月25日
    1.9K00
  • 服务器中挖矿木马病毒如何解决(kswapd0进程使cpu爆满)

    现象:系统cpu持续使用过高,造成无法远程连接 分析过程:一开始机器不能远程登录,但又能够ping通,登录信息也没有修改过,判断可能远程登录服务故障,后登录机器top发现,cpu使用率百分百,这很不正常,上面只运行了一个网站与数据库,发现异常进程kswapd0,查找资料后发现其是挖矿程序 解决方案:排查kswapd0进程 top 执行命令 netstat -…

    2022年12月13日
    2.2K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信