非常に便利な Kubernetes リアルタイム ログ表示ツール 2 つ

非常に便利な Kubernetes リアルタイム ログ表示ツール 2 つ

[[358056]]

通常、Kubernetes 環境のアプリケーション ログは、Filebeat + ElasticSearch + Kibana の組み合わせなどのログ システムを通じて収集する必要があります。この組み合わせは非常に強力ですが、比較的単純なテスト クラスターや、ブラウザーのない自動化/コンソール環境では、複数の Pod からのログを自動的にマージして集中的に表示することは、問題の処理や障害のデバッグに非常に役立ちます。

本日は、非常に便利なマルチコンテナのリアルタイム ログ表示ツールである Stern と Kubetail を 2 つ紹介します。

スターン

Kubectl 自体の Log コマンドは、複数の Pod コンテナ内のログを同時に表示することをサポートしていません。スターンはこの問題を非常にうまく解決します。複数のコンテナのログを同時に追跡できることに加えて、次の強力な機能もサポートしています。

  • 正規表現を使用して、末尾に付ける必要がある PodName を選択できるようにします。
  • 異なるポッドのログ出力の色をカスタマイズする
  • ルールを満たす新しく作成されたポッドを自動的に追加して追跡する
  • ....

プロジェクトアドレス: https://github.com/wercker/stern

スターンのインストール

Stern は Go 言語で開発されており、インストールが非常に簡単で、すぐに使用できます。対応するプラットフォームに関連するバイナリのプリコンパイル済みインストール パッケージをダウンロードするだけで使用できます。

Linux プラットフォームを例に挙げてみましょう。

  1. https://github.com/wercker/stern/releases/download/1.11.0/stern_linux_amd64 をダウンロードしてください
  2. $ chmod +x stern_linux_amd64
  3. $ mv stern_linux_amd64 /usr/ローカル/bin

macOS を使用している場合は、Homebrew を使用して直接インストールできます。

  1. $ brew install stern

スターンの使用

Stern は多くの機能をサポートしており、使い方も豊富です。いくつかの一般的な例を見てみましょう。

現在の名前空間内のすべてのポッド内のすべてのコンテナのログをリアルタイムで表示する

  1. $ スターン。

ポッド内の指定されたコンテナのログをリアルタイムで表示する

  1. $ stern envvars --コンテナゲートウェイ 

指定したコンテナを除く、指定した名前空間内のすべてのコンテナのログをリアルタイムで表示します。

  1. ステージングコンテナを除外するには、 istio-proxy を実行します。  

指定された時間範囲内のコンテナのログをリアルタイムで表示します。次の例では、15 分以内のログを示しています。

  1. $ stern auth -t --since 15m  

指定した名前空間内のコンテナのログをリアルタイムで表示する

  1. $ stern kubernetes-dashboard --namespace kube-system  

すべての名前空間内の指定されたラベルを持つコンテナのログをリアルタイムで表示します。

  1. $ stern --all-namespaces -l run=nginx  

詳しい使い方については、「公式ドキュメント」を参照してください。

クベテイル

Kubetail は、複数の Pod からのログをマージし、カラー出力をサポートするシェル スクリプトです。

プロジェクトアドレス: https://github.com/johanhaleby/kubetail

Kubetailをインストールする

Kubetail は単なるシェル スクリプトなので、ダウンロード後すぐに使用できます。

  1. $ wget https://raw.githubusercontent.com/johanhaleby/kubetail/master/kubetail
  2. $ chmod +x kubetail
  3. $ cp kubetail /usr/ local /bin

macOS を使用している場合は、Homebrew を使用して直接インストールすることもできます。

  1. $ brew Tap johanhaleby/kubetail && brew install kubetail

Kubetail は、Oh-my-zsh、Antigen などのさまざまな SHELL 管理フレームワークもサポートしています。具体的なインストール方法については、「公式インストール ドキュメント」を参照してください。

Kubetailの使用

Kubetail の使い方も非常に簡単です。基本的な構文は次のとおりです。

  1. $ kubetail <検索語> [-h] [-c] [-n] [-t] [-l] [-d] [-p] [-s] [-b] [-k] [-v] [-r] [-i]

いくつかの一般的なパラメータの説明:

  1. -c: マルチコンテナポッド内のコンテナ名を指定します
  2. -t: Kubeconfigファイルでコンテキストを指定する
  3. -l: ラベル フィルター。 -l パラメータを使用した後、Pod 名は無視されます。
  4. -n: 名前空間を指定する
  5. -s: 5 秒、2 分、3 時間などの相対時間後にログを返すように指定します。デフォルトは 10 秒です。
  6. -b: ラインバッファを使用するかどうか。デフォルトはfalse  
  7. -k: 出力内容の特定の色付け部分を指定、pod: ポッド名のみを色付け、line: 行全体を色付け(デフォルト)、 false : 色付けなし

