第5章 collectd プラグイン
Red Hat OpenStack Platform (RHOSP) 16.1 環境に応じて、複数の collectd プラグインを設定できます。
次のプラグインのリストは、デフォルトをオーバーライドするのに設定できる使用可能なヒートテンプレート ExtraConfig パラメーターを示しています。各セクションには、ExtraConfig オプションの一般的な設定名が記載されています。たとえば、example_plugin という collectd プラグインがある場合、プラグインタイトルの形式は collectd::plugin::example_plugin です。
以下の例のように、特定のプラグインで利用可能なパラメーターの表を参照してください。
ExtraConfig: collectd::plugin::example_plugin::<parameter>: <value>
ExtraConfig:
collectd::plugin::example_plugin::<parameter>: <value>
Prometheus または Grafana クエリーの特定プラグインのメトリックテーブルを参照します。
collectd::plugin::aggregation
複数の値を aggregation プラグインで集約できます。メトリックを算出するには、sum、average、min、max などの集約関数を使用します (例: 平均および合計の CPU 統計)。
| パラメーター | 型 |
|---|---|
| ホスト | 文字列 |
| プラグイン | 文字列 |
| plugininstance | 整数 |
| agg_type | 文字列 |
| typeinstance | 文字列 |
| sethost | 文字列 |
| setplugin | 文字列 |
| setplugininstance | 整数 |
| settypeinstance | 文字列 |
| groupBy | 文字列の配列 |
| calculatesum | Boolean |
| calculatenum | Boolean |
| calculateaverage | Boolean |
| calculateminimum | Boolean |
| calculatemaximum | Boolean |
| calculatestddev | Boolean |
設定例:
以下のファイルを作成するために、3 つのアグリゲート設定をデプロイします。
-
aggregator-calcCpuLoadAvg.conf: ホストおよび状態に分類されるすべての CPU コアの平均 CPU 負荷 -
aggregator-calcCpuLoadMinMax.conf: ホストおよび状態による CPU ロードグループの最小および最大数 -
aggregator-calcMemoryTotalMaxAvg.conf: タイプ別にグループ化されたメモリーの最大値、平均および合計
集約設定は、デフォルトの CPU およびメモリープラグイン設定を使用します。
collectd::plugin::amqp1
amqp1 プラグインを使用して、AMQ Interconnect などの amqp1 メッセージバスに値を書き込みます。
| パラメーター | タイプ |
|---|---|
| manage_package | ブール値 |
| transport | 文字列 |
| ホスト | 文字列 |
| port | 整数 |
| user | 文字列 |
| password | 文字列 |
| address | 文字列 |
| instances | ハッシュ |
| retry_delay | 整数 |
| send_queue_limit | 整数 |
| interval | 整数 |
send_queue_limit パラメーターを使用して、送信メトリックキューの長さを制限します。
AMQP1 接続がない場合、プラグインは送信するメッセージをキューに入れ続けます。これにより、バインドされていないメモリー消費が生じる可能性があります。デフォルト値は 0 で、発信メトリックキューを無効にします。
メトリックが見つからない場合は、send_queue_limit パラメーターの値を増やします。
設定例:
collectd::plugin::apache
apache プラグインを使用して、Apache Web サーバーによって提供される mod_status プラグインから Apache データを収集します。提供される各インスタンスには interval ごとの値 (秒単位) を指定します。インスタンスの timeout interval パラメーターを指定すると、値はミリ秒単位です。
| パラメーター | 型 |
|---|---|
| instances | Hash |
| interval | 整数 |
| manage-package | ブール値 |
| package_install_options | List |
| パラメーター | 型 |
|---|---|
| url | HTTP URL |
| user | 文字列 |
| password | 文字列 |
| verifypeer | Boolean |
| verifyhost | Boolean |
| cacert | AbsolutePath |
| sslciphers | 文字列 |
| timeout | 整数 |
設定例:
この例では、インスタンス名は localhost で、Apache Web サーバー (http://10.0.0.111/mod_status?auto) に接続します。プラグインと互換性のないタイプとしてステータスページが返すのを防ぐために、URL の末尾に ?auto を追加する必要があります。
関連情報
apache プラグインの設定の詳細は、apache を参照してください。
collectd::plugin::battery
battery プラグインを使用して、ラップトップのバッテリーの残量、電源、または電圧を報告します。
| パラメーター | 型 |
|---|---|
| values_percentage | ブール値 |
| report_degraded | ブール値 |
| query_state_fs | ブール値 |
| interval | 整数 |
関連情報
battery プラグインの設定の詳細は、バッテリー を参照してください。
collectd::plugin::bind
bind プラグインを使用して、DNS サーバーからクエリーおよび応答に関するエンコードされた統計を取得します。プラグインは、値を collectd に送信します。
| パラメーター | 型 |
|---|---|
| url | HTTP URL |
| memorystats | Boolean |
| opcodes | Boolean |
| parsetime | Boolean |
| qtypes | Boolean |
| resolverstats | Boolean |
| serverstats | Boolean |
| zonemaintstats | Boolean |
| views | Array |
| interval | 整数 |
| パラメーター | 型 |
|---|---|
| name | String |
| qtypes | Boolean |
| resolverstats | Boolean |
| cacherrsets | Boolean |
| zones | 文字列のリスト |
設定例:
collectd::plugin::ceph
ceph プラグインを使用して、ceph デーモンからデータを収集します。
| パラメーター | 型 |
|---|---|
| daemons | Array |
| longrunavglatency | Boolean |
| convertspecialmetrictypes | Boolean |
| package_name | String |
設定例:
Object Storage Daemon (OSD) がすべてのノードにない場合には、OSD をリスト表示する必要があります。
collectd をデプロイする時に、ceph プラグインを Ceph ノードに追加します。デプロイメントが失敗するので、Ceph ノードの ceph プラグインを CollectdExtraPlugins に追加しないでください。
関連情報
ceph プラグインの設定の詳細は、ceph を参照してください。
collectd::plugins::cgroups
cgroups プラグインを使用して、cgroup 内のプロセスの情報を収集します。
| パラメーター | 型 |
|---|---|
| ignore_selected | Boolean |
| interval | 整数 |
| cgroups | List |
関連情報
cgroups プラグインの設定の詳細は、cgroups を参照してください。
collectd::plugin::connectivity
connectivity プラグインを使用して、ネットワークインターフェイスの状態を監視します。
インターフェイスがリストにない場合は、すべてのインターフェイスがデフォルトで監視されます。
| パラメーター | 型 |
|---|---|
| interfaces | Array |
設定例:
parameter_defaults:
ExtraConfig:
collectd::plugin::connectivity::interfaces:
- eth0
- eth1
parameter_defaults:
ExtraConfig:
collectd::plugin::connectivity::interfaces:
- eth0
- eth1
関連情報
connectivity プラグインの設定の詳細は、接続性 を参照してください。
collectd::plugin::conntrack
conntrack プラグインを使用して、Linux 接続追跡テーブルのエントリー数を追跡します。このプラグインのパラメーターはありません。
collectd::plugin::contextswitch
ContextSwitch プラグインを使用して、システムが処理するコンテキストスイッチの数を収集します。使用できるパラメーターは interval (秒単位) のみです。
関連情報
contextswitch プラグインの設定の詳細は、contextswitch を参照してください。
collectd::plugin::cpu
cpu プラグインを使用して、CPU がさまざまな状態に費やした時間 (例: idle、ユーザーコードの実行中、システムコードの実行中、IO 操作の待機中、その他の状態など) を監視します。
cpu プラグインは、パーセンテージの値ではなく、jiffies を収集します。jiffy の値は、ハードウェアプラットフォームのクロック周波数により異なるため、絶対的な間隔単位ではありません。
パーセンテージの値を報告するには、ブール値パラメーター reportbycpu および reportbystate を true に設定し、ブール値のパラメーター値 percentage を true に設定します。
このプラグインはデフォルトで有効です。
| 名前 | 説明 | クエリー |
|---|---|---|
| idle | アイドル時間 |
|
| interrupt | 割り込みでブロックされる CPU |
|
| nice | 優先度の低いプロセスを実行する時間 |
|
| softirq | 割り込み要求の処理に費やされたサイクル数 |
|
| steal | ハイパーバイザーが別の仮想プロセッサーに対応している間、仮想 CPU が実際の CPU を待機する時間の割合 |
|
| システム | システムレベル (カーネル) で費やした時間 |
|
| user | ユーザープロセスが使用する Jiffies |
|
| wait | 未処理の I/O 要求で待機中の CPU |
|
| パラメーター | 型 | Defaults |
|---|---|---|
| reportbystate | Boolean | true |
| valuespercentage | Boolean | true |
| reportbycpu | Boolean | true |
| reportnumcpu | Boolean | false |
| reportgueststate | Boolean | false |
| subtractgueststate | Boolean | true |
| interval | 整数 | 120 |
設定例:
parameter_defaults:
CollectdExtraPlugins:
- cpu
ExtraConfig:
collectd::plugin::cpu::reportbystate: true
parameter_defaults:
CollectdExtraPlugins:
- cpu
ExtraConfig:
collectd::plugin::cpu::reportbystate: true
関連情報
cpu プラグインの設定の詳細は、cpu を参照してください。
collectd::plugin::cpufreq
cpufreq プラグインを使用して現在の CPU 周波数を収集します。このプラグインのパラメーターはありません。
collectd::plugin::csv
csv プラグインを使用して、CSV 形式のローカルファイルに値を書き込みます。
| パラメーター | 型 |
|---|---|
| datadir | String |
| storerates | Boolean |
| interval | 整数 |
collectd::plugin::df
df プラグインを使用して、ファイルシステムのディスク領域の使用状況に関する情報を収集します。
このプラグインはデフォルトで有効です。
| 名前 | 説明 | Query |
|---|---|---|
| free | 空きディスク容量 |
|
| reserved | 予約済みディスク容量 |
|
| used | 使用済みディスク容量 |
|
| パラメーター | 型 | Defaults |
|---|---|---|
| devices | Array |
|
| fstypes | Array |
|
| ignoreselected | Boolean | true |
| mountpoints | Array |
|
| reportbydevice | Boolean | true |
| reportinodes | Boolean | true |
| reportreserved | Boolean | true |
| valuesabsolute | Boolean | true |
| valuespercentage | Boolean | false |
設定例:
parameter_defaults:
ExtraConfig:
collectd::plugin::df::fstypes: ['tmpfs','xfs']
parameter_defaults:
ExtraConfig:
collectd::plugin::df::fstypes: ['tmpfs','xfs']
関連情報
df プラグインの設定の詳細は、df を参照してください。
collectd::plugin::disk
disk プラグインを使用してハードディスクのパフォーマンス統計と (サポートされている場合には) パーティションの情報を収集します。
すべてのディスクはデフォルトでモニターされます。ignoreselected パラメーターを使用して、ディスクのリストを無視できます。この設定例では、sda ディスク、sdb ディスク、および sdc ディスクを無視し、リストに含まれていないディスクをすべてモニターします。
このプラグインはデフォルトで有効です。
| パラメーター | 型 | Defaults |
|---|---|---|
| disks | Array |
|
| ignoreselected | Boolean | false |
| udevnameattr | String | <undefined> |
| 名前 | 説明 |
|---|---|
| merged | 結合可能なキューに置かれた操作の数。たとえば、1 つの物理ディスクアクセスで 2 つ以上の論理操作が提供されます。 |
| time | I/O 操作が完了するまでの平均時間。値は正確ではない場合があります。 |
| io_time | I/O (ms) の処理に費やした時間。このメトリックは、デバイスの負荷率として使用できます。1 秒の値は、負荷の 100% に一致します。 |
| weighted_io_time | I/O の完了時間と、累積する可能性のあるバックログを測定します。 |
| pending_operations | 保留中の I/O 操作のキューサイズを表示します。 |
設定例:
parameter_defaults:
ExtraConfig:
collectd::plugin::disk::disks: ['sda', 'sdb', 'sdc']
collectd::plugin::disk::ignoreselected: true
parameter_defaults:
ExtraConfig:
collectd::plugin::disk::disks: ['sda', 'sdb', 'sdc']
collectd::plugin::disk::ignoreselected: true
関連情報
disk プラグインの設定の詳細は、disk を参照してください。
collectd::plugin::hugepages
hugepages プラグインを使用して hugepages 情報を収集します。
このプラグインはデフォルトで有効です。
| パラメーター | 型 | Defaults |
|---|---|---|
| report_per_node_hp | Boolean | true |
| report_root_hp | Boolean | true |
| values_pages | Boolean | true |
| values_bytes | Boolean | false |
| values_percentage | Boolean | false |
設定例:
parameter_defaults:
ExtraConfig:
collectd::plugin::hugepages::values_percentage: true
parameter_defaults:
ExtraConfig:
collectd::plugin::hugepages::values_percentage: true
関連情報
-
hugepagesプラグインの設定の詳細は、ヒュージページ を参照してください。
collectd::plugin::interface
interface プラグインを使用して、オクテットごとのパケット数、秒ごとのパケットレート、およびエラーレートでインターフェイストラフィックを測定します。
このプラグインはデフォルトで有効です。
| パラメーター | 型 | デフォルト |
|---|---|---|
| interfaces | Array |
|
| ignoreselected | Boolean | false |
| reportinactive | Boolean | true |
設定例:
parameter_defaults:
ExtraConfig:
collectd::plugin::interface::interfaces:
- lo
collectd::plugin::interface::ignoreselected: true
parameter_defaults:
ExtraConfig:
collectd::plugin::interface::interfaces:
- lo
collectd::plugin::interface::ignoreselected: true
関連情報
-
interfacesプラグインの設定の詳細は、インターフェイス を参照してください。
collectd::plugin::load
load プラグインを使用して、システムロードとシステム使用の概要を収集します。
このプラグインはデフォルトで有効です。
| パラメーター | 型 | デフォルト |
|---|---|---|
| report_relative | Boolean | true |
設定例:
parameter_defaults:
ExtraConfig:
collectd::plugin::load::report_relative: false
parameter_defaults:
ExtraConfig:
collectd::plugin::load::report_relative: false
関連情報
-
loadプラグインの設定の詳細は、ロード を参照してください。
collectd::plugin::mcelog
mcelog プラグインを使用して、マシンチェック例外 (MCE) の発生時に関連する通知および統計を送信します。デーモンモードで実行するように mcelog を設定し、ログ機能を有効にします。
| パラメーター | 型 |
|---|---|
| Mcelogfile | String |
| Memory |
Hash |
設定例:
parameter_defaults:
CollectdExtraPlugins: mcelog
CollectdEnableMcelog: true
parameter_defaults:
CollectdExtraPlugins: mcelog
CollectdEnableMcelog: true
関連情報
-
mcelogプラグインの設定の詳細は、celog を参照してください。
collectd::plugin::memcached
memcached プラグインを使用して、memcached キャッシュの使用状況、メモリー、およびその他の関連情報に関する情報を取得します。
| パラメーター | 型 |
|---|---|
| instances | Hash |
| interval | 整数 |
設定例:
関連情報
-
memcachedプラグインの設定に関する詳細は、memcached を参照してください。
collectd::plugin::memory
memory プラグインを使用して、システムのメモリーに関する情報を取得します。
このプラグインはデフォルトで有効です。
| パラメーター | 型 |
|---|---|
| Defaults | valuesabsolute |
| Boolean | true |
| valuespercentage | Boolean |
設定例:
parameter_defaults:
ExtraConfig:
collectd::plugin::memory::valuesabsolute: true
collectd::plugin::memory::valuespercentage: false
parameter_defaults:
ExtraConfig:
collectd::plugin::memory::valuesabsolute: true
collectd::plugin::memory::valuespercentage: false
関連情報
-
memoryプラグインの設定の詳細は、メモリー を参照してください。
collectd::plugin::ntpd
ntpd プラグインを使用して、統計情報にアクセスできるように設定されたローカルの NTP サーバーにクエリーし、設定されたパラメーターおよび時刻同期ステータスに関する情報を取得します。
| パラメーター | 型 |
|---|---|
| host | Hostname |
| port | Port number (Integer) |
| reverselookups | Boolean |
| includeunitid | Boolean |
| interval | 整数 |
設定例:
関連情報
-
ntpdプラグインの設定に関する詳細は、ntpd を参照してください。
collectd::plugin::ovs_stats
OVS に接続されたインターフェイスの統計値を収集するには、ovs_stats プラグインを使用します。ovs_stats プラグインは、OVSDB 管理プロトコル (RFC7047) モニターメカニズムを使用して OVSDB から統計値を取得します。
| パラメーター | 型 |
|---|---|
| address | String |
| bridges | List |
| port | 整数 |
| socket | String |
設定例:
以下の例は、ovs_stats プラグインを有効にする方法を示しています。オーバークラウドを OVS でデプロイする場合には、ovs_stats プラグインを有効にする必要はありません。
parameter_defaults:
CollectdExtraPlugins:
- ovs_stats
ExtraConfig:
collectd::plugin::ovs_stats::socket: '/run/openvswitch/db.sock'
parameter_defaults:
CollectdExtraPlugins:
- ovs_stats
ExtraConfig:
collectd::plugin::ovs_stats::socket: '/run/openvswitch/db.sock'
関連情報
-
ovs_statsプラグインの設定の詳細は、ovs_stats を参照してください。
collectd::plugin::processes
processes プラグインは、システムプロセスに関する情報を提供します。プロセスが一致すると、プラグインは状態とプロセスのフォークレートでのみプロセス数を収集します。
特定のプロセスの詳細を収集するには、process パラメーターを使用してプロセス名または process_match オプションを使用して、正規表現に一致するプロセス名を指定できます。process_match 出力の統計情報はプロセス名でグループ化されます。
このプラグインはデフォルトで有効です。
| パラメーター | 型 | Defaults |
|---|---|---|
| processes | Array | <undefined> |
| process_matches | Array | <undefined> |
| collect_context_switch | Boolean | <undefined> |
| collect_file_descriptor | Boolean | <undefined> |
| collect_memory_maps | Boolean | <undefined> |
関連情報
-
processesプラグインの設定の詳細は プロセス を参照してください。
collectd::plugin::smart
smart プラグインを使用して、ノード上の物理ディスクから SMART 情報を収集します。また、CollectdContainerAdditionalCapAdd パラメーターを CAP_SYS_RAWIO に設定して、smart プラグインが SMART Telemetry を読み取ることができるようにする必要があります。CollectdContainerAdditionalCapAdd パラメーターを設定しないと、以下のメッセージが collectd エラーログに書き込まれます。
Smart プラグイン: collectd を root として実行しますが、CAP_SYS_RAWIO 機能がありません。プラグインの読み取り機能は失敗する可能性があります。init システムで機能がドロップされましたか ?
| パラメーター | 型 |
|---|---|
| disks | Array |
| ignoreselected | Boolean |
| interval | 整数 |
設定例:
parameter_defaults: CollectdExtraPlugins: - smart CollectdContainerAdditionalCapAdd: "CAP_SYS_RAWIO"
parameter_defaults:
CollectdExtraPlugins:
- smart
CollectdContainerAdditionalCapAdd: "CAP_SYS_RAWIO"
関連情報
-
smartプラグインの設定の詳細については、smart を参照してください。
collectd::plugin::swap
swap プラグインを使用して、利用可能なスワップ領域および使用されているスワップ領域に関する情報を収集します。
| パラメーター | 型 |
|---|---|
| reportbydevice | Boolean |
| reportbytes | Boolean |
| valuesabsolute | Boolean |
| valuespercentage | Boolean |
| reportio | Boolean |
設定例:
collectd::plugin::tcpconns
tcpconns プラグインを使用して、設定されたポートから TCP 接続のインバウンドまたは送信の数に関する情報を収集します。ローカルポート設定は、ポートへの受信接続を表します。リモートポート設定は、ポートからの送信接続を表します。
| パラメーター | 型 |
|---|---|
| localports | Port (Array) |
| remoteports | Port (Array) |
| listening | Boolean |
| allportssummary | Boolean |
設定例:
collectd::plugin::thermal
thermal プラグインを使用して、ACPI の通常のゾーン情報を取得します。
| パラメーター | 型 |
|---|---|
| devices | Array |
| ignoreselected | Boolean |
| interval | 整数 |
設定例:
parameter_defaults: CollectdExtraPlugins: - thermal
parameter_defaults:
CollectdExtraPlugins:
- thermal
collectd::plugin::uptime
uptime プラグインを使用して、システムのアップタイムに関する情報を収集します。
このプラグインはデフォルトで有効です。
| パラメーター | 型 |
|---|---|
| interval | 整数 |
collectd::plugin::virt
virt プラグインを使用して、ホスト上の仮想マシンの libvirt API で CPU、ディスク、ネットワーク負荷、およびその他のメトリックを収集します。
このプラグインはコンピュートホストでデフォルトで有効になっています。
| パラメーター | 型 |
|---|---|
| connection | String |
| refresh_interval | Hash |
| domain | String |
| block_device | String |
| interface_device | String |
| ignore_selected | Boolean |
| plugin_instance_format | String |
| hostname_format | String |
| interface_format | String |
| extra_stats | String |
設定例:
ExtraConfig: collectd::plugin::virt::hostname_format: "name uuid hostname" collectd::plugin::virt::plugin_instance_format: metadata
ExtraConfig:
collectd::plugin::virt::hostname_format: "name uuid hostname"
collectd::plugin::virt::plugin_instance_format: metadata
関連情報
virt プラグインの設定の詳細は、virt を参照してください。
collectd::plugin::vmem
vmem プラグインを使用して、カーネルサブシステムから仮想メモリーに関する情報を収集します。
| パラメーター | 型 |
|---|---|
| verbose | Boolean |
| interval | 整数 |
設定例:
collectd::plugin::write_http
write_http 出力プラグインを使用して、POST リクエストを使用し JSON でメトリックをエンコードして、または PUTVAL コマンドを使用して、HTTP サーバーに値を送信します。
| パラメーター | 型 |
|---|---|
| ensure | Enum[present, absent] |
| nodes | Hash[String, Hash[String, Scalar]] |
| urls | Hash[String, Hash[String, Scalar]] |
| manage_package | Boolean |
設定例:
関連情報
-
write_httpプラグインの設定に関する詳細は、write_http を参照してください。
collectd::plugin::write_kafka
write_kafka プラグインを使用して、値を Kafka トピックに送信します。write_kafka プラグインを 1 つ以上のトピックブロックで設定します。トピックブロックごとに、一意の名前と 1 つの Kafka プロデューサーを指定する必要があります。topic ブロックでは、以下の per-topic パラメーターを使用できます。
| パラメーター | 型 |
|---|---|
| kafka_hosts | Array[String] |
| topics | Hash |
| properties | Hash |
| meta | Hash |
設定例:
関連情報:
write_kafka プラグインの設定方法は write_kafka を参照してください。