Sysdigでコンテナを監視する

Sysdigでコンテナを監視する

[51CTO.com クイック翻訳]あなたのコンテナは今何をしていますか?あなたは知っていますか?どうやって走っているんですか?デプロイされたマイクロサービスに関連するシステムコールとイベントはどれですか?知らないなら、あなたは少し遅れています。

ご心配なく。詳細を掘り下げて必要な情報を簡単に入手できるツールがあります。 Sysdig はそのようなツールの 1 つです。設計上、sysdig はシステム コールとイベントを Linux カーネル (/proc からではなく) から直接収集し、strace、tcpdump、htop、iftop、lsof、および Wireshark が実行する作業を (独自に) 実行します。つまり、6 つのツールではなく 1 つのツールだけを使用すればよいことになります。さらに良いことに、Sysdig は 2015 年からコンテナに対応しています。そのため、Linux 上のマイクロサービスのトラブルシューティングが必要な場合、Sysdig が役立ちます。 Sysdig はコマンドライン ツールですが、この情報を簡単に表示できるようにする ncurses ユーザー インターフェイスが含まれています。

私が選択したサーバー オペレーティング システムである Ubuntu Server 20.04 への Sysdig のインストールと使用方法について説明します。もちろん、Sysdig は Debian または Red Hat ベースのディストリビューションにインストールできます。これを機能させるには、Ubuntu Server の実行中のインスタンスと、sudo 権限を持つユーザーが必要です。コンテナ ランタイムも必要です (コンテナをデプロイおよび監視できるようにするため)。デモンストレーションのために、Docker エンジンと WordPress デプロイメント環境を使用します。

Sysdigをインストールする

最初に行う必要があるのは、Sysdig をインストールすることです。これを行うには、Ubuntu サーバーにログインし、次のコマンドを実行します。

  1. curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig |sudo bash

これにより、すべての依存関係と Sysdig の最新バージョンがインストールされます。

WordPress Dockerコンテナをデプロイする

監視対象として WordPress Docker コンテナをデプロイしましょう。これは、1 回限りのコンテナをデプロイするよりも少し複雑ですが、デプロイ方法を知っておく必要があります。

まず、次のコマンドで MariaDB コンテナをプルします。

  1. sudo docker pull mariadb

次に、次のコマンドを使用して、WordPress データ (永続ストレージ用) を保持する必要なフォルダーを作成します。

  1. sudo mkdir /opt/wordpress
  2. sudo mkdir -p /opt/wordpress/データベース 
  3. sudo mkdir -p /opt/wordpress/html

MariaDB コンテナを作成します。

  1. docker run -e MYSQL_ROOT_PASSWORD=PWORD1 -e MYSQL_USER=wpuser -e MYSQL_PASSWORD=PWORD2 -e MYSQL_DATABASE=wordpress_db -v /opt/wordpress/データベース:/var/lib/mysql --name wordpressdb -d mariadb  

PWORD1 と PWORD2 は固有の強力なパスワードです。

次のコマンドを使用して、WordPress の最新バージョンを取得します。

  1. docker pull wordpress:最新

WordPress コンテナをデプロイします。

  1. docker run -e WORDPRESS_DB_USER=wpuser -e WORDPRESS_DB_PASSWORD=PWORD2 -e WORDPRESS_DB_NAME=wordpress_db -p 8081:80 -v /opt/wordpress/html:/var/www/html --link wordpressdb:mysql --name wpcontainer -d wordpress  

ここで、「PWORD 2」は、前の docker run コマンドで wpuser に設定したパスワードです。

これで、ブラウザで http://SERVER:8081 (SERVER はホスティング サーバーの IP アドレス) にアクセスし、WordPress のインストールを完了できます。

Sysdig の使い方は?

監視対象が決まったので、Sysdig の使い方を見てみましょう。私は ncurses コマンドライン インターフェイスを使用することを好むため、sysdig コマンドの代わりに csysdig を使用します。

まず、次のコマンドを使用して、現在実行中のコンテナを一覧表示します。

  1. sudo csysdig -vコンテナ

デプロイしたコンテナが WordPress サイト用のみである場合は、次の 2 つのコンテナが実行されているはずです。

  • ワードプレス
  • マリアdb

リストには、各コンテナが使用する CPU の量、関連付けられているプロセス、スレッド、仮想メモリ、常駐メモリ、ファイル、使用されているエンジン、コンテナ ID の数も表示されます。つまり、Sysdig を使用することの価値がわかりました。

このビューを終了するには、[Ctrl]+キーボードショートカットを使用します。

さらに詳しい情報を入手したほうが良いかもしれません。コンテナに関連付けられているすべてのプロセスを表示するには、次のコマンドを実行します。

  1. sudo csysdig -pc

見つかったプロセスごとに次の内容がリストされます:

  • PID (プロセスID)
  • PPID (親プロセス ID)
  • VPID (仮想プロセスID)
  • CPU (コンテナが使用するCPU)
  • USER (コンテナを起動するユーザー)
  • 仮想メモリ
  • RES (割り当てられた常駐メモリ)
  • ファイル(コンテナが使用するファイル)
  • ネット(コンテナが使用するネットワークI/Oの合計)
  • コンテナ(コンテナ名)
  • コマンド(コンテナが使用するコマンド)

上記のコマンドの問題点は、提供される情報が多すぎる可能性があることです。たとえば、特定のコンテナー (この記事では wpress という名前のコンテナー) に関連する情報のみを表示したいとします。これを行うには、次のコマンドを実行します。

  1. sudo sysdig -pc -c topprocs_cpu コンテナ。名前=wpコンテナ

