ニートのMEMO

ニート生活をしたかった社会人がネットワークやサーバ、プログラミングなどについて勉強したことをメモとして残しているブログです。

Zabbix on Ubuntu(Vagrant)を構築してみる【失敗】

Zabbixのセットアップ

VagrantUbuntuを起動してその上でZabbixを動かしてみる
今回はとりあえずZabbixにログインし、ローカルサーバをモニタリングするまでが目標

Vagrantの起動

<参考>

katoko.hatenablog.com

ユーザ名、パスワードはvagrant

$ mkdir zabbix
$ cd zabbix
$ vim Vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|

#box名の設定
  config.vm.box = "bento/ubuntu-16.04"

#プライベートipアドレスの設定
  config.vm.network "private_network", ip: "192.168.33.10", auto_config:false

#コネクションの設定
  config.vm.provider "virtualbox" do |vb|
     vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
  end

end

$ vagrant up
$ vagrant ssh

# ifconfigでinterfaceにipアドレスが振られてない場合は固定で振る
vagrant@vagrant~$ sudo ifconfig enp0s8 up 192.168.33.10 netmask 255.255.255.0

パッケージの更新

$ sudo apt-get update
$ sudo apt-get -y upgrade

Apacheのインストール

$ sudo apt-get -y install apache2
$ sudo systemctl start apache2
$ sudo systemctl enable apache2

Apacheが起動できているか以下のURLで確認

http://[自分のサーバのIP address]/

PHPのインストール

$ sudo apt-get -y install php php-cgi libapache2-mod-php php-common php-pear php-mbstring
$ sudo vim /etc/php/7.0/apache2/php.ini (timezoneの変更)
date.timezone = "Asia/Tokyo"
$ sudo systemctl restart apache2 

Zabbixのインストールとセットアップ

1 Zabbixサーバのインストール

$ sudo apt-get -y install zabbix-server-mysql zabbix-agent zabbix-frontend-php php-mysql php-gd php-xml-util php-mbstring php-bcmath php-net-socket php-gettext

2 MySQLのセットアップ

  • Zabbixデータベース作成
  • zabbixユーザとパスワードの設定
ユーザ名 パスワード
zabbix hogehoge
$ mysql -u root -p

> create database zabbix character set utf8 collate utf8_bin;
> create user zabbix@'localhost' identified by 'hogehoge';
> grant all privileges on zabbix.* to zabbix@'localhost'; 
> exit;

$ cd /usr/share/zabbix-server-mysql
$ sudo gunzip *.sql.gz 
$ mysql -u root -p zabbix < schema.sql 
$ mysql -u root -p zabbix < images.sql 
$ mysql -u root -p zabbix < data.sql 

3 Zabbixサーバのセットアップと起動

$ sudo vim /etc/zabbix/zabbix_server.conf
# DB名を追記
DBName=zabbix
# DBユーザー名を追記
DBUser=zabbix
# DBユーザーのパスワードを追記
DBPassword=hogehoge

$ sudo systemctl restart zabbix-server

4 Zabbix-agentの起動

$ sudo systemctl restart zabbix-agent

5 Apache2とPHPの設定

$ sudo vim /etc/php/7.0/apache2/php.ini
# Zabbixの要件に変更
max_execution_time = 300
# Zabbixの要件に変更
max_input_time = 300
# Zabbixの要件に変更
post_max_size = 16M

$ sudo chown -R www-data /etc/zabbix
$ sudo systemctl restart apache2

シンボリックリンクを作る
$ sudo ln -s /usr/share/zabbix/ /var/www/html/zabbix

Zabbixの起動確認

http://[自分のサーバのIP address]/zabbix/ にアクセス
以下の画面が出てきたらOK

Nextを選択

f:id:katoko-o:20180430082803p:plain Nextを選択

f:id:katoko-o:20180430082843p:plain UserとPasswordをそれぞれzabbixとhogehogeに設定
Test Connectionをクリックし、OKが出たらNext
※出ない場合はMySQLのUserやPasswordが間違っている可能性

f:id:katoko-o:20180430082858p:plain NameはつけてもつけてなくてもOK
Nextを選択

f:id:katoko-o:20180430082925p:plain 確認画面が出てくるので良ければNextを選択

f:id:katoko-o:20180430082945p:plain Finishを選択

f:id:katoko-o:20180430083056p:plain

デフォルトではユーザー名:Admin, パスワード:zabbixでログインできる

f:id:katoko-o:20180430083112p:plain

Zabbixの設定

  1. 管理者パスワードの変更
    右上のProfileから管理者パスワードの変更する
    Change passwordから新しいパスワードを入力し、Updateする

  2. 監視ホストの設定
    管理画面からConfigure → Hostsを選択
    Zabbix-agentをインストールしたローカルホストがあるのでチェックを入れ、Enableにする f:id:katoko-o:20180504182633p:plain 少し待ってからMoniter → Screenから以下のように見られればOK f:id:katoko-o:20180504183321p:plain

今回はここまで
次回は複数VMを立てて監視してみる

追記

ubuntu16.04だとzabbixでうまくホストの追加ができなかったので次回はCentOS7でやります