【2019最新版】Zabbix v4 秒速構築(CentOS 7+Docker)

【2019最新版】Zabbix v4 秒速構築(CentOS 7+Docker)

みなさまこんにちは。今回はZabbix v4を秒速構築する手順のご紹介をしていきます。

監視サーバ向けOSSとしてもはや定番となったZabbix。できる事も多く、無償というのも相まって、もはやインフラエンジニアでは知らない人はいないのではというツールになっています。

今回はそんなZabbixを秒速で構築する方法をご紹介します。(最速を目指すため、Dockerを利用します)

以前POSTした、openldap秒速構築と同様、どのコマンドにはどんな意味がといった内容は極力省いて、最短で構築することを目標とします。
コマンドの意味はググればたくさん紹介しているサイトが見つかると思いますので、そちらをご覧ください。

途中、多少の説明はしています。そうゆう説明すら一切不要!という方は、最後に純粋なコマンド一覧として「まとめ(秒速構築)」用意しましたのでそちらをご覧ください。
(#このブログではCentOS7をベースに記載します。ディストリビューションの違いにより、パッケージ名やバージョン、パスやコマンドに差異が出る場合があります。)

なお、今回の環境では、OS、Zabbixのバージョンは以下を利用しました。
OS:CentOS Linux release 7.6.1810
Zabbix: 4.2.1

CentOS7でZabbixを秒速構築

CentOS7はインストール済みで、sudo可能なユーザでログインしていることを前提とします。

まずはDockerをインストール&起動

以下のコマンドのコピペで、Dockerがインストール&起動します。(Dockerがインストールされていない事を前提としています。また、インストールするDockerはCommunity Editionです。)

$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
$ sudo yum install docker-ce docker-ce-cli containerd.io
$ sudo systemctl start docker
$ sudo systemctl enable docker.service

Zabbix ApplianceのDockerイメージを取得して起動

続いて以下のコマンドのコピペで、Zabbix ApplianceのDockerイメージを取得して、コンテナとして起動します。Zabbixは通常、DBサーバとWebサーバ、Zabbix java Gatewayが必要ですが、Zabbix Applianceはこれらを含め1つのイメージにしたものと思ってください。少し話がそれますが、ZabbixのみのDockerイメージもあります。これを使う場合は、DBサーバ、Webサーバ、Zabbix java GatewayのそれぞれのDockerイメージを個別に取得して連携するように設定する必要があります。(Applianceの方が楽ですよね。)

$ sudo docker run --restart=allways -p 80:80 -p 10051:10051 -e PHP_TZ=Asia/Tokyo -d zabbix/zabbix-appliance:centos-latest

以上で最低限の構築は完了です。
ブラウザからhttp://<CentOSのIPアドレス>にアクセスすると、あっさりZabbixの管理画面が!ちなみに初回のログインは、以下で行えます。(ログイン後、変更しましょう。)

ID:Admin、PW:zabbix


まとめ(秒速構築)

以下コピペで秒速構築できます。

$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
$ sudo yum install docker-ce docker-ce-cli containerd.io
$ sudo systemctl start docker
$ sudo systemctl enable docker.service
$ sudo docker run --restart=allways -p 80:80 -p 10051:10051 -e PHP_TZ=Asia/Tokyo -d zabbix/zabbix-appliance:centos-latest

皆さんもぜひお試しあれ!

おまけ

dockerマジで便利だなと思います。メガクラウドとの組み合わせがあれば、もやはインフラSEはネイティブOSのインストールをする事がなくなってしまうのでは?と言う感じ。早い、うまい、安いの商売の3原則が全て盛り込まれています。もう少ししたらDocker基本コマンドまとめも書いてみようかと。あ、宣伝ですが、概念的なものは過去にPOSTしてますので、そちらをご覧ください。

個人の備忘録もかねて記載しておくと、インストールしたDockerコンテナへは、以下のコマンドでログインできます。

$ docker exec -it <CONTAINER ID> /bin/bash

(コンテナIDは、docker psで確認できます。)