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

相关推荐

  • Linux查看网卡连接状态

    CentOS系统 通过service命令查看 连接状态 未连接状态

    2022年7月14日
    1.8K00
  • CentOS7搭建LNMP环境教程

    一、安装nginx 创建 nginx.repo 文件 安装配置nginx 配置文件详解 启动并验证 二、安装MariaDB 安装mariadb 使用Mysql需先初始化密码 三、安装PHP 更新yum源 执行下面的命令安装所需的包 启动php-fpm 创建测试文件 访问服务器,如果出现如下界面表示安装完成! 这样Lnmp环境就快速搭建完成了!!!

    2022年11月15日
    1.4K00
  • Centos7.6下宝塔安装及资产管理系统部署

    一:宝塔安装 1、连接linux服务器 2、执行命令开始安装 yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec 安装成功出现下方界面 3、访问外网地址…

    2022年6月8日
    4.4K90
  • Ceph集群日常使用命令

    一、Ceph 集群服务维护 之前文章说了一下ceph的安装,安装其实比较简单,但是后续维护起来我们需要知道常用的维护命令 如果我们机器上osd、mon、rgw等服务都安装在一个节点,可以通过下面的命令直接管理所有服务 ceph target allowing to start/stop all ceph*@.service instances at once…

    2023年4月19日
    1.1K00
  • 使用cloud-init新建虚拟机后重启系统网络IP地址丢失

    cloud-init 是 Linux 平台的⼀个开源⼯具,可以为云平台的 Linux 虚拟机完成⼀系列系统初始化配置。作为⼀个⾮常驻服务,开机启动时执⾏后⽴即退出,不会监听任何端⼝。 环境 问题 解决方案 如果在firstboot部分之后不使用cloud init服务,解决此问题的方法是禁用并停止cloud init服务。在第一个引导步骤之后,禁用cloud…

    2023年2月2日
    2.1K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信