以下の内容はhttps://thaim-til.hatenablog.jp/entry/2024/09/09/235723より取得しました。


Krewでkubectlのプラグインを管理する

kubectlはプラグイン機構を備えている。プラグインの仕組みを利用することで、kubectlにサブコマンドを追加して公式cliにはない機能を実現できる。

kubernetes.io

Krewによるプラグイン管理

プラグインはファイル名が kubectl-から始まる実行可能なファイルであればよく、インストール先のディレクトリ等に制約は無い。 このため、プラグインごとに異なるインストール方法やアップデート方法が必要になり、管理が大変だった。

これを解決するのがKrewで、統一的なインストール手順やプラグインの一括更新といった仕組みを提供してくれる。 また、プラグイン一覧を krew-indexとして管理しているので必要なプラグインを簡単に探すことができる。プラグイン一覧はドキュメントにも掲載されている。

krew.sigs.k8s.io

Krewでプラグインをインストールするには kubectl krew install <pluginname>を実行すればよい。また、複数のプラグイン名を列挙したり、kubectl krew listの出力と同じフォーマットを入力として受け付けるので簡易的なプラグイン一覧の管理も可能。

$ kubectl krew install --help
...
Examples:
  To install one or multiple plugins from the default index, run:
    kubectl krew install NAME [NAME...]

  To install plugins from a newline-delimited file, run:
    kubectl krew install < file.txt
...

Krewにはできないこと

Krewにはプラグインのバージョン管理の仕組みは存在しない。 プラグインの更新(kubectl krew upgrade)を実行すると最新バージョンに更新してくれるが、利用可能なバージョンの範囲を指定することはできない。

また、シグネチャ等でプラグインを検証する仕組みも提供されていない。 こちらはいくつかのIssueで提案されており需要はありそうだが具体的な話が進んでいるわけではなさそう。

github.com

github.com




以上の内容はhttps://thaim-til.hatenablog.jp/entry/2024/09/09/235723より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14