CentOS 7
Sponsored Link

Elastic Stack 6 : Heartbeat インストール2018/02/12

 
サービスの死活監視機能を提供する Heartbeat をインストールします。
[1] Heartbeat をインストールします。 事前に Elasticsearch リポジトリ設定済みであることが前提です。
[root@dlp ~]#
yum -y install heartbeat-elastic
[2] 基本的な設定をして Heartbeat を起動します。
[root@dlp ~]#
vi /etc/heartbeat/heartbeat.yml
# 13行目:監視の設定

# デフォルトは以下のように 10分毎に http://localhost:9200 を監視する設定がされている

heartbeat.monitors:
- type: http

  # List or urls to query
  urls: ["http://localhost:9200"]

  # Configure task schedule
  schedule: '@every 10s'

  # Total test connection and data exchange timeout
  #timeout: 16s

.....
.....

# 70行目:Kibana を使用する場合はコメント解除して出力先を指定

# Kibana で SSL 有効の場合は証明書に登録したホスト名と合わせる

setup.kibana:
.....
  host: "https://dlp.srv.world:5601"

# 90行目:出力先を指定する

# デフォルト出力先は以下のように localhost の Elasticsearch

# Logstash に出力する場合はコメントアウトして output.logstash 行関連を有効にする

output.elasticsearch:
  # Array of hosts to connect to.l
  hosts: ["localhost:9200"]

.....
.....

#output.logstash:
  # The Logstash hosts
  #hosts: ["localhost:5044"]

[root@dlp ~]#
vi /etc/heartbeat/heartbeat.reference.yml
# 14行目:デフォルトでは 5分毎にローカルホストを ICMP 監視する設定

heartbeat.monitors:
- type: icmp # monitor type `icmp` (requires root) uses ICMP Echo Request to ping
             # configured hosts

  # Monitor name used for job name and document type.
  #name: icmp

  # Enable/Disable monitor
  #enabled: true

  # Configure task schedule using cron-like syntax
  schedule: '*/5 * * * * * *' # exactly every 5 seconds like 10:00:00, 10:00:05,...

  # List of hosts to ping
  hosts: ["localhost"]

.....
.....
# 65行目:任意の TCP ポートの監視設定セクション (デフォルトはローカルホストの 9200 のみ)

- type: tcp # monitor type `tcp`. Connect via TCP and optionally verify endpoint
            # by sending/receiving a custom payload

  # Monitor name used for job name and document type
  #name: tcp

  # Enable/Disable monitor
  #enabled: true

  # Configure task schedule
  schedule: '@every 5s' # every 5 seconds from start of beat

.....
.....

  hosts: ["localhost:9200"]
.....
.....

[root@dlp ~]#
systemctl start heartbeat-elastic

[root@dlp ~]#
systemctl enable heartbeat-elastic
[3] データが取り込まれているか確認しておきます。
# index 一覧

[root@dlp ~]#
curl localhost:9200/_cat/indices?v

health status index                       uuid     pri rep docs.count docs.deleted store.size pri.store.size
yellow open   filebeat-6.2.1-2018.02.14   uzqg8...   3   1      30106            0        4mb            4mb
yellow open   sshd_fail-2018.02           ghhQe...   5   1         65            0    240.4kb        240.4kb
yellow open   packetbeat-6.2.1-2018.02.14 -O8vG...   3   1       4912            0      1.4mb          1.4mb
green  open   .kibana                     sV0Ds...   1   0        372            0    384.9kb        384.9kb
yellow open   test_index                  CIPjY...   5   1          1            0        6kb            6kb
yellow open   heartbeat-6.2.1-2018.02.14  29OqT...   1   1          1            0     10.9kb         10.9kb
yellow open   metricbeat-6.2.1-2018.02.14 OhrZT...   1   1      29886            0      5.3mb          5.3mb

# indexのドキュメント一覧

[root@dlp ~]#
curl localhost:9200/heartbeat-6.2.1-2018.02.14/_search?pretty

{
  "took" : 4,
  "timed_out" : false,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 7,
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "heartbeat-6.2.1-2018.02.14",
        "_type" : "doc",
.....
.....
[4] Kibana を稼働させている場合は、サンプルダッシュボードへのデータインポートが可能です。
[root@dlp ~]#
heartbeat setup --dashboards

Loaded dashboards
関連コンテンツ