Zabbix3.4 PostgreSQLとElasticsearch 6.3のデータ連携
こちらを参考に、Zabbix内のPostgreSQLデータをLogstash経由でElasticsearchに格納し、Kibanaでの可視化まで実施した手順を纏めます。
なおこの記事は、Zabbix/PostgreSQL、Elasticsearchをインストール済みの環境での実施手順です。
前提となる環境の構築情報は、記事の最後に必要順にまとめて載せています。
実行環境は次の通りです。
・CentOS 7.5
・Zabbix 3.4
・PostgreSQL 9.2.23
・Elasticsearch 6.3.2
・Kibana 6.3.2
・Logstash 6.3.2
Logstashのインストール
様々なデータソースからのデータ収集エンジンであるLogstashをインストール
こちらを参考に、PGP keyのインポートとElasticsearch の yum リポジトリを登録する
# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
# vi /etc/yum.repos.d/logstash.repo
[logstash-6.x]
name=Elastic repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
Logstashのインストールとサービスの起動
# yum -y install logstash
# systemctl start logstash.service
# systemctl enable logstash.service
Logstash Plugin等、JDBC接続環境の準備
LogstashのJDBC接続用 Plugin logstash-input-jdbc Input Pluginをインストール
# /usr/share/logstash/bin/logstash-plugin install logstash-input-jdbc
PostgreSQL用のJDBCドライバを、Elasticsearchサーバ(アクセス側)にインストール
# yum -y install postgresql-jdbc
# find / -name postgre*.jar
PostgreSQLから収集するデータ内容
Zabbix内のPostgreSQL DBには2種類の時系列データ、trends(1年分データ)とhistory(1週間分データ)がある。今回はtrendsテーブルとitemテーブル(データ情報)を参照する。例ではlogstash.confという名前で作成する。
# vi /usr/share/logstash/bin/logstash.conf
input {
jdbc {
jdbc_driver_library => "/usr/share/java/postgresql-jdbc.jar" (jarファイル格納先)
jdbc_driver_class => "org.postgresql.Driver"
jdbc_connection_string => "jdbc:postgresql://Zabbix Server IP:5432/zabbix"
jdbc_user => "zabbix" (zabbixユーザ)
jdbc_password => "zabbix"
statement => "select itemid, items.name, items.hostid, to_timestamp(trends.clock), trends.num, trends.value_min, trends.value_avg, trends.value_max from trends JOIN items using (itemid)"
}
}
output {
elasticsearch {
hosts => "localhost:9200"
index => "trends"
}
}
Elasticsearchへのデータ取り込み
# /usr/share/logstash/bin/logstash -f /usr/share/logstash/bin/logstash.conf --path.settings /etc/logstash
KibanaでのIndexの確認
# /usr/share/logstash/bin/logstash -f /usr/share/logstash/bin/logstash.conf --path.settings /etc/logstash
[Management] > [Create Index Pattern]をクリックしindex patternに[trends]を入力し、trendsインデックスを確認
関連記事
Zabbix3.4 PostgreSQL版をCentOS7にインストールする
Zabbix3.4 監視対象の設定
CentOS7へのElasticsearch6.3 のインストール
PostgreSQL9.x 外部ホストからの接続設定
Author And Source
この問題について(Zabbix3.4 PostgreSQLとElasticsearch 6.3のデータ連携), 我々は、より多くの情報をここで見つけました https://qiita.com/m-eno/items/11259ac991709103f1eb著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .