83
75

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.

Tech-Circle Hands onAdvent Calendar 2016

Day 14

意外と知られていないzabbix公式コンテナイメージ

Last updated at Posted at 2016-12-13

Tech-Circleのインフラ系はDockerばかりらしい。

ということで、私もDocker + Zabbixの話を書こうと思います。
(流行りだからね。乗らないとね。波にね。かぶりすぎで泣きそう。)


##知ってた?

運用監視ツールにZabbixを使用されている皆さん、公式のドキュメントにあるインストールガイド5 Installation from containersというのがあるのを知っていましたか?

Screenshot 2016-12-12 22:49:51.png

そうこれ、zabbixが提供しているイメージなんです。

現在提供されているのは3.0と3.2が提供されているようで、導入方法は本当に簡単です。


簡単だよ

先ずはZabbixのDBとして必要なDBコンテナを立ち上げましょうZabbixコンポーネントではMySQLとPostgreSQLがサポートされています。この例はMySQLです。
で、当然の事ながらパスワードはなので適宜置き換えを。

mysql-server
docker run --name mysql-server -t \
      -e MYSQL_DATABASE="zabbix" \
      -e MYSQL_USER="zabbix" \
      -e MYSQL_PASSWORD="zabbix" \
      -e MYSQL_ROOT_PASSWORD="zabbix" \
      -d mysql:5.7

続いてZabbixのCoreになる部分です。
ここでは接続先のDB情報を指定してください。

zabbix-server(mysql)
docker run --name zabbix-server-mysql -t \
      -e DB_SERVER_HOST="mysql-server" \
      -e MYSQL_DATABASE="zabbix" \
      -e MYSQL_USER="zabbix" \
      -e MYSQL_PASSWORD="zabbix" \
      -e MYSQL_ROOT_PASSWORD="zabbix" \
      --link mysql-server:mysql \
      --link zabbix-java-gateway:zabbix-java-gateway \
      -p 10051:10051 \
      -d zabbix/zabbix-server-mysql:latest

次はwebサーバを指定します。
サポートされているのは Apache2 と Nginx になります。

zabbix-web(nginx)
docker run --name zabbix-web-nginx-mysql -t \
      -e DB_SERVER_HOST="mysql-server" \
      -e MYSQL_DATABASE="zabbix" \
      -e MYSQL_USER="zabbix" \
      -e MYSQL_PASSWORD="zabbix" \
      -e MYSQL_ROOT_PASSWORD="zabbix" \
      --link mysql-server:mysql \
      --link zabbix-server-mysql:zabbix-server \
      -p 80:80 \
      -d zabbix/zabbix-web-nginx-mysql:latest

さてさて、最後にエージェントも導入しましょう。

zabbix-agent
docker run --name zabbix-agent \
           --link zabbix-server-mysql:zabbix-server \
           -d zabbix/zabbix-agent:latest

あれ・・・出来てしまったぞ・・・

今回の例だとzabbix-web接続を80にしているので、http://dockerIPアドレス/ へ接続すると・・・

Screenshot 2016-12-13 00:28:35.png

たったこれだけでサーバが出来上がってしまいました。

Screenshot 2016-12-13 00:30:02.png

今回はZabbixサーバが簡単にできるよというお話をさせていただいてますが、Zabbixサーバ以外にもZabbixプロキシコンテナが用意されています。

例えばZabbixサーバは既に用意されている環境を使用したり、AWSなどのAmazon Linux + RDSを使用。離れた環境ではdockerやrktを使用しZabbixプロキシを構築し、集約・サーバへの送信という組み立ても可能です。

まーったく伝えきれて居ないですが、今後も個人的にZabbixの面白さを伝えて行けたらと思います。
また、裏方でやっているZabbix Advent Calendar 2016もぜひ見ていってください。


明日は@koudaiii先生ですね。皆さんお楽しみに!

83
75
2

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
83
75

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?