21
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

blackbird の install 方法と設定方法

Last updated at Posted at 2014-11-18

blackbird とは

様々なデータを取得し、backend のサーバーにデータを投げる python 製のプログラム
現在は backend の投げ先には Zabbix Server のみ対応しているが、今後は様々なミドルウェアに対応していく予定です

blackbird を install する

pip で入れる方法と rpm で入れる方法があります
推奨は rpm になります

pip で install

特に何も考えずに

pip install blackbird

で入ります
または setup.py を使用して install してください

git clone https://github.com/Vagrants/blackbird.git
cd blackbird
python setup.py install

rpm で install

下記の通り yum の repository を設定します

cat <<'_EOF_'> /etc/yum.repos.d/blackbird.repo
[blackbird]
name=Blackbird
baseurl=https://vagrants.github.io/blackbird/repo/yum/6/x86_64/
enabled=0
gpgcheck=0
_EOF_

その後 yum で install します
依存関係で epel の package を使いますので epel を使えるようにしておいてください

yum install blackbird --enablerepo=blackbird,epel

blackbird を設定する

config は /etc/blackbird/defaults.cfg になります

/etc/blackbird/defaults.cfg
[global]
user = bbd
group = bbd
include  = conf.d/*.cfg
log_file = /var/log/blackbird/blackbird.log
log_level = error

rpm で install した場合は上記のようになっていると思います
実行ユーザーやグループの変更が必要な場合は適宜変更してください

また、/etc/blackbird/conf.d/zabbix_sender.cfg で zabbix server の設定をしておきます

/etc/blackbird/conf.d/zabbix_sender.cfg
[zabbix]
server = 127.0.0.1
module = zabbix_sender

127.0.0.1 を適切に変更してください

blackbird の plugin を入れる

ここでは blackbird-httpd を例に進めます

plugin の install にはいくつか方法があります

手動で入れる

適当なところに clone して、ファイルを配置します

git clone https://github.com/Vagrants/blackbird-httpd.git
cd blackbird-httpd
cp httpd.py /opt/blackbitd/plugins/.
cp httpd.cfg /etc/blackbird/conf.d/.

setup.py で入れる

git clone https://github.com/Vagrants/blackbird-httpd.git
cd blackbird-httpd
python setup.py install

rpm で入れる

yum install blackbird-httpd --enablerepo=blackbird

※ plugin によっては epel が必要になります

plugin の設定をする

基本的には ini ファイルの中に説明があると思いますが、追加でいくつか設定することができます
特に重要なのは intervallld_interval です

/etc/blackbird/conf.d/httpd.cfg
[httpd]
module = 'httpd'

# stub_status URI
# - support only http status code '200'
# - you must set uri value start with '/'
#
status_uri = '/server-status'
info_uri = '/server-info'
# host = '127.0.0.1'
# port = '80'
# timeout = '3'

# use ssl connection?
#
# ssl = False

# for BASIC authentication. default: Nothing
#
# user = 'nobody'

# for BASIC authentication. default: Nothing
#
# password = 'nobody'

# for response time check
# if you do not want to check, please comment out
# - support only http status code '200'
# - you must set uri value start with '/'
#
response_check_uri = '/'
# response_check_host = '127.0.0.1'
# response_check_port = '80'
# response_check_timeout = '3'
# response_check_vhost = 'localhost'
# response_check_uagent = 'blackbird response check'
# response_check_ssl = False

# httpd path
path = '/usr/sbin/httpd'

interval は Zabbix へデータを送る間隔になります(デフォルト 60 秒)
lld_interval は Low Level Discovery の間隔になります(デフォルト 600 秒)
(今回の httpd の plugin では LLD は使ってません)
各 plugin 毎にこれらの間隔を設定することができます
例えば 30 秒毎に取得、600 秒毎に Discovery をする場合は下記のようになります

interval = 30
lld_interval = 600

また、Zabbix Sender で送る際に host 名を自動で取得するのですが、Zabbix Server 側と host 名が違う場合は cfg に書くことができます

hostname = other_host_name

blackbird を起動する

/etc/init.d/blackbird start

起動 script が無い場合は https://github.com/Vagrants/blackbird/blob/master/scripts/blackbird.init を使ってください

Zabbix Server 側で Template を適用する

各 plugin 用に作られた Zabbix Template を公開しています
各 plugin の git repository の templates 以下にある xml を Zabbix Server に import してください
(今回の例の blackbird-httpd の場合 https://github.com/Vagrants/blackbird-httpd/tree/master/templates に置いてあります)

データが送られてこない場合は

まず /etc/blackbird/conf.d/zabbix_sender.cfg 内で server の設定が正しいか確認してください
また対象サーバーから Zabbix Server の port 10051 が開いていることを確認して下さい
Zabbix Server の port を 10051 から変更している場合は zabbix_sender.cfg 内で port = <your port num> を追記してください

blackbird が動いているサーバーの hostname と Zabbix Server 側の host 名が違っている場合、データが入りません
Zabbix Server 側を修正するか、plugin の設定で hostname を定義して合わせてください

21
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?