CentOS 7
Sponsored Link

Sensu : プラグインを追加する#2
2017/11/07
 
設定した CPU チェックプラグイン 以外の、メモリーやディスク等の主要なチェックプラグインの例です。
[1] メモリーチェックプラグインを追加します。
[root@dlp ~]#
sensu-install -p memory-checks
[root@dlp ~]#
vi /etc/sensu/conf.d/check-memory-percent.json
# Memory Usage 80% で Warning, 90% で Critical

{
  "checks": {
    "memory_check": {
      "command": "check-memory-percent.rb -w 80 -c 90",
      "subscribers": [ "development" ],
      "interval": 60
    }
  }
}

[root@dlp ~]#
vi /etc/sensu/conf.d/metrics-memory.json
# メモリー使用量のメトリックチェック

{
  "checks": {
    "metrics_memory-usage": {
      "type": "metric",
      "command": "metrics-memory.rb --scheme :::name:::.memory_usage",
      "interval": 60,
      "output_format": "graphite_plaintext",
      "subscribers": [ "development" ],
      "handlers": [ "graphite" ]
    }
  }
}

[root@dlp ~]#
systemctl restart sensu-server sensu-api

[2] ディスクチェックプラグインを追加します。
[root@dlp ~]#
sensu-install -p disk-checks
[root@dlp ~]#
vi /etc/sensu/conf.d/check-disk-usage.json
# Disk Usage 80% で Warning, 90% で Critical

{
  "checks": {
    "disk_check": {
      "command": "check-disk-usage.rb -w 80 -c 90",
      "subscribers": [ "development" ],
      "interval": 60
    }
  }
}

[root@dlp ~]#
vi /etc/sensu/conf.d/metrics-disk-usage.json
# ディスク使用量のメトリックチェック

{
  "checks": {
    "metrics_disk-usage": {
      "type": "metric",
      "command": "metrics-disk-usage.rb -l --scheme :::name:::.disk_usage",
      "interval": 60,
      "output_format": "graphite_plaintext",
      "subscribers": [ "development" ],
      "handlers": [ "graphite" ]
    }
  }
}

[root@dlp ~]#
systemctl restart sensu-server sensu-api

[3] ネットワークチェックプラグインを追加します。
[root@dlp ~]#
sensu-install -p network-checks
[root@dlp ~]#
vi /etc/sensu/conf.d/check-ports.json
# 22番ポートをチェック (タイムアウトは10秒)

{
  "checks": {
    "port_check": {
      "command": "check-ports.rb -p 22 -t 10",
      "subscribers": [ "development" ],
      "interval": 60
    }
  }
}

[root@dlp ~]#
vi /etc/sensu/conf.d/metrics-net.json
# ネットワークのメトリックチェック

{
  "checks": {
    "metrics_net-usage": {
      "type": "metric",
      "command": "metrics-net.rb --scheme :::name:::.network",
      "interval": 60,
      "output_format": "graphite_plaintext",
      "subscribers": [ "development" ],
      "handlers": [ "graphite" ]
    }
  }
}

[root@dlp ~]#
systemctl restart sensu-server sensu-api

[4] プロセスチェックプラグインを追加します。
[root@dlp ~]#
sensu-install -p process-checks
[root@dlp ~]#
vi /etc/sensu/conf.d/check-process.json
# プロセス数 400 で Warning, 500 で Critical

{
  "checks": {
    "processes_check": {
      "command": "check-process.rb -w 400 -c 500",
      "subscribers": [ "development" ],
      "interval": 60
    }
  }
}

[root@dlp ~]#
vi /etc/sensu/conf.d/metrics-processes-threads-count.json
# プロセス数のメトリックチェック

{
  "checks": {
    "metrics_processes-count": {
      "type": "metric",
      "command": "metrics-processes-threads-count.rb --scheme :::name:::.processes",
      "interval": 60,
      "output_format": "graphite_plaintext",
      "subscribers": [ "development" ],
      "handlers": [ "graphite" ]
    }
  }
}

[root@dlp ~]#
systemctl restart sensu-server sensu-api

[5] 時刻同期チェックプラグインを追加します。(以下は chrony の例だが ntp では [sensu-install -p ntp])
[root@dlp ~]#
sensu-install -p chrony
[root@dlp ~]#
vi /etc/sensu/conf.d/check-chrony.json
# オフセット 2秒で Warning, 3秒 で Critical

{
  "checks": {
    "chrony_check": {
      "command": "check-chrony.rb --warn-offset 2000 --crit-offset 3000",
      "subscribers": [ "development" ],
      "interval": 600
    }
  }
}

[root@dlp ~]#
vi /etc/sensu/conf.d/metrics-chrony.json
# Chrony のメトリックチェック

{
  "checks": {
    "metrics_chrony": {
      "type": "metric",
      "command": "metrics-chrony.rb --scheme :::name:::.chrony",
      "interval": 600,
      "output_format": "graphite_plaintext",
      "subscribers": [ "development" ],
      "handlers": [ "graphite" ]
    }
  }
}

[root@dlp ~]#
systemctl restart sensu-server sensu-api

[6] Uchiwa ダッシュボードにアクセスすると追加したチェック項目が監視されていることが確認できます。
[7] Graphite へメトリックデータを保存している場合、Graphite Web にアクセスすると追加したチェック項目のメトリックデータが閲覧できます。
[8] Grafana を使用している場合、Grafana Web にアクセスして収集済みデータの表示設定をすると、メトリックデータのグラフが閲覧できます。
 
Tweet