いくつかの使用例:

  1. $ kubetail my-pod-v1
  2. $ kubetail my-pod-v1 -c 私のコンテナ
  3. $ kubetail my-pod-v1 -t int1-context -c my-container
  4. $ kubetail '(サービス|コンシューマー|もの)' -e 正規表現
  5. $ kubetail -l サービス=私のサービス
  6. $ kubetail --selector service=my-service --since 10m  
  7. $ kubetail --tail 1  

ここまで、非常に実用的なマルチコンテナリアルタイムログ表示ツールを 2 つ紹介しました。他にもっと良い類似ツールをお勧めいただける場合は、ぜひメッセージを残して話し合いましょう。

参照ドキュメント

https://www.google.com

https://zhuanlan.zhihu.com/p/60987559

https://blog.fleeto.us/post/introducing-kubetail/

この記事はWeChatの公開アカウント「Wonderful Linux World」から転載したものです。下のQRコードからフォローできます。この記事を転載する場合は、Wonderful Linux World のパブリック アカウントにご連絡ください。

<<:  ポピュラーサイエンス |クラウドコンピューティング、ビッグデータ、人工知能のわかりやすい入門

>>:  テンセントテックパーク開発者会議が間もなく開催され、世界中から200人以上の専門家がクラウドコンピューティングについて議論します

推薦する

Baidu は差別化せずに更新します。キーワードとアンカーテキストに注意してください。

Baiduが大規模なアップデートを行った際、多くのサイトが降格やK-edされた。降格やK-edされた...

ウェブフロントエンドデザイナー必読の2つの体験

Web フロントエンド デザインは、常に人材不足の業界です。実践者には、しっかりとした理論的知識基盤...

Kafka のデータストレージの原則についての理解について話します

5 年間の職務経験を持つ友人が、面接中に次のような質問を受けました。「Kafka データ ストレージ...

Sina Weiboの実践ツールを詳しく解説(第2部)

パート4: コンテンツ分析Weibo コンテンツの分析は、コンテンツの包括的な分析と単一のコンテンツ...

熊張豪の名刺検索機能の設定手順

月収10万元の起業の夢を実現するミニプログラム起業支援プラン熊張浩検索カードは、百度モバイル検索結果...

クラウドコンピューティングの PAAS と SAAS の違いを 1 つの記事で理解する

クラウド コンピューティングが非常に普及している今日、クラウド ホストをレンタルするだけでクラウド ...

pqhosting: オランダの大容量ハードドライブ VPS + 無制限のトラフィック + DMCA を無視、月額 3.77 ユーロから

pqhosting は、新しいオランダの大容量ハード ドライブ VPS (ストレージ VPS ではな...

Zhihu は収益化のために電子商取引に依存していますか?

「ねえ、今からZhihuで買い物してもいい?」長い間知湖を訪れていなかった小呉さんは、ウェブサイトに...

クラウドワークロードの高度な保護

さまざまな理由から、今日多くの企業は効率性を向上させ、コンピューティング リソースを分散するために複...

支部を指揮せよ!従来の業界ではOpenStackを使用して業界クラウドを構築しています

[51CTO.com からのオリジナル記事] 2016 OpenStack Barcelona Su...

アリババクラウドが高速オンライン課金プラットフォームを立ち上げ、課金精度が2倍に

6月9日、アリババクラウドは2020年アリババクラウドオンラインサミットにおいて、スマートハイウェイ...

モンデリーズ中国がアリババクラウドと提携、世界有数のスナック企業がデジタルアップグレードを開始

6月7日、雲奇会議上海サミットにおいて、世界的スナック食品大手のモンデリーズ・インターナショナルの代...

Ruiya Technology が FogPOD の新小売ソリューションを発表し、クラウドベースのインテリジェント管理の新時代を切り開く

2018 年 1 月 9 日、北京 - 中国のエンタープライズ IT クラウド管理およびインテリジェ...

データセンターの華氏68度という温度制限は過去のものとなった。仮想化によりサーバーが沸騰します。

[51CTO.com 6月18日海外ニュースの見出しの速報] データセンターを68度に冷却するのはす...

クラウドへの移行による 5 つの主なメリット

クラウド コンピューティング テクノロジーを採用することで、企業はセキュリティ、シンプルさ、データ共...