上記のコマンドを実行すると、次の情報がリストされます。

  • CPU%
  • プロセス
  • ホストpid
  • コンテナpid
  • コンテナ名

おそらく、コンテナのネットワーク I/O を確認する必要があるでしょう。再び例を挙げて、以下を実行します。

  1. sudo sysdig -pc -c topprocs_net コンテナ。名前=wpコンテナ

または

  1. sudo sysdig -pc -c topprocs_net コンテナ。名前=wordpressdb

上記のコマンドを実行すると、次の内容がリストされます。

  • バイト
  • プロセス
  • ホストpid
  • コンテナpid
  • コンテナ名

上記のコマンドについて知っておくべきことの 1 つは、実際のネットワーク トラフィックがある場合にのみデータが表示されるということです。

WordPress コンテナへの I/O に関連するファイルを表示したい場合はどうすればよいでしょうか?これを行うには、次のコマンドを実行します。

  1. sudo sysdig -pc -c topfiles_bytes コンテナ。名前=wpコンテナ

これは、ファイルが使用されている場合にのみ出力を表示する別のコマンドです。

csysdig を使用してビューを切り替えることもできます。上記のコマンドのいずれかを表示しているときに、F2 キーを押して、使用可能な csysdig ビューのメニューを開きます (図 1)。

図1: csysdigビューメニューではビューを変更できます

コンテナ、コンテナ エラー、K8S コントローラー、K8S デプロイメント、K8S 名前空間などのオブジェクトのコンテナ中心のビューが表示されます。

ただし、csysdig コマンドを実行する前に、必要なパラメータとオプションを覚えておく必要があるとは思わないでください。実際には、次のようにするだけで済みます。

  1. sudo csysdig

コマンドが実行されたら、キーボードの F2 キーを押して目的のビューを選択します。これにより、コマンドの使用が非常に簡単になります (使用可能なオプションやパラメータ スイッチを覚えておく必要はありません)。

結論

Sysdig と csysdig は、ターミナル ウィンドウからコンテナーの展開環境を監視およびトラブルシューティングするのに役立つ強力なツールです。インストールも使用も簡単です。 csysdig の機能の詳細については、次のコマンドを実行してください。

  1. 男 csysdig

または

  1. マンシスディグ

原題: Sysdig でコンテナを監視する、著者: Jack Wallen

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください。

<<:  Xinchuang Cloudについてどれくらい知っていますか?

>>:  シスコ、イスラエルのクラウドサービスアプリケーションソリューションスタートアップEpsagonの買収を発表

推薦する

webhostingbuzz - プロフェッショナル WordPress ホスティングが 50% オフ / VPS (onapp/managed) が 80% オフ

webhostingbuzz は、仮想ホスト\VPS などの割引コードを公開しています: 割引コード...

#高トラフィックサーバー# bacloud-リトアニア/89 USD/E3-1230v6/16gDDR4/2x2T ハードディスク

リトアニアのホスティング プロバイダー bacloud についてお話ししましょう。親会社は UAB ...

2020年第4四半期のクラウドインフラ支出は400億ドルに迫る

Canalys の新しいデータによると、クラウド インフラストラクチャへの支出は 2020 年第 4...

ウェブマスターネットワークの最初のタオバオSEOトレーニングコースの申し込み受付が始まりました

Taobao 検索ランキングの最適化は、Taobao SEO とも呼ばれ、Taobao ストアを開設...

SEOVIPランキング分析は従来のSEO最適化の概念を覆す

SEO 業界に参入してから 1 年半の間、私の哲学は常に、キーワードの最適化を二次的な優先事項として...

SharkTech: OpenStack 専用クラウド、月額 43 ドルから、16G メモリ/8 コア/500g SSD/5T トラフィック、60G の高防御

SharkTech は、簡単に言えば、プリペイドのベアメタル サーバー (リソースを独占的に使用する...

クラウドファーストのプロセス統合がクラウド アプリケーションに最適なのはなぜですか?

パンデミックにより、企業のデジタル技術への支出が増加し続け、デジタルとクラウドの導入が加速しました。...

ウェブサイト SEO 最適化の専門性に関する Baidu の内部評価原則

私は再び SEO に関する記事を書き始めましたが、SEO は以前と同じくらいシンプルであることがわか...

半月でウェブサイトを2つに変更する全プロセスを共有

はじめに:多くの企業のウェブマスターが長い間悩んでいる問題は、短期間でウェブサイトを迅速に改善する方...

A5年末レビュー: インターネットで話題のニューストップ10

2013 年が過ぎ去り、2014 年がやって来ます。今年を振り返ると、合併や買収、IPO、ビットコイ...

Facebookの2時間にわたるサービス停止はハッカー集団によるものかもしれない

テンセントテクノロジーニュース(万学)北京時間6月2日、海外メディアの報道によると、ソーシャルネット...

質の高いソフト記事を書くためのテクニックとは?

最近、私は a5 にかなり多くの記事を投稿しています。毎日 1 ~ 2 本の記事です。正直に言うと、...

A5とbShare: 情報を共有してポイントを獲得し、賞品と交換

最近、Admin5 Webmaster Networkは、国内の有名なソーシャル画像およびテキスト共...

百度プロモーション

今日、ウェブマスターのウェブサイトの記事を読んでいたとき、「ドロップダウンワード」という言葉を見つけ...

アプリプロモーションのオフラインチャネルの連絡先リスト

D.Phone D.Phoneグループ本社 李建松 モバイル:18612887718 QQ:9666...