K8S練習(XIII):kubectlプラグイン管理ツールKREW

環境説明:

ホスト名 オペレーティングシステムのバージョン IP ドッキングウィンドウのバージョン オムレツバージョン コンフィギュレーション リマーク
マスター CentOSに1810年7月6日 172.27.9.131 ドッカー18.09.6 V1.14.2 2C2G マスターホスト
node01 CentOSに1810年7月6日 172.27.9.135 ドッカー18.09.6 V1.14.2 2C2G ノードノード
node02 CentOSに1810年7月6日 172.27.9.136 ドッカー18.09.6 V1.14.2 2C2G ノードノード

 

K8Sは、展開を参照してくださいをクラスタ化:Centos7.6展開K8S(v1.14.2)クラスタ
教材K8Sを参照してください:基本概念、kubectlコマンドと情報の共有を

 

A、K8Sコアコンポーネント

写真.PNG

Kubernetesは、主に以下のコアコンポーネントで構成されます。

  • etcdは、クラスタ全体の状態を保存します。
  • apiserverは唯一の入り口リソースの操作を提供し、認証、許可、アクセス制御、APIの登録と発見メカニズムを提供します。
  • このような等故障検出、自動拡張、ロールオーバーなど、クラスタの状態を維持する責任コントローラマネージャ.;
  • スケジューラは、ポッド対応マシンをスケジュールするために所定のスケジューリングポリシーに応じたスケジューリングリソースに責任があります。
  • コンテナのライフサイクルを維持する責任kubelet、それはまた、ボリューム(CVI)とネットワーク(CNI)の管理を担当します。
  • コンテナランタイムは、画像の管理と実際に実行ポッドおよびコンテナ(CRI)の責任です。
  • KUBE-プロキシクラスタは、サービス発見と負荷分散のために内部のサービスを提供する責任があります

二、kubectlプロフィール

kubectlがKubernetesコマンドラインツール(CLI)で、それはKubernetesのユーザーであり、必要な経営管理者
ツールを。kubectlツール制御Kubernetesクラスターマネージャー。これは、クラスタリソースを確認し、作成、削除、およびグループ更新することができます
メンバーを、そしてより。kubectlは、様々な機能Kubernetesクラスタの管理を容易にするために、サブコマンドの多数を提供します。

1.kubectlの使用状況

  • サブコマンドのリストを参照するにはkubectl -h
  • kubectlオプションはグローバルオプションを参照してください
  • サブコマンドのヘルプを表示するにはkubectl <コマンド> --help
  • kubectl [コマンド] [PARAMS] -o = <フォーマット>(例えばJSON、YAML、jsonpath等)出力形式を設定します
  • [リソース]ビューのリソースを説明kubectl定義されました

2.kubectlプラグKREW

krew これは、aptのか、yumを、検索のサポート、インストールおよび管理kubectlプラグに似kubectlプラグを、管理するためのツールです。

三、KREWインストール

1.gitインストール

[root@master ~]# yum -y install git

KREWインストール2.

  set -x; cd "$(mktemp -d)" &&
  curl -fsSLO "https://github.com/kubernetes-sigs/krew/releases/download/v0.3.2/krew.{tar.gz,yaml}" &&
  tar zxvf krew.tar.gz &&
  ./krew-"$(uname | tr '[:upper:]' '[:lower:]')_amd64" install \
    --manifest=krew.yaml --archive=krew.tar.gz

写真.PNG

その理由は、ネットワークメディアが原因である可能性があり、ダウンロードしたGitHubのをアップロードすることはできません。https://github.com/loong576/krew-for-kubectl.git

3.負荷の環境変数

[root@master ~]# export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"

恒久的にログアウトした後、失敗を回避するために、ユーザーの環境変数ファイルに書き込むことができます。

4.インストール資格

[root@master ~]#  kubectl plugin list 
The following compatible plugins are available:

/root/.krew/bin/kubectl-krew

インストールは完了です

四、KREW使用

1.プラグインデックス更新

[root@master ~]# kubectl krew update
Updated the local copy of plugin index.

