現在位置: ホーム / OSSブログ / [OSS on Azure] AzureのCentOSインスタンスにZabbix3.0をAnsibleで構築する

[OSS on Azure] AzureのCentOSインスタンスにZabbix3.0をAnsibleで構築する

OSS on Azureより記事の提供を受けて公開いたします。 監視サーバを建てるべく、Azure上にCentOSのインスタンスを用意してAnsibleで手早くZabbix3.0をインストールします。

サイオステクノロジーでは、Microsoft Azure上でのOSSを活用するための技術トピックスを取り扱うサイトを運用しています。本記事はこの OSS on Azure 技術ブログより提供を受けて情報を掲載しています。

 

Ansibleを使用しZabbix3.0を展開

監視サーバを建てるべく、Azure上にCentOSのインスタンスを用意して
Ansibleで手早くZabbix3.0をインストールします。AnsibleのPlaybookはGithubで公開します。
github.com/sios-tech/ansible-zabbix-rhel7

Azure上にCentOSインスタンスを用意

インスタンスについては執筆時点でCentOS7.2がありましたのでこちらを利用します。
また今回は検証の為に、グローバル環境からアクセスしたいので、
インスタンスを用意した後にネットワークセキュリティグループで利用するポートを開けておきます。

screenshot.1463453251screenshot.1463461356

Ansible Playbookについて

Ansibleについてはサーバサイドにインストールして自ホストに対してPlaybookを実行します。
これでZabbix Server兼Ansible Serverを構築し、監視対象ホストへ一括Zabbix Agentを
インストールしたらスマートかなと思い、まずは今回Zabbix Serverを構築します。
またPlaybookについては以下のような具合です。

  • Zabbix Server3.0の標準インストールに加え、日本語の言語パッケージを追加
  • CentOS7 or RHEL7に対応
  • バックエンドはMySQL(MariaDB)、standalone構成
  • Zabbix動作に必要なパッケージは無ければyumインストール
  • Apache、MySQL、SELinux、firewalld(またはiptables)のチュニーングは考慮外
  • Playbookの実行はrootユーザもしくは一般ユーザの場合はsudoが使える前提

今回検証した環境

  • CentOS Linux release 7.2.1511 (Core) (on Azure)
  • Zabbix 3.0

Ansibleの構築

AnsibleとGitをインストールします。

1
2
3
4
5
6
$ sudo yum install -y git
$ sudo yum install -y epel-release
$ sudo yum install --enablerepo=epel ansible
$ sudo sed -i "s/^enabled=1/enabled=0/g" /etc/yum.repos.d/epel.repo
$ git --version
$ ansible --version

GitHubからAnsible Playbookを取得します。

1
2
$ cd ansible-zabbix-rhel7

ZabbixServerの環境情報を定義します。
(デフォルトで問題ありませんが、最低限MySQL Zabbix用DBのパスワードは変更しておきます。)

1
vi ./group_vars/zabbix-server-mysql-standalone
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Here are variables related to the ZABBIX-Server installation
 
# /etc/php.ini
dateTimezone: Asia/Tokyo
 
#
# ZABBIX repository specified to use in the installation
#
 
#
# Database settings and ZABBIX configuration
# '/etc/zabbix/zabbix.conf','/etc/zabbix/web/zabbix.conf.php'
#
ListenPort: 10051
LogFile: /var/log/zabbix/zabbix_server.log
DBHost: localhost
DBName: zabbix
DBUser: zabbix
DBPassword:
DBPort: 3306
DBSocket: /var/lib/mysql/mysql.sock

記事の続きはこちらの OSS on Azure をご覧下さい。