Amazon Linux 2にZabbix 6.0.0 alpha3 rpm版を(強引に)インストールしてみた
Amazon Linux 2にZabbix 6.0.0 alpha3 rpm版を(強引に)インストールした時のメモです。
強引にインストールして起動出来る事までを確認しただけなので
動作保障はありません。
またコンパイルからZabbixサーバーの起動までをトライアル・アンド・エラーで行ったので費用をかけないようEC2ではなく手持ちのKVMゲストイメージで検証しました。
- amzn2-kvm-2.0.20210617.0-x86_64.xfs.gpt.qcow2
Amazon Linux 2
Kernel 4.14.232-177.418.amzn2.x86_64 on an x86_64
amzn2 login:
パッケージを最新化
$ sudo yum update -y
$ sudo systemctl reboot
開発ツールをインストール
$ sudo yum groupinstall -y "Development Tools"
EPELリポジトリをインストール
$ sudo amazon-linux-extras install -y epel
Software Collections(RHELSCとCentOS SCLo SIG)のリポジトリをインストール
$ sudo yum install -y http://mirror.centos.org/altarch/7/extras/aarch64/Packages/centos-release-scl-rh-2-3.el7.centos.noarch.rpm
$ sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/centos-release-scl-2-3.el7.centos.noarch.rpm
MySQL 8.0をインストールしてPATHを設定
$ sudo yum install -y rh-mysql80
$ echo 'export PATH=$PATH:/opt/rh/rh-mysql80/root/bin' | sudo tee /etc/profile.d/mysql80.sh
$ source /etc/profile.d/mysql80.sh
MySQL 8.0を起動して初期設定
$ sudo systemctl enable rh-mysql80-mysqld --now
$ mysql_secure_installation
Zabbixのコンパイルに必要なパッケージをインストール
$ sudo yum install -y \
pcre-devel \
openssl-devel \
policycoreutils-devel \
sqlite-devel \
libxml2-devel \
unixODBC-devel \
net-snmp-devel \
libssh2-devel \
OpenIPMI-devel \
libevent-devel \
openldap-devel \
libcurl-devel \
mariadb-devel \
java-1.8.0-openjdk-devel \
postgresql-devel \
gnutls-devel \
libssh-devel \
nginx-filesystem \
rh-php73-php-bcmath \
rh-php73-php-common \
rh-php73-php-fpm \
rh-php73-php-gd \
rh-php73-php-json \
rh-php73-php-ldap \
rh-php73-php-mbstring \
rh-php73-php-mysqlnd \
rh-php73-php-pdo \
rh-php73-php-xml \
rh-php73-php-zip
最新版のGoをインストールしてPATHを設定
$ curl -L -O https://golang.org/dl/go1.17.1.linux-amd64.tar.gz
$ sudo tar xzf go1.17.1.linux-amd64.tar.gz -C /usr/local/
$ echo export PATH=\$PATH:/usr/local/go/bin | sudo tee /etc/profile.d/golang.sh
$ source /etc/profile.d/golang.sh
Zabbixのソースをダウンロードして展開
$ curl -O https://repo.zabbix.com/zabbix/5.5/rhel/7/SRPMS/zabbix-6.0.0-0.3alpha3.el7.src.rpm
$ rpm -ivh zabbix-6.0.0-0.3alpha3.el7.src.rpm
$ cd rpmbuild/SPECS
AmazonLinux2(RHEL7相当?)でもコンパイルできるよう強引にSPECファイルを編集
$ cp -a zabbix.spec zabbix.spec.orig
$ cat zabbix.spec.orig | sed \
-e 's/>= 8/>= 7/g' \
-e 's/postgresql-devel .*$/postgresql-devel/' \
-e 's/libssh-devel .*$/libssh-devel/' \
-e 's/\([ \t]\)php-/\1rh-php73-php-/g' \
| grep -v mariadb-connector-c-devel \
> zabbix.spec
$ diff zabbix.spec.orig zabbix.spec
Zabbixをコンパイル
$ rpmbuild --define 'alphatag alpha3' -ba zabbix.spec
Zabbixをインストール
$ cd ../RPMS
$ sudo yum localinstall -y \
x86_64/zabbix-agent2-* \
x86_64/zabbix-get-* \
x86_64/zabbix-sender-* \
x86_64/zabbix-server-mysql-* \
x86_64/zabbix-web-japanese-* \
x86_64/zabbix-web-mysql-* \
noarch/zabbix-apache-conf-* \
noarch/zabbix-sql-scripts-* \
noarch/zabbix-web-6* \
noarch/zabbix-web-deps-* \
noarch/zabbix-web-mysql-*
Zabbix用DBの設定
$ mysql -u root -p
mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
mysql> CREATE USER 'zabbix'@'localhost' IDENTIFIED BY '(接続パスワード)';
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit
$ zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -u zabbix zabbix -p
Enter password: (接続パスワード)
$ echo DBPassword=(接続パスワード) | sudo tee -a /etc/zabbix/zabbix_server.conf
php-fpmの設定
$ sudo cp -a /etc/php-fpm.d/zabbix.conf /etc/php-fpm.d/zabbix.conf.orig
$ cat /etc/php-fpm.d/zabbix.conf.orig | sed 's#/run/#/var/opt/rh/rh-php73/run/#' | sudo tee /etc/php-fpm.d/zabbix.conf
$ diff /etc/php-fpm.d/zabbix.conf.orig /etc/php-fpm.d/zabbix.conf
$ sudo ln -s /etc/php-fpm.d/zabbix.conf /etc/opt/rh/rh-php73/php-fpm.d/
Zabbixサーバーを起動
$ sudo systemctl restart zabbix-server httpd rh-php73-php-fpm
$ sudo systemctl enable zabbix-server httpd rh-php73-php-fpm
Zabbixエージェントを起動
$ sudo systemctl restart zabbix-agent2
$ sudo systemctl enable zabbix-agent2
Zabbix初期設定
ブラウザで http://(ZabbixサーバーのIPアドレス)/zabbix/ にアクセスし
デフォルトの言語 "日本語(ja_JP)" を選択して「次のステップ」をクリック
前提条件チェックがすべて OK を確認して「次のステップ」をクリック
Zabbix用DBの接続パスワードを入力して「次のステップ」をクリック
Zabbixサーバーの詳細画面でホスト名を設定できます。今回はとくに変更せず「次のステップ」をクリック
デフォルトのタイムゾーン "(UTC+09:00) Asia/Tokyo"を選択して「次のステップ」をクリック
Zabbix用DBと設定を確認して「次のステップ」をクリック
Zabbixサーバーで起動したエージェントも認識しています。
RHEL7系
一応Amazon Linux 2上でv6.0.0のZabbixサーバーとZabbixエージェントの起動確認が出来ましたが、オフィシャルサイトのSPECファイルにはrhel >= 8の場合にサーバーパッケージを作成するように書かれているので、Zabbix v6.0 以降ではRHEL7系はオフィシャル対象外になっちゃうんでしょうかね?
%if 0%{?rhel} >= 8
%{!?build_web_service: %global build_web_service 1}
%endif
%if 0%{?rhel} >= 8
%{!?build_server: %global build_server 1}
%{!?build_frontend: %global build_frontend 1}
%endif
alpha版だけならよいのですが、、、正式版がリリースされるまでもう少し調査してみます。
Author And Source
この問題について(Amazon Linux 2にZabbix 6.0.0 alpha3 rpm版を(強引に)インストールしてみた), 我々は、より多くの情報をここで見つけました https://qiita.com/nakamura_trinet_co_jp/items/a1ace87c3b17a0ea3469著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .