第5章 collectd プラグイン

Red Hat OpenStack Platform (RHOSP) 16.2 環境に応じて、複数の collectd プラグインを設定できます。

次のプラグインのリストは、デフォルト値をオーバーライドするのに設定できる使用可能なヒートテンプレート ExtraConfig パラメーターを示しています。各セクションには、ExtraConfig オプションの一般的な設定名が記載されています。たとえば、example_plugin という collectd プラグインがある場合、プラグインタイトルの形式は collectd::plugin::example_plugin です。

以下の例のように、特定のプラグインで利用可能なパラメーターの表を参照してください。

ExtraConfig:
  collectd::plugin::example_plugin::<parameter>: <value>

Prometheus または Grafana クエリーの特定プラグインのメトリクステーブルを参照します。

collectd::plugin::aggregation

複数の値を aggregation プラグインで集約できます。メトリクスを算出するには、sumaverageminmax などの集約関数を使用します (例: 平均および合計の CPU 統計)。

表5.1 集約パラメーター

パラメーター

host

String

プラグイン

String

plugininstance

Integer

agg_type

String

typeinstance

String

sethost

String

setplugin

String

setplugininstance

Integer

settypeinstance

String

groupBy

文字列の配列

calculatesum

ブール値

calculatenum

ブール値

calculateaverage

ブール値

calculateminimum

ブール値

calculatemaximum

ブール値

calculatestddev

ブール値

設定例:

以下のファイルを作成するために、3 つのアグリゲート設定をデプロイします。

  1. aggregator-calcCpuLoadAvg.conf: ホストおよび状態に分類されるすべての CPU コアの平均 CPU 負荷
  2. aggregator-calcCpuLoadMinMax.conf: ホストおよび状態による CPU ロードグループの最小および最大数
  3. aggregator-calcMemoryTotalMaxAvg.conf: タイプ別にグループ化されたメモリーの最大、平均、および合計

集約設定は、デフォルトの cpu および memory プラグイン設定を使用します。

parameter_defaults:
  CollectdExtraPlugins:
    - aggregation

  ExtraConfig:
    collectd::plugin::aggregation::aggregators:
      calcCpuLoadAvg:
        plugin: "cpu"
        agg_type: "cpu"
        groupby:
          - "Host"
          - "TypeInstance"
        calculateaverage: True
      calcCpuLoadMinMax:
        plugin: "cpu"
        agg_type: "cpu"
        groupby:
          - "Host"
          - "TypeInstance"
        calculatemaximum: True
        calculateminimum: True
      calcMemoryTotalMaxAvg:
        plugin: "memory"
        agg_type: "memory"
        groupby:
          - "TypeInstance"
        calculatemaximum: True
        calculateaverage: True
        calculatesum: True

collectd::plugin::amqp1

amqp1 プラグインを使用して、AMQ Interconnect などの amqp1 メッセージバスに値を書き込みます。

表5.2 amqp1 パラメーター

パラメータータイプ

manage_package

ブール値

transport

String

host

String

port

Integer

user

String

password

String

address

String

instances

ハッシュ

retry_delay

Integer

send_queue_limit

Integer

interval

Integer

send_queue_limit パラメーターを使用して、送信メトリクスキューの長さを制限します。

注記

AMQP1 接続がない場合、プラグインは送信するメッセージをキューに入れ続けます。これにより、バインドされていないメモリー消費が生じる可能性があります。デフォルト値は 0 で、発信メトリクスキューを無効にします。

メトリクスが見つからない場合は、send_queue_limit パラメーターの値を増やします。

設定例:

parameter_defaults:
  CollectdExtraPlugins:
    - amqp1

  ExtraConfig:
    collectd::plugin::amqp1::send_queue_limit: 5000

collectd::plugin::apache

apache プラグインを使用して、Apache Web サーバーによって提供される mod_status プラグインから Apache データを収集します。提供される各インスタンスには interval ごとの値 (秒単位) を指定します。インスタンスの timeout interval パラメーターを指定すると、値はミリ秒単位です。

表5.3 Apache パラメーター

パラメーター

instances

ハッシュ

interval

Integer

manage-package

ブール値

package_install_options

リスト

表5.4 Apache インスタンスパラメーター

パラメーター

url

HTTP URL

user

String

password

String

verifypeer

ブール値

verifyhost

ブール値

cacert

AbsolutePath

sslciphers

String

timeout

Integer

設定例:

この例では、インスタンス名は localhost で、Apache Web サーバー (http://10.0.0.111/mod_status?auto) に接続します。プラグインと互換性のないタイプとしてステータスページが返すのを防ぐために、URL の末尾に ?auto を追加する必要があります。

parameter_defaults:
  CollectdExtraPlugins:
  - apache

  ExtraConfig:
    collectd::plugin::apache::instances:
      localhost:
        url: "http://10.0.0.111/mod_status?auto"

関連情報

apache プラグインの設定の詳細は、apache を参照してください。

collectd::plugin::battery

battery プラグインを使用して、ラップトップのバッテリーの残量、電源、または電圧を報告します。

表5.5 バッテリーパラメーター

パラメーター

values_percentage

ブール値

report_degraded

ブール値

query_state_fs

ブール値

interval

Integer

関連情報

battery プラグインの設定の詳細は、バッテリー を参照してください。

collectd::plugin::bind

bind プラグインを使用して、DNS サーバーからクエリーと応答に関するエンコードされた統計を取得し、それらの値を collectd に送信します。

表5.6 バインドパラメーター

パラメーター

url

HTTP URL

memorystats

ブール値

opcodes

ブール値

parsetime

ブール値

qtypes

ブール値

resolverstats

ブール値

serverstats

ブール値

zonemaintstats

ブール値

ビュー

Array

interval

Integer

表5.7 バインドビューパラメーター

パラメーター

name

String

qtypes

ブール値

resolverstats

ブール値

cacherrsets

ブール値

ゾーン

文字列の一覧

設定例:

parameter_defaults:
  CollectdExtraPlugins:
  - bind

  ExtraConfig:
    collectd::plugins::bind:
      url: http://localhost:8053/
      memorystats: true
      opcodes: true
      parsetime: false
      qtypes: true
      resolverstats: true
      serverstats: true
      zonemaintstats: true
      views:
      - name: internal
        qtypes: true
        resolverstats: true
        cacherrsets: true
      - name: external
        qtypes: true
        resolverstats: true
        cacherrsets: true
        zones:
        - "example.com/IN"

collectd::plugin::ceph

ceph プラグインを使用して、ceph デーモンからデータを収集します。

表5.8 Ceph パラメーター

パラメーター

daemons

配列

longrunavglatency

ブール値

convertspecialmetrictypes

ブール値

package_name

String

設定例:

parameter_defaults:
    ExtraConfig:
        collectd::plugin::ceph::daemons:
           - ceph-osd.0
           - ceph-osd.1
           - ceph-osd.2
           - ceph-osd.3
           - ceph-osd.4

注記

Object Storage Daemon (OSD) がすべてのノードにない場合には、OSD を一覧表示する必要があります。

collectd をデプロイする時に、ceph プラグインを Ceph ノードに追加します。デプロイメントが失敗するので、Ceph ノードの ceph プラグインを CollectdExtraPlugins に追加しないでください。

関連情報

ceph プラグインの設定の詳細は、ceph を参照してください。

collectd::plugins::cgroups

cgroups プラグインを使用して、cgroup 内のプロセスの情報を収集します。

表5.9 cgroups パラメーター

パラメーター

ignore_selected

ブール値

interval

Integer

cgroups

リスト

関連情報

cgroups プラグインの設定の詳細は、cgroups を参照してください。

collectd::plugin::connectivity

connectivity プラグインを使用して、ネットワークインターフェイスの状態を監視します。

注記

インターフェイスが一覧にない場合は、すべてのインターフェイスがデフォルトで監視されます。

表5.10 接続性のパラメーター

パラメーター

インターフェイス

配列

設定例:

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 および reportbystatetrue に設定し、ブール値のパラメーター値 percentage を true に設定します。

このプラグインはデフォルトで有効です。

表5.11 CPU メトリック

名前説明クエリー

idle

アイドル時間

collectd_cpu_total{...,type_instance='idle'}

interrupt

割り込みでブロックされる CPU

collectd_cpu_total{...,type_instance='interrupt'}

nice

優先度の低いプロセスを実行する時間

collectd_cpu_total{...,type_instance='nice'}

softirq

割り込み要求の処理に費やされたサイクル数

collectd_cpu_total{...,type_instance='waitirq'}

steal

ハイパーバイザーが別の仮想プロセッサーに対応している間、仮想 CPU が実際の CPU を待機する時間の割合

collectd_cpu_total{...,type_instance='steal'}

system

システムレベル (カーネル) で費やした時間

collectd_cpu_total{...,type_instance='system'}

user

ユーザープロセスが使用する Jiffies

collectd_cpu_total{...,type_instance='user'}

wait

未処理の I/O 要求で待機中の CPU

collectd_cpu_total{...,type_instance='wait'}

表5.12 CPU パラメーター

パラメーターデフォルト

reportbystate

ブール値

true

valuespercentage

ブール値

true

reportbycpu

ブール値

true

reportnumcpu

ブール値

false

reportgueststate

ブール値

false

subtractgueststate

ブール値

true

interval

Integer

120

設定例:

parameter_defaults:
    CollectdExtraPlugins:
      - cpu
    ExtraConfig:
        collectd::plugin::cpu::reportbystate: true

関連情報

cpu プラグインの設定の詳細は、cpu を参照してください。

collectd::plugin::cpufreq

cpufreq プラグインを使用して現在の CPU 周波数を収集します。このプラグインのパラメーターはありません。

collectd::plugin::csv

csv プラグインを使用して、CSV 形式のローカルファイルに値を書き込みます。

表5.13 csv parameters

パラメーター

datadir

String

storerates

ブール値

interval

Integer

collectd::plugin::df

df プラグインを使用して、ファイルシステムのディスク領域の使用状況に関する情報を収集します。

このプラグインはデフォルトで有効です。

表5.14 df メトリクス

名前説明クエリー

free

空きディスク容量

collectd_df_df_complex{...,type_instance="free"}

reserved

予約済みディスク容量

collectd_df_df_complex{...,type_instance="reserved"}

used

使用済みディスク容量

collectd_df_df_complex{...,type_instance="used"}

表5.15 df パラメーター

パラメーターデフォルト

devices

Array

[]

fstypes

Array

['xfs']

ignoreselected

ブール値

true

mountpoints

Array

[]

reportbydevice

ブール値

true

reportinodes

ブール値

true

reportreserved

ブール値

true

valuesabsolute

ブール値

true

valuespercentage

ブール値

false

設定例:

parameter_defaults:
  ExtraConfig:
    collectd::plugin::df::fstypes: ['tmpfs','xfs']

関連情報

df プラグインの設定の詳細は、df を参照してください。

collectd::plugin::disk

disk プラグインを使用してハードディスクのパフォーマンス統計と (サポートされている場合には) パーティションの情報を収集します。

注記

disk プラグインは、デフォルトですべてのディスクをモニターします。ignoreselected パラメーターを使用して、ディスクのリストを無視できます。設定例では、sdasdb、および sdc ディスクを無視し、リストに含まれていないすべてのディスクをモニターします。

このプラグインはデフォルトで有効です。

表5.16 ディスクパラメーター

パラメーターデフォルト

disks

Array

[]

ignoreselected

Boolean

false

udevnameattr

String

<undefined>

表5.17 ディスクメトリクス

名前説明

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

関連情報

disk プラグインの設定の詳細は、disk を参照してください。

collectd::plugin::hugepages

hugepages プラグインを使用して hugepages 情報を収集します。

This plugin is enabled by default.

表5.18 hugepages パラメーター

パラメーターデフォルト

report_per_node_hp

ブール値

true

report_root_hp

ブール値

true

values_pages

ブール値

true

values_bytes

ブール値

false

values_percentage

ブール値

false

設定例:

parameter_defaults:
  ExtraConfig:
    collectd::plugin::hugepages::values_percentage: true

関連情報

collectd::plugin::interface

interface プラグインを使用して、オクテットごとのパケット数、秒ごとのパケットレート、およびエラーレートでインターフェイストラフィックを測定します。

This plugin is enabled by default.

表5.19 インターフェイスパラメーター

パラメーターデフォルト

interfaces

Array

[]

ignoreselected

Boolean

false

reportinactive

Boolean

true

設定例:

parameter_defaults:
  ExtraConfig:
    collectd::plugin::interface::interfaces:
      - lo
    collectd::plugin::interface::ignoreselected: true

関連情報

collectd::plugin::load

load プラグインを使用して、システムロードとシステム使用の概要を収集します。

This plugin is enabled by default.

表5.20 プラグインパラメーター

パラメーターデフォルト

report_relative

ブール値

true

設定例:

parameter_defaults:
  ExtraConfig:
    collectd::plugin::load::report_relative: false

関連情報

  • load プラグインの設定の詳細は、ロード を参照してください。

collectd::plugin::mcelog

mcelog プラグインを使用して、マシンチェック例外 (MCE) の発生時に関連する通知および統計を送信します。デーモンモードで実行するように mcelog を設定し、ログ機能を有効にします。

表5.21 mcelog パラメーター

パラメーター

Mcelogfile

String

メモリー

Hash { mcelogclientsocket[string], persistentnotification[boolean] }

設定例:

parameter_defaults:
    CollectdExtraPlugins: mcelog
    CollectdEnableMcelog: true

関連情報

  • mcelog プラグインの設定の詳細は、celog を参照してください。

collectd::plugin::memcached

memcached プラグインを使用して、memcached キャッシュの使用状況、メモリー、およびその他の関連情報に関する情報を取得します。

表5.22 Memcached パラメーター

パラメーター

instances

ハッシュ

interval

Integer

設定例:

parameter_defaults:
  CollectdExtraPlugins:
  - memcached

  ExtraConfig:
    collectd::plugin::memcached::instances:
      local:
        host: "%{hiera('fqdn_canonical')}"
        port: 11211

関連情報

  • memcached プラグインの設定に関する詳細は、memcached を参照してください。

collectd::plugin::memory

memory プラグインを使用して、システムのメモリーに関する情報を取得します。

This plugin is enabled by default.

表5.23 メモリーパラメーター

パラメーター

デフォルト

valuesabsolute

ブール値

true

valuespercentage

Boolean

設定例:

parameter_defaults:
  ExtraConfig:
    collectd::plugin::memory::valuesabsolute: true
    collectd::plugin::memory::valuespercentage: false

関連情報

  • memory プラグインの設定の詳細は、メモリー を参照してください。

collectd::plugin::ntpd

ntpd プラグインを使用して、統計へのアクセスを許可するように設定されているローカル NTP サーバーにクエリーを実行し、設定されたパラメーターと時刻同期ステータスに関する情報を取得します。

表5.24 ntpd パラメーター

パラメーター

host

Hostname

port

ポート番号 (整数)

reverselookups

ブール値

includeunitid

ブール値

interval

Integer

設定例:

parameter_defaults:
  CollectdExtraPlugins:
  - ntpd

  ExtraConfig:
    collectd::plugin::ntpd::host: localhost
    collectd::plugin::ntpd::port: 123
    collectd::plugin::ntpd::reverselookups: false
    collectd::plugin::ntpd::includeunitid: false

関連情報

  • ntpd プラグインの設定に関する詳細は、ntpd を参照してください。

collectd::plugin::ovs_stats

OVS に接続されたインターフェイスの統計値を収集するには、ovs_stats プラグインを使用します。ovs_stats プラグインは、OVSDB 管理プロトコル (RFC7047) モニターメカニズムを使用して OVSDB から統計値を取得します。

表5.25 ovs_stats パラメーター

パラメーター

address

String

bridges

リスト

port

Integer

socket

String

設定例:

以下の例は、ovs_stats プラグインを有効にする方法を示しています。オーバークラウドを OVS でデプロイする場合には、ovs_stats プラグインを有効にする必要はありません。

    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 出力の統計は、プロセス名ごとにグループ化されています。

This plugin is enabled by default.

表5.26 プラグインパラメーター

パラメーターデフォルト

processes

Array

<undefined>

process_matches

Array

<undefined>

collect_context_switch

ブール値

<undefined>

collect_file_descriptor

ブール値

<undefined>

collect_memory_maps

ブール値

<undefined>

関連情報

  • processes プラグインの設定の詳細は プロセス を参照してください。

collectd::plugin::smart

smart プラグインを使用して、ノード上の物理ディスクから SMART (自己監視、分析、およびレポートテクノロジー) 情報を収集します。smart プラグインが SMART テレメトリーを読み取れるようにするには、パラメーター CollectdContainerAdditionalCapAddCAP_SYS_RAWIO に設定する必要もあります。CollectdContainerAdditionalCapAdd パラメーターを設定しないと、以下のメッセージが collectd エラーログに書き込まれます。

Smart プラグイン: collectd を root として実行しますが、CAP_SYS_RAWIO 機能がありません。プラグインの読み取り機能は失敗する可能性があります。init システムで機能がドロップされましたか ?

表5.27 スマートパラメーター

パラメーター

disks

配列

ignoreselected

ブール値

interval

Integer

設定例:

parameter_defaults:
  CollectdExtraPlugins:
  - smart

  CollectdContainerAdditionalCapAdd: "CAP_SYS_RAWIO"

関連情報

  • smart プラグインの設定の詳細については、smart を参照してください。

collectd::plugin::swap

swap プラグインを使用して、利用可能なスワップ領域および使用されているスワップ領域に関する情報を収集します。

表5.28 スワップパラメーター

パラメーター

reportbydevice

ブール値

reportbytes

ブール値

valuesabsolute

Boolean

valuespercentage

ブール値

reportio

ブール値

設定例:

parameter_defaults:
  CollectdExtraPlugins:
  - swap

  ExtraConfig:
    collectd::plugin::swap::reportbydevice: false
    collectd::plugin::swap::reportbytes: true
    collectd::plugin::swap::valuesabsolute: true
    collectd::plugin::swap::valuespercentage: false
    collectd::plugin::swap::reportio: true

collectd::plugin::tcpconns

tcpconns プラグインを使用して、設定されたポートからのインバウンドまたはアウトバウンドの TCP 接続の数に関する情報を収集します。ローカルポート設定は、入力接続を表します。リモートポート設定は、出力接続を表します。

表5.29 tcpconns パラメーター

パラメーター

localports

ポート (配列)

remoteports

ポート (配列)

listening

ブール値

allportssummary

ブール値

設定例:

parameter_defaults:
  CollectdExtraPlugins:
  - tcpconns

  ExtraConfig:
    collectd::plugin::tcpconns::listening: false
    collectd::plugin::tcpconns::localports:
    - 22
    collectd::plugin::tcpconns::remoteports:
    - 22

collectd::plugin::thermal

thermal プラグインを使用して、ACPI の通常のゾーン情報を取得します。

表5.30 thermal パラメーター

パラメーター

devices

Array

ignoreselected

ブール値

interval

Integer

設定例:

parameter_defaults:
  CollectdExtraPlugins:
  - thermal

collectd::plugin::uptime

uptime プラグインを使用して、システムの稼働時間に関する情報を収集します。

This plugin is enabled by default.

表5.31 時刻に関するパラメーター

パラメーター

interval

Integer

collectd::plugin::virt

virt プラグインを使用して、ホスト上の仮想マシンの libvirt API で CPU、ディスク、ネットワーク負荷、およびその他のメトリックを収集します。

このプラグインはコンピュートホストでデフォルトで有効になっています。

表5.32 virt パラメーター

パラメーター

connection

String

refresh_interval

ハッシュ

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

関連情報

virt プラグインの設定の詳細は、virt を参照してください。

collectd::plugin::vmem

vmem プラグインを使用して、カーネルサブシステムから仮想メモリーに関する情報を収集します。

表5.33 vmem パラメーター

パラメーター

verbose

ブール値

interval

Integer

設定例:

parameter_defaults:
  CollectdExtraPlugins:
  - vmem

  ExtraConfig:
    collectd::plugin::vmem::verbose: true

collectd::plugin::write_http

write_http 出力プラグインを使用して、POST リクエストを使用し JSON でメトリックをエンコードして、または PUTVAL コマンドを使用して、HTTP サーバーに値を送信します。

表5.34 write_http パラメーター

パラメーター

ensure

列挙 [present,absent]

nodes

ハッシュ[String, Hash[String, Scalar]]

urls

ハッシュ[String, Hash[String, Scalar]]

manage_package

Boolean

設定例:

parameter_defaults:
    CollectdExtraPlugins:
      - write_http
    ExtraConfig:
        collectd::plugin::write_http::nodes:
            collectd:
                url: “http://collectd.tld.org/collectd”
                metrics: true
                header: “X-Custom-Header: custom_value"

関連情報

  • write_http プラグインの設定に関する詳細は、write_http を参照してください。

collectd::plugin::write_kafka

write_kafka プラグインを使用して、値を Kafka トピックに送信します。write_kafka プラグインを 1 つ以上のトピックブロックで設定します。トピックブロックごとに、一意の名前と 1 つの Kafka プロデューサーを指定する必要があります。topic ブロックでは、以下の per-topic パラメーターを使用できます。

表5.35 write_kafka パラメーター

パラメーター

kafka_hosts

Array[String]

topics

ハッシュ

properties

ハッシュ

meta

ハッシュ

設定例:

parameter_defaults:
    CollectdExtraPlugins:
       - write_kafka
    ExtraConfig:
      collectd::plugin::write_kafka::kafka_hosts:
        - remote.tld:9092
      collectd::plugin::write_kafka::topics:
        mytopic:
          format: JSON

追加リソース:

write_kafka プラグインの設定方法は write_kafka を参照してください。