kubectls の紹介

kubectls は kubectl の version manager です。
色々な cli tool に *env というものがあると思いますが、それの kubectl 版です。
利用する人がほとんどいないと思ったのと最低限動けば良いくらいの気持ちで作ったので、kubectlenv というよく使われそうな名前にするのは避けました。

Installation

以下のコマンドでインストールできます。
bash、ln、readlink、curl、git あたりが動く環境であれば基本的には動作すると思います。

$ git clone https://github.com/tkuchiki/kubectls ~/.kubectls
Code language: PHP (php)

.bashrc などで ~/.kubectls/bin を優先するように PATH を設定します。
zsh を使っている場合は .zshrc などに置き換えて実行してください。

# for bash $ echo "PATH=~/.kubectls/bin:\$PATH" >> ~/.bashrc $ echo "export $PATH" >> ~/.bashrc
Code language: PHP (php)

Usage

5つのサブコマンドで構成されているので、一つずつ紹介していきます。

$ kubectls --help Usage: kubectls kubectls is kubectl version manager Commands: install Install kubectl path Show current kubectl's abs path update Update kubectls use Set version versions Show installed versions Options: --version Show version

install

kubectl を install するサブコマンドです。

$ kubectls install --help Usage: kubectl install (VERSION|stable) [--set] Install kubectl Options: --set Set version
Code language: JavaScript (javascript)

kubectl install stable で、実行時の stable version の kubectl を install できます。

$ kubectls install stable % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 44.1M 100 44.1M 0 0 16.3M 0 0:00:02 0:00:02 --:--:-- 16.3M v1.20.4 is installed

kubectls install VERSION で、指定した version の kubectl を install できます。

$ kubectls install v1.20.0 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 44.0M 100 44.0M 0 0 17.5M 0 0:00:02 0:00:02 --:--:-- 17.5M v1.20.0 is installed

kubectls install は install するだけで使えるようにはなりません。
指定したバージョンに切り替えるには、後述する kubectls use を実行するか、kubectls install--use というオプションをつけて実行すれば OK です。

$ kubectls install v1.20.1 --use % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 44.0M 100 44.0M 0 0 20.7M 0 0:00:02 0:00:02 --:--:-- 20.7M v1.20.1 is installed v1.20.1 selected $ kubectl version --client --short Client Version: v1.20.1
Code language: PHP (php)

use

kubectls install で、install しておいた version の kubectl に切り替えるサブコマンドです。

$ kubectls use --help Usage: kubectl use [VERSION] Set version
Code language: JavaScript (javascript)

kubectls use VERSION で、version を切り替えられます。

$ kubectls use v1.20.4 v1.20.4 selected
Code language: PHP (php)

kubectls use のように version を指定しないで実行することで、install した version 一覧から選択して切り替えることも可能です。

$ kubectls use 1) v1.20.0 2) v1.20.1 3) v1.20.2 4) v1.20.4 Which version? 3 v1.20.2 selected
Code language: PHP (php)

path

現在使用している kubectl の絶対パスを出力するサブコマンドです。

$ kubectls path --help Usage: kubectl path Show current kubectl's abs path
$ kubectls path /Users/tkuchiki/.kubectls/versions/v1.20.2/kubectl

versions

install 済みの version 一覧を出力するサブコマンドです。

$ kubectls versions --help Usage: kubectl versions Show installed versions
$ kubectls versions v1.20.0 v1.20.1 v1.20.2 v1.20.4

update

kubectls を update するサブコマンドです。

$ kubectls update --help Usage: kubectl update Update kubectls

まとめ

kubectls の使い方を紹介しました。
複数 version を切り替えて使いたいケースは稀だと思いますが、version 間の差異を確認するときに役立つかもしれませんので使ってみてください。

Leave a Reply