Linux ベアメタル・サーバーのモニター
IBM Cloud Monitoring でベアメタル・サーバーをモニターするには、そのサーバーにモニタリング・エージェントを構成します。 モニタリング・エージェントでは、IBM Cloud Monitoring インスタンスでの認証のためにアクセス・キー (トークン) を使用します。 モニタリング・エージェントは、データ・コレクターとして機能します。 このエージェントが、メトリックを自動的に収集します。 Web ベースのユーザー・インターフェースを使用してメトリックを表示します。 ベア・メタルは、 IBM Cloud、オンプレミス、およびその他のクラウドでモニターできます。
デフォルトでは、このエージェントは、ホストのモニターに使用できるコア・インフラストラクチャーとネットワーク時系列を収集します。 収集されたメトリックのリストについては、 非オーケストレーション環境で使用可能なメトリック を参照してください。
Monitoring エージェントは、ホストごとに以下のタイプのシステム・メトリックを自動的に収集します。
-
System hosts metrics
は、すべてのプロセスのパフォーマンスとリソース使用率を分析するために使用できる、CPU、メモリー、およびストレージの使用量メトリックに関する情報を提供します。 -
File and File System metrics
は、システムで発生するファイル対話を分析するために使用できるファイルおよびファイル・システムに関する情報を提供します。 例えば、オープン・ファイル、送受信バイト数、または特定のファイル・システムの使用率に関する情報を見つけることができます。 -
Process metrics
は、サーバーで実行されるプロセスに関する情報を提供します。 例えば、これらのメトリックを使用して、プロセスの数を調べたり、クライアントまたはサーバーの情報を取得したりすることができます。 -
Network metrics
は、ネットワークに関する情報を提供します。 これらは、アプリケーション、コンテナー、およびサーバーの間で確立された接続に対する洞察を提供します。 例えば、送受信されているバイト数や、HTTP 要求、接続、および待ち時間の数に関する情報を見つけることができます。 また、SQL または MongoDB の場合、エージェントは、トラブルシューティング・モードで構成されているときに追加情報を収集します。
Monitoring UI を使用すると、アドバイザータブ、探索タブ、およびダッシュボードタブでデータを分析できます。 メトリック・ビューおよびダッシュボードを使用してデータをモニターします。
データをモニターする際には、以下の情報を考慮してください。
-
エクスプローラータブでは、個々のメトリックをモニターできます。
-
Advisor タブでは、 Red Hat OpenShift またはホスト・レベルのメトリクスを監視できます。
このタブは、 Red Hat OpenShift またはホスト・レベルのメトリクスを監視するアクセス権を持つチームに所属するユーザーのみが使用できます。
-
*「ダッシュボード」*タブでは、事前定義されたダッシュボードまたはカスタム・ダッシュボードのパネルを使用してモニターし、ネットワーク・データ、アプリケーション・データ、トポロジー、サービス、ホスト、およびコンテナーに関する特殊な洞察を得ることができます。 パネルでは、メトリックまたはメトリックのグループがダッシュボードに表示されます。
メトリック・ビューおよびダッシュボードごとに、データの有効範囲、データの集約方法、およびデータに適用する時間とグループ・フィルターを定義できます。 詳しくは、パネルの管理を参照してください。
ダッシュボードをチームのデフォルトのエントリー・ポイントとして構成し、チームのエクスペリエンスを統一し、ユーザーが最も関連性の高い情報にすぐに集中できるようにすることができます。
詳しくは、 メトリックの表示 を参照してください。
開始前に
-
IBM Cloud CLI をインストールします。 詳しくは、『IBM CloudCLI のインストール』を参照してください。
-
このトピックの手順を実行するには、ベアメタルからインターネットにアクセスできることを確認してください。 モニタリング・エージェントの構成に必要になります。
-
端末とベアメタル・サーバーの間の VPN 接続を構成します
仮想プライベート・ネットワーキング (VPN) を利用することで、ユーザーは、IBM Cloud® プライベート・ネットワークでリモートからすべてのサーバーを安全に管理することができます。 お客様のロケーションからプライベート・ネットワークへの VPN 接続では、暗号化された VPN トンネルを使用して、アウト・オブ・バンドの管理やサーバー・レスキューを行うことができます。 地理的な冗長性が得られるように、すべての IBM Cloud データ・センターまたは PoP が VPN トンネルに対応しています。
以下の手順を実行して、端末とベアメタル・サーバーの間の VPN 接続を構成します。
-
お使いのオペレーティングシステムに応じて、最新の
MotionPro
32 ビットまたは 64 ビットファイルを Array Networks Clients and Tools ダウンロードサイトからダウンロードしてください。 詳細はこちら。 -
スタンドアロンの SSL VPN クライアントを構成し、接続を開きます。
例えば、MacOS で MotionPro Plus クライアントを使用する場合は、プロファイルを追加するために**「追加」**をクリックします。
「
Basic
」セクションで「Title
」にタイトルを入力します。 「Gateway
」に入力します。例えば、ダラス 10 のベアメタルの場合は「vpn.dal10.softlayer.com
」と入力します。 VPN ユーザー名を入力します。 「Port
」に443
が設定されていることを確認します。 その後、**「OK」**をクリックします。セキュア接続を開くために、**「ログイン」**をクリックします。
-
SSH を使用してベアメタル・サーバーに接続します
セキュリティー・セットアップとベアメタル・ホストの
ssh
構成によっては、システムにアクセスするために VPN が必要になる場合があります。ユーザーの資格情報、または IBM Cloud コンソールで取得した root の資格情報を使用して、ホストに
ssh
で接続します。モニタリング・エージェントをインストールするには、root 権限が必要です。
例えば、以下の手順を実行して、サーバーへの
ssh
接続に必要なベアメタルの情報を取得できます。-
メニューアイコン
> クラシック・インフラストラクチャー > デバイス・リストをクリックします。
-
モニターするベアメタル・サーバーを見つけます。 パブリック IP をコピーします。
-
ベアメタル・サーバーのデバイス名をクリックします。
-
**「パスワード」**を選択します。 root ユーザーのパスワードをコピーします。
その後、端末から次のコマンドを実行します。
ssh <USER_ID>@<IP_ADDRESS>
ここで、
<USER_ID>
は、ベアメタル・サーバーへのログインに使用するユーザー ID です。 例えば、root
を使用してください。<IP_ADDRESS>
は、ベアメタル・サーバーのパブリック IP アドレスです。例:
ssh root@45.123.122.12
ベア・メタル・サーバーからメトリックを収集するためのモニター・エージェントの構成
ベアメタル・サーバーからメトリックを収集して IBM Cloud Monitoring インスタンスに転送するには、モニタリング・エージェントをインストールする必要があります。
コマンド・ラインから以下の手順を実行して、モニタリング・エージェントをインストールします。
-
アクセス・キーを取得します。 詳しくは、IBM Cloud UI を使用したアクセス・キーの取得を参照してください。
-
取り込み URL を取得します。 詳しくは、Collector エンドポイントを参照してください。
-
モニタリング・エージェントをデプロイします。 以下のコマンドを実行します。
curl -sL https://ibm.biz/install-sysdig-agent | sudo bash -s -- --access_key ACCESS_KEY --collector COLLECTOR_ENDPOINT --collector_port 6443 --secure true --tags TAG_DATA --additional_conf 'sysdig_capture_enabled: false'
説明
-
ACCESS_KEY はインスタンスの取り込みキーです。
-
COLLECTOR_ENDPOINT は、モニタリング・インスタンスが使用可能なリージョンの取り込み URL です。
-
TAG_DATA は、TAG_NAME:TAG_VALUE 形式のコンマ区切りタグです。 1 つ以上のタグをモニタリング・エージェントに関連付けることができます。 例えば、role:serviceX,location:us-south などです。 後で、これらのタグを使用して、エージェントが実行されている環境のメトリックを識別できます。
-
セキュア SSL/TLS 接続を使用してメトリックをコレクターに送信するには、SECURE フラグを true に設定する必要があります。
-
sysdig_capture_enabled を false に設定して、キャプチャー機能を無効にします。 デフォルトでは、true に設定されています。 詳しくは、キャプチャーの処理を参照してください。
cURL
がない場合は、インストールする必要があります。 例えば、Ubuntu ベアメタルの場合は、コマンドsudo apt-get update
を実行してください。 その後、インストール・コマンドsudo apt-get install curl
を実行します。例えば、米国南部 (ダラス) のモニタリング・インスタンスにメトリックを転送するモニタリング・エージェントをインストールするには、以下の例のコマンドを参照してください。
curl -sL https://ibm.biz/install-sysdig-agent | sudo bash -s -- -a xxxxxxxxxxxxx -c ingest.us-south.monitoring.cloud.ibm.com --collector_port 6443 --secure true -ac "sysdig_capture_enabled: false" --tags sourceType:baremetal,location:dallas
-
-
オーケストレーションされていない環境用にエージェントを構成します。
/opt/draios/etc/
にあるdragent.yaml
ファイルを開きます。以下のコンフィギュレーション・パラメーターを追加する:
feature: mode: monitor_light
エージェントを再始動します。 以下のコマンドを実行します。
service dragent restart
モニター UI を起動して、ベア・メタル・サーバーをモニターするためのデータを取得していることを確認します。
Web UI を起動するには、以下のステップを実行します。
-
ユーザー ID とパスワードを使用してログインすると、IBM Cloud コンソールが開きます。
-
「メニュー」 アイコン
> **「可観測性」**をクリックします。
-
**「モニタリング」**を選択します。
IBM Cloud で使用可能なインスタンスのリストが表示されます。
-
インスタンスを選択します。 次に、**「ダッシュボードを開く」**をクリックします。
モニタリング・エージェントが最初に情報を収集して処理している間は、ベアメタルのエントリーが表示されるまでに時間がかかることがあります。
モニターできるインスタンスは、ブラウザーごとに 1 つのみです。 同じインスタンスについて複数のタブが表示される場合があります。
ベアメタルのモニター
アドバイザータブでは、ホストおよび Kubernetes クラスターの正常性、リスク、および容量をモニターおよびトラブルシューティングできます。

