Translated message

A translation of this page exists in English.

Red Hat Enterprise Linux Atomic System Activity Data Collector (sadc) コンテナーイメージの使用ガイド

更新 -

Red Hat Enterprise Linux sadc Atomic コンテナーイメージは、sysstat パッケージで提供されるシステム監視やデータ収集ユーティリティを Docker フォーマットのコンテナーとして提供します。このコンテナーは、Red Hat Enterprise Linux Atomic host で実行するために設計されました。このコンテナーをインストールして実行すると、Atomic システムで以下のようなことができます。

  • システムアクティビティのデータが継続的に収集される。
  • cifsiostatiostatmpstatnfsiostatpidstatsadf、および sar を使用してデータを表示する。このコマンドは、docker exec sadc コマンドから実行できます。

ここでは、sadc コンテナーを取得して実行する方法を説明します。

sadc コンテナーの概要

(sar、iostat、sadc などのツールを提供する) sysstat パッケージは Red Hat Enterprise Linux Atomic host にインストールされていないため、sadc コンテナーが、これらのユーティリティを Atomic host に追加する方法を提供します。以下は、sadc コンテナーの主な機能です。

  • atomic コマンドからインストールする。"atomic install" コマンドを使用して sadc コンテナーを取得して実行すると、コンテナーをレジストリから取得し、sadc サービスが必要とするファイルとディレクトリーをホストに追加し、docker run でコンテナーを起動できます。

  • ホストから設定する。sadc データ収集サービスに必要なファイルは Atomic host に保存されるため、コンテナーの中に入る必要はありません。すべての設定はホストから実行できます。

  • スーパーユーザー特権を持つコンテナー。sadc コンテナーを実行すると、コンテナーからホストシステムへの権限が付与されます。コンテナーには、RHEL Atomic host への root アクセスがあり、特権が付与されている設定とログファイルへのアクセスが行われます。特権を持つコンテナーついては、Running Privileged Docker Containers in RHEL Atomic を参照してください。

RHEL sadc コンテナーを取得して実行する

Red Hat Enterprise Linux Atomic host で sadc コンテナーを使用するには、以下の手順に従ってコンテナーをインストールしてロードし、実行する必要があります。

  1. RHEL Atomic Host をインストールする。RHEL Atomic host をインストールして設定する方法については、Red Hat Enterprise Linux Atomic Host Documentation ページに登録されているインストールガイドを参照してください。

  2. RHEL sadc コンテナーをインストールする。RHEL Atomic host にログインしたら、以下のコマンドを実行して sadc コンテナーを取得して起動する必要があります。

    # docker pull rhel7/sadc
    # atomic install rhel7/sadc
    docker run --rm --privileged --name sadc -v /:/host -e HOST=/host -e IMAGE=rhel7/sadc -e NAME=name rhel7/sadc /usr/local/bin/sysstat-install.sh
    Installing file at /host//etc/cron.d/sysstat
    Installing file at /host//etc/sysconfig/sysstat
    Installing file at /host//etc/sysconfig/sysstat.ioconf
    Installing file at /host//usr/local/bin/sysstat.sh
    
  3. sadc コンテナーを起動する。RHEL sadc コンテナーを実行するには atomic コマンドを実行します。以下のコマンドを実行すると、適切なオプションを追加した docker コマンドを実行してコンテナーを起動します。

    # atomic run rhel7/sadc
    docker run -d --privileged --name sadc -v /etc/sysconfig/sysstat:/etc/sysconfig/sysstat -v /etc/sysconfig/sysstat.ioconf:/etc/sysconfig/sysstat.ioconf -v /var/log/sa:/var/log/sa -v /:/host -e HOST=/host -e IMAGE=rhel7/sadc -e NAME=sadc --net=host --restart=always rhel7/sadc /usr/local/bin/sysstat.sh
    11c566e20ec995a164f815d9bb76b4b876c555f507c9f56c41f5009c9b1bebf4
    

    atomic コマンドを実行すると、 sadc コンテナーを起動するための docker コマンドが実行されます。sadc コンテナーは、スーパー特権コンテナーとして実行されます。スーパー特権コンテナーについては、Running Super Privileged Docker Containers on a Red Hat Enterprise Linux Atomic Host を参照してください。

  4. コンテナーが実行していることを確認する。以下のコマンドを実行して、sadc コンテナーが実行していることを確認します。

    # docker ps
    CONTAINER ID IMAGE                                             COMMAND              CREATED       STATUS       PORTS NAMES         
    11c566e20ec9 registry.access.stage.redhat.com/rhel7/sadc:7.1-3 "/usr/local/bin/syss 3 minutes ago Up 2 minutes       sadc
    

    注意: "registry.access.redhat.com/rhel7/sadc:7.1-3" は、ダウンロードしたレジストリの名前と、取得したイメージのバージョンが含まれたイメージの正式な名前です。コンテナー自体はローカルで実行しますが、単に "sadc" と呼ばれます。イメージとコンテナーでは、docker の動作方法が異なります。

  5. sadc データを生成する。シェルに以下のコマンドを実行してシステムアクティビティのデータを作成し、sadc が適切に動作していることを確認します。

    # docker exec sadc /usr/lib64/sa/sa1 1 1
    
  6. sadc が適切に動作することを確認する。sadc がシステムアクティビティデータを生成したら、以下のような sar コマンドを実行して確認できます。

    # docker exec sadc sar
    Linux 3.10.0-229.el7.x86_64 (minion1.example.com) 02/27/15 _x86_64_ (1 CPU)
    
    09:31:25          LINUX RESTART
    09:32:00 CPU %user  %nice %system  %iowait  %steal   %idle
    09:32:18 all 0.86   0.00    0.92      0.00    0.00   98.22
    

sadc が動作している場合は、実行した sadc コマンドで生成されたデータを確認できます。新しいデータは 10 分ごとに生成されます。したがって、sar コマンドを再度実行して、データが継続的に収集されていることを確認します。

sadc コンテナーを実行する際の注意点

ここでは、sadc コンテナーの実行に関するその他の注意点について説明します。

  • sysstat コマンドを実行する。sysstat パッケージのコマンドを実行すれば、sadc コンテナーが生成するデータを表示できます。たとえば、cifsiostatiostatmpstatnfsiostatpidstatsadfsar などのコマンドが含まれます。これらのコマンドは Atomic host 上にないため、docker exec で実行する必要があります。たとえば、以下のようになります。

    # docker exec sadc iostat
    
  • イメージとコンテナーのライフサイクル
    Red Hat Enterprise Linux sadc Atomic コンテナーイメージを新しいバージョンにアップグレードする場合は、docker pull rhel7/sadc コマンドを実行して新しいイメージをダウンロードするだけでは不十分です。その後、新しいイメージから新規のコンテナーを作成するには、再実行する前に、以下のコマンドを実行して既存の sadc コンテナーを明示的に削除する必要があります。

    # docker stop sadc
    # docker rm sadc
    

Comments