kubectl-aliasesでkubectlコマンドのエイリアスを一括設定

2022.05.06
2024.03.24
Kubernetes
kubectlkubectl-aliases

はじめに

kubectlコマンドのエイリアスが大量に設定されているkubectl-aliasesの設定とその使い方を紹介したいと思います。

kubectl-aliases

kubectl-aliasesでは、kubectlコマンドのエイリアスが大量に定義されています。

GitHub - ahmetb/kubectl-aliases: Programmatically generated handy kubectl aliases.

GitHub - ahmetb/kubectl-aliases: Programmatically generated handy kubectl aliases.

Programmatically generated handy kubectl aliases. Contribute to ahmetb/kubectl-aliases development by creating an account on GitHub.

自分で全て記述するには大変なエイリアスを1000個以上定義してくれています。

例えば下記のようなエイリアスがあります。

1alias kgpo='kubectl get pods'
2alias kdpo='kubectl describe pods'
3alias klo='kubectl logs -f'
4alias ka='kubectl apply --recursive -f'

設定

Bash/Zshでの利用方法について紹介します。

まずは、.kubectl_aliasesをリポジトリからダウンロードしてホームディレクトリに移動させます。

.bashrc.zshrcで下記を追加して、ホームディレクトリに置いたファイルを読み込むようにします。

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

エイリアスを使って実行したコマンドを実行時に出力させる場合は下記も追記します。

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

下記のように実際のコマンドが表示されるようになります。

1❯ kgpo
2+ kubectl get pods
3No resources found in default namespace.

使い方

基本的にk+command+resource+flagのまとまりでエイリアスが設定されています。

それぞれのエイリアスは下記の通りです。

  • k=kubectl
    • sys=--namespace kube-system
  • コマンド
    • g=get
    • d=describe
    • rm=delete
    • a=apply -f
    • ak=apply -k
    • k=kustomize
    • ex=exec -i -t
    • lo=logs -f
  • リソース
    • po=pod
    • dep=deployment
    • ing=ingress
    • svc=service
    • cm=configmap
    • sec=secret
    • ns=namespace
    • no=node
  • フラッグ
    • oyaml=-o yaml
    • ojson=-o json
    • owide=-o wide
    • all=--all, --all-namespace
    • sl=--show-labels
    • w=-w, --watch
    • n=-n, --namespace(コマンドの最後)
    • f=-f, --filename(コマンドの最後)
    • l=-l, --selector(コマンドの最後)

例えば、kgpoowidekubectl get pods -o=wideとなります。

1❯ kgpoowide
2+ kubectl get pods -o=wide
3No resources found in default namespace.

参考

Support

\ この記事が役に立ったと思ったら、サポートお願いします! /

buy me a coffee
Share

Profile

author

Masa

都内のIT企業で働くエンジニア
自分が学んだことをブログでわかりやすく発信していきながらスキルアップを目指していきます!

buy me a coffee