- データは 10 分ごとに更新されます。
- メトリックは、イベント数と重大度によって優先順位付けされます。
- 詳しくは、 アドバイザーを参照してください。
「アドバイザー」 セクションで、ホストによるモニターを選択します。 リソースの正常性をモニターするために使用できる事前定義ダッシュボードを確認します。
ホスト別にモニターすることを選択した場合は、以下のいずれかのダッシュボードを選択できます。
- ホスト・リソース使用量
- ファイル・システム使用状況 & パフォーマンス
- メモリー使用量
- ネットワーク
- Sysdig エージェントの正常性 & 状況
センサー・メトリックをモニターするための IPMI エクスポーターの[オプション]構成 Prometheus
モニタリング・エージェントが自動的に収集する一連のメトリックに加えて、センサー・メトリックなどの他のメトリックも収集したい場合もあります。 Prometheus IPMI Exporter
を使用すると、ベアメタル・サーバーから Intelligent Platform Management Interface (IPMI) のデバイス・センサー・メトリックを収集できます。
- Prometheus の IPMI エクスポーターは、ローカルの IPMI デバイスと、Remote Management Control Protocol (RMCP) を使用してアクセス可能なリモート・デバイスをサポートします。
- RMCP を使用してリモート・デバイスにアクセスする場合は、1 つの IPMI エクスポーターを使用して複数の IPMI デバイスをモニターできます。 ターゲットのホスト名をパラメーターとして渡すことで、各デバイスを指定します。
- IPMI エクスポーターは、FreeIPMI スイートのツールに依存しています。
ベアメタル・サーバーに IPMI エクスポーターを構成すると、以下のメトリックを収集できます。
-
IPMI 管理メトリック
リモート・ホストからのデータが正常に収集されると、メトリック
ipmi_up {collector="<NAME>"}
は1
を報告します。 ローカル・ホストのデータが収集されると0
を報告します。メトリック
ipmi_scrape_duration_seconds
は、コレクターがデータを取得するために要した時間を報告します。 -
IPMI システム・イベント・ログ (SEL) のメトリック
メトリック
ipmi_sel_entries_count
は、システム・イベント・ログのエントリー数を報告します。メトリック
ipmi_sel_free_space_bytes
は、システム・イベント・ログの新規エントリーのための空きバイト数を報告します。 -
IPMI センサー・データ
IPMI エクスポーターは、センサー・タイプごとに 2 つのメトリック (状態および値) を収集します。
0
の値は、通常状態を報告します。1
の値は、警告状態を報告します。2
の値は、クリティカル状態を報告します。NaN
の値は、情報がないことを報告します。 例として、さまざまなセンサーのメトリックを以下に示します。温度センサーのメトリック:
ipmi_temperature_celsius
,ipmi_temperature_state
ファン速度センサーのメトリック:
ipmi_fan_speed_rpm
,ipmi_fan_speed_state
電圧センサーのメトリック:
ipmi_voltage_state
,ipmi_voltage_volts
-
マシンのシャーシの IPMI 電源状態
メトリック
ipmi_chassis_power_state
は、マシンのシャーシの現在の状態について報告します。 電源がオンのときには、値が1
になります。 電源がオフのときには、値が0
になります。 -
DCMI データ
メトリック
ipmi_dcmi_power_consumption_current_watts
は、稼働中のマシンの電力使用量 (ワット) を報告します。 -
BMC の詳細
メトリック ipmi_bmc_info の各ラベルにファームウェア・リビジョンと製造元に関する情報が入ります。値は
1
です。
詳細については、 Prometheus IPMI Exporterを参照。
Prometheus の IPMI エクスポーターを構成するには、以下の手順を実行します。
Prometheus の IPMI エクスポーターをインストールする
以下のステップを実行します。
-
ローカルターミナルから、 Prometheus IPMI エクスポーターをダウンロードする。
-
ベアメタル・サーバーで、
shh
セッションから、ディレクトリー/usr/monitor
を作成します。 以下のコマンドを実行します。cd /usr
mkdir monitor
-
ファイルをベアメタルにコピーします。 ファイルがあるディレクトリーから、以下のコマンドを実行します。
scp ipmi_exporter-v1.2.0.linux-amd64.tar.gz root@<IP_ADDRESS>:/usr/monitor/
ここで、
<IP_ADDRESS>
は、ベアメタル・サーバーのパブリック IP アドレスです。コマンドが失敗した場合は、VPN 接続がまだ開かれていることを確認してください。
-
ベアメタル・サーバーで、
shh
セッションから、ファイルを解凍します。 以下のコマンドを実行します。cd /usr/monitor/
tar -xvf ipmi_exporter-v1.2.0.linux-amd64.tar.gz
-
ベアメタル・サーバーで、
shh
セッションから、FreeIPMI スイートをインストールします。 以下のコマンドを実行します。sudo apt-get update
sudo apt-get install freeipmi
-
ベアメタル・サーバーで、
shh
セッションから、ipmi_local.yml
ファイルを確認します。 任意で、モニターしないセンサーを除外するようにファイルを更新することもできます。IPMI エクスポーターを解凍したディレクトリーに移動します。
cd ipmi_exporter-v1.2.0.linux-amd64/
構成ファイルを確認します。 コマンド
more ipmi_local.yml
を実行します。次のような内容のファイルが表示されます。# Configuration file for ipmi_exporter # This is an example config for scraping the local host. # In most cases, this should work without using a config file at all. modules: default: # Available collectors are bmc, ipmi, chassis, dcmi, and sel collectors: - bmc - ipmi - dcmi - chassis - sel # Got any sensors you don't care about? Add them here. exclude_sensor_ids: # - 2
-
ベアメタル・サーバーで、
shh
セッションから、IPMI エクスポーターを実行します。./ipmi_exporter --config.file=ipmi_local.yml &
-
IPMI エクスポーターが実行されていることを確認します。 コマンドを実行します。
ps -aux | grep ipmi
IPMI エクスポーターが実行されていることを確認できます。
Prometheus エクスポーターをインストールする
モニタリング・エージェントは、Prometheus エクスポーターからメトリックを自動的に収集します。 そのため、IPMI エクスポーターからメトリックを収集するには、Prometheus エクスポーターも構成する必要があります。
次の手順に従って、Prometheus エクスポーターを実行します。
-
ローカルターミナルから 、 Prometheus エクスポーターをダウンロードする。
-
ベアメタル・サーバーで、
shh
セッションから、ディレクトリー/usr/monitor/
に移動します。 以下のコマンドを実行します。cd /usr/monitor/
-
ファイルをベアメタルにコピーします。 ファイルがあるディレクトリーから、以下のコマンドを実行します。
scp prometheus-2.18.1.linux-amd64.tar.gz root@<IP_ADDRESS>:/usr/monitor/
ここで、
<IP_ADDRESS>
は、ベアメタル・サーバーのパブリック IP アドレスです。コマンドが失敗した場合は、VPN 接続がまだ開かれていることを確認してください。
-
ベアメタル・サーバーで、
shh
セッションから、ファイルを解凍します。 以下のコマンドを実行します。cd /usr/monitor/
tar -xvf prometheus-2.18.1.linux-amd64.tar.gz
-
prometheus.yml
ファイルを変更して、IPMI エクスポーターの scrape_configuration に関する情報を含めます。Prometheus ディレクトリーに移動します。
cd prometheus-2.18.1.linux-amd64/
prometheus.yml
ファイルを編集し、セクション scrape_configs を追加します。# my global config global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. # scrape_timeout is set to the global default (10s). # Alertmanager configuration alerting: alertmanagers: - static_configs: - targets: # - alertmanager:9093 # Load rules once and periodically evaluate them according to the global 'evaluation_interval'. rule_files: # - "first_rules.yml" # - "second_rules.yml" # A scrape configuration containing exactly one endpoint to scrape: # Here it's Prometheus itself. scrape_configs: # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name: ipmi metrics_path: '/metrics' scheme: http static_configs: - targets: ['localhost:9290'] labels: instance: baremetal01 region: us-south
-
Prometheus エクスポーターを実行します。
./prometheus &
ネットワーク設定を構成する
リモート・サーバーからメトリックを収集する場合は、以下の手順を実行します。
-
ipmi_exporter
へのアクセスがファイアウォールで許可されるようにします。 -
[オプション] VPC ルールの更新
プライベート・エンドポイントを使用する場合は、
9290
を指定してポートsource type = Security Group
のインバウンド・ルールをセキュリティー・グループに追加し、そのセキュリティー・グループをベアメタル・サーバーに対して選択します。
ベアメタル・サーバーで実行されているモニタリング・エージェントを更新する
以下のステップを実行します。
-
ベアメタル・サーバーで、
shh
セッションから、ディレクトリー/opt/draios/etc/
に移動します。 以下のコマンドを実行します。cd /opt/draios/etc/
-
/opt/draios/etc/dragent.yaml
を更新します。以下のセクションを
dragent.yaml
ファイルに追加します。prometheus: enabled: true interval: 30 log_errors: true max_metrics: 3000 max_metrics_per_process: 3000 max_tags_per_metric: 20 process_filter: - include: port: 9090 conf: port: 9090 path: "/metrics" - include: port: 9290 conf: port: 9290 path: "/metrics"
-
モニタリング・エージェントを再始動します。 以下のコマンドを実行します。
service dragent restart
Prometheus IPMI メトリックが表示されることを確認します。
以下のステップを実行します。
-
「メニュー」 アイコン
> **「可観測性」**をクリックします。
-
**「モニタリング」**を選択します。
-
作成したモニタリング・インスタンスを見つけます。 次に、**「ダッシュボードを開く」**をクリックします。
-
Explore
ビューで、**「Hosts and Containers」**を選択します。 次に、モニターするベアメタル・サーバーを選択します。「ホストとコンテナー」ビュー -
**「さらにダッシュボードとメトリックを選択する (select more Dashboards and Metrics)」**オプションを開きます。 次に、検索バーに ipmi と入力します。 IPMI メトリックのリストが表示されます。
IPMI メトリック
ベア・メタルの IPMI 状況を分析するためのダッシュボードの構成
IPMI メトリックをモニターするためのダッシュボードを作成するには、以下の手順を実行します。
-
ipmi_up
メトリックを選択します。ipmi_up メトリック -
3 点アイコンを選択します。 次に、**「Copy to dashboard」**を選択します。
「ダッシュボードのコピー」 -
[ベア・メタル] IPMI モニターという名前を入力します。 次に、**「Copy and Open」**をクリックします。
ダッシュボードをコピーして開きます ダッシュボードが開きます。
IPMI カスタム・ダッシュボード -
[ベア・メタル] IPMI モニターカスタム・ダッシュボードに IPMI メトリックを追加します。 モニターする IPMI メトリックごとに、この手順を繰り返します。
-
ドラッグ・アンド・ドロップやパネルのサイズ変更を行って、ダッシュボードのレイアウトを整えます。 そのレイアウトを保存します。
次のステップ
-
カスタム・ダッシュボードを作成します。 詳しくは、ダッシュボードの処理を参照してください。
-
アラートについての詳細を確認します。 詳しくは、アラートの処理を参照してください。
-
ログの管理方法を学ぶ IBM Cloud Logs の使用開始を 参照してください。
-
IBM Cloud Monitoring Workload Protection 機能について学習し、ソフトウェアの脆弱性の検出と優先順位付け、脅威の検出と対応、ソースから実行までの構成、権限、およびコンプライアンスの管理を行います。 IBM Cloud® Security and Compliance Center Workload Protectionの概要 を参照してください。