2.プラグ検索

[root@master ~]# kubectl krew search
[root@master ~]# kubectl krew search crt

すべてのアドインとあいまい検索を検索

写真.PNG

3.プラグインをインストール

[root@master ~]# kubectl krew install get-all
[root@master ~]# kubectl krew install ns tail

写真.PNG

4.ビューがプラグインをインストールされています

[root@master ~]# kubectl krew list
PLUGIN   VERSION
get-all  v1.2.1
krew     v0.3.2
ns       v0.7.1
tail     v0.10.1

プラグの詳細を確認してください。5.

[root@master ~]# kubectl krew info ns
NAME: ns
URI: https://github.com/ahmetb/kubectx/archive/v0.7.1.tar.gz
SHA256: 6df4def2caf5a9c291310124098ad6c4c3123936ddd4080b382b9f7930a233ec
VERSION: v0.7.1
HOMEPAGE: https://github.com/ahmetb/kubectx
DESCRIPTION: 
Also known as "kubens", a utility to set your current namespace and switch
between them.

CAVEATS:
\
 |  If fzf is installed on your machine, you can interactively choose
 |  between the entries using the arrow keys, or by fuzzy searching
 |  as you type.
 |  
 |  See https://github.com/ahmetb/kubectx for customization and details.
/

6.プラグインの更新

[root@master ~]# kubectl krew upgrade ns
Updated the local copy of plugin index.
F1118 17:21:47.271927   81116 root.go:58] failed to upgrade plugin "ns": can't upgrade, the newest version is already installed

アップデートプラグ-nsが、それは最新バージョンですので、更新に失敗し、コマンドですべて更新プラグイン「をkubectlアップグレードKREW」

7.プラグ--ns

[root@master ~]# kubectl
kubectl          kubectl-get_all  kubectl-krew     kubectl-ns       kubectl-tail  
[root@master ~]# kubectl ns weave
[root@master ~]# kubectl-ns default

写真.PNG

コマンドを通じてkubectl <プラグイン名>バーレーンkubectl- <プラグイン名>使用プラグインのような「kubectl NS織り」と「kubectl-NSデフォルト」に切り替えることができるデフォルトの表領域ウィジェットまたは

8.プラグ--get-全て

[root@master ~]# kubectl-get_all

写真.PNG

このコマンドは、「すべての--all-の名前空間を取得kubectl」に似ていますが、より完全な。

9.プラグ---テール

[root@master ~]# kubectl-tail
[root@master ~]# kubectl-tail --ns default 
[root@master ~]# kubectl-tail --rs kubeapps-8fd98f6f5
[root@master ~]# kubectl-tail --rs kubeapps/kubeapps-8fd98f6f5 

テール出力ポッドをログに記録し、上記のコマンドは次のとおりです。すべてのポッドログ出力、デフォルトの名前空間ポッドログのすべての出力、すべての名前空間のすべての出力でさらにreplicaSetポッドログkubeapps-8fd98f6f5出力名前空間kubeappsとさらにreplicaSetがありますkubeapps- 8fd98f6f5ポッドログ。

写真.PNG

プラグアンインストール10

[root@master ~]# kubectl krew uninstall tail
Uninstalled plugin tail

プラグイン尾のアンインストール

五、KREWアンインストール

1.レビューのインストールディレクトリ

rm -rf ~/.krew
[root@master ~]# kubectl krew version
OPTION        VALUE
GitTag        v0.3.2
GitCommit     bd754e1
IndexURI      https://github.com/kubernetes-sigs/krew-index.git
BasePath      /root/.krew
IndexPath     /root/.krew/index
InstallPath   /root/.krew/store
DownloadPath  /tmp/krew-downloads
BinPath       /root/.krew/bin

2.アンインストール

[root@master ~]# rm -rf  /root/.krew 

 
 

本論文では、すべてのスクリプトと設定ファイルがアップロードされました:K8S練習(XIII):kubectlプラグイン管理ツールをKREW

おすすめ

転載: blog.51cto.com/3241766/2452592