[Zabbix4][ホスト追加]EC2(Amazon Linux/Centos6系)にZabbix4.0(LTS)エージェントを追加した話


お詫びと訂正

記事タイトルと内容を変更しています。

当初は「4.0のエージェントを導入できない(=依存パッケージsystemdの不足)ので3.4を導入した」という記事でしたが、当方の勘違いでした。(最初にCentOS7系のリポジトリを導入した後にエラーになって、その後CentOS6系に替えた後もyumのキャッシュが残っていてエラーになったのをAmazonLinuxでは4.0は駄目と早とちりした?)
CentOS6用のリポジトリを指定することで、Amazon Linux(CentOS6系)にも4.0のエージェントを導入できました。

【教訓】リポジトリを差し替えた後はyum clean allしましょう。

atanaka7様、ご指摘ありがとうございました。

概要

  • インフラ管理ツールZabbixの最新バージョン4.0 LTSのサーバを導入しました。
  • 監視対象として某サービスで利用しているEC2(Amazon Linux/CentOS6系)に4.0のエージェントをインストールしました。
  • (訂正)4.0のエージェントは依存パッケージの不足でインストールできず断念。結局3.4のエージェントを導入しました。
  • (訂正)centos6系にはsystemdが入っていないので4.0のエージェントは導入できません。
  • zabbixサーバとの通信ポート(10050)を開放します。
  • Amazon Linuxの大半のインスタンスタイプにはswap領域が用意されていないので警告(Lack of free swap space)が出るので対処(swap領域追加)します。

サーバの基本情報です。

  • 2015年末に導入したEC2
  • OSはAmazon Linux( CentOS 6系 )
  • インスタンスタイプは t2.small ※swap領域なし

インストール手順

以下が手順です。公式サイトの手順にない追加の手順がいくつかあります。

CentOS6用のzabbix4.0のリポジトリを追加

rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/6/x86_64/zabbix-release-4.0-1.el6.noarch.rpm

※rpmのダウンロードURLは、公式ページでバージョンやOS等を選択することで取得できます。

エージェントインストール

yum install zabbix-agent

設定

インストールが完了したら設定ファイルをzabbixサーバに紐づけます。

# cp /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.org.conf 
# vi /etc/zabbix/zabbix_agentd.conf

変更内容

Server=< ip address or domain >
ServerActive=< ip address or domain >
Hostname=< host名 >

エージェント起動/常時起動ON

# service zabbix-agent start
# chkconfig zabbix-agent on

ポート解放

当該EC2に紐付いているセキュリティグループのインバウンド設定でzabbixサーバ側からポーリングしてくるポートを開放します。

(zabbixサーバ側で)ホスト追加

以下の手順に従います。ポートは上記で開放したものとします。(既定は10050)

2 New host [Zabbix Documentation 4.0]

これでホストを追加できました。

おまけ(SWAP領域の追加)

上記までの手順でサーバ側にホストが追加されましたが、swap領域がないインスタンスなので zabbixサーバ側でLack of free swap spaceという「警告」が表示されます。

解消するためにSWAP領域を追加して永続化します。

Swap領域の作成

こちらの記事のとおりに設定しました。(すごくわかりやすい)

AWS (Amazon Linux) にswap領域を追加する方法

$ sudo dd if=/dev/zero of=/swapfile bs=1M count=512
  512+0 records in
  512+0 records out
  536870912 bytes (537 MB) copied, 2.25614 s, 238 MB/s
$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
  Setting up swapspace version 1, size = 524284 KiB
  no label, UUID=7ea4d670-81a6-4b43-98e8-a815426c8516
$ sudo swapon /swapfile

以上で追加されます。feeコマンドで確認するとSwap領域が確保されてzabbixサーバの警告が消えます。

$ free

         total       used       free     shared    buffers     cached

Mem: 2049484 1974116 75368 796 180812 1263936
-/+ buffers/cache: 529368 1520116
Swap: 524284 0 524284 ★この行の値が0でなくなった★

Swap領域の永続化

作成したSwap領域を永続化するためにfstabを編集します。

$ sudo vim /etc/fstab

末尾に以下を追加
/swapfile   swap        swap    defaults        0   0

これで永続化されます。永続化とは「OS再起動時に自動的にmountされる」という意味です。