主机名 | 操作系统 | IP地址 | 安装软件或模块 |
---|---|---|---|
NEWZABBIXSERVER | CentOS Linux release 7.8.2003 (Core) | 192.168.250.61 | zabbix server zabbix web_gui nginx php-fpm mysql |
TESTSER01 | CentOS Linux release 7.8.2003 (Core) | 192.168.250.62 | zabbix_agentd |
TESTSER02 | CentOS Linux release 7.8.2003 (Core) | 192.168.250.63 | zabbix_agentd |
暂时关闭防火墙。
关闭SELINUX
,这两个过程略。
LNMP
环境安装之前,先安装好依赖关系,这里安装好zlib、pcre、pcre-devel、openssl、openssl-devel
这五个包:
[root@NEWZABBIXSERVER ~]# yum -y install zlib pcre pcre-devel openssl openssl-devel
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
* base: mirrors.huaweicloud.com
* extras: mirrors.huaweicloud.com
* updates: mirrors.ustc.edu.cn
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/2): extras/7/x86_64/primary_db | 249 kB 00:00:00
(2/2): updates/7/x86_64/primary_db | 17 MB 00:00:02
软件包 pcre-8.32-17.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
……
同时,为系统创建www
用户,属性为没有登录权限:
[root@NEWZABBIXSERVER ~]# useradd www -s /sbin/nologin
[root@NEWZABBIXSERVER ~]# id www
uid=1001(www) gid=1001(www) 组=1001(www)
[root@NEWZABBIXSERVER ~]#
nginx
nginx
源码包这里从nginx
官网获取最新稳定版源码包nginx-1.22.1
:
从官网获取链接地址,然后下载到本地:
[root@NEWZABBIXSERVER app]# wget https://nginx.org/download/nginx-1.22.1.tar.gz
--2022-11-02 13:14:33-- https://nginx.org/download/nginx-1.22.1.tar.gz
正在解析主机 nginx.org (nginx.org)... 52.58.199.22, 3.125.197.172, 2a05:d014:edb:5704::6, ...
正在连接 nginx.org (nginx.org)|52.58.199.22|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:1073948 (1.0M) [application/octet-stream]
正在保存至: “nginx-1.22.1.tar.gz”
100%[============================================================================================>] 1,073,948 1.01MB/s 用时 1.0s
2022-11-02 13:14:35 (1.01 MB/s) - 已保存 “nginx-1.22.1.tar.gz” [1073948/1073948])
[root@NEWZABBIXSERVER app]#
解压并进入目录:
[root@NEWZABBIXSERVER app]# ll
总用量 1052
-rw-r--r--. 1 root root 1073948 10月 19 17:23 nginx-1.22.1.tar.gz
[root@NEWZABBIXSERVER app]# tar zxvf nginx-1.22.1.tar.gz
[root@NEWZABBIXSERVER app]# cd nginx-1.22.1/
[root@NEWZABBIXSERVER nginx-1.22.1]# ls
auto CHANGES CHANGES.ru conf configure contrib html LICENSE man README src
[root@NEWZABBIXSERVER nginx-1.22.1]#
nginx
为下面安装编译顺利进行,这里提前准备了openssl-1.0.2n
,并将其解压放置到/app目录下:
[root@NEWZABBIXSERVER app]# ll
总用量 6308
drwxr-xr-x. 8 www www 158 10月 19 16:02 nginx-1.22.1
-rw-r--r--. 1 root root 1073948 10月 19 17:23 nginx-1.22.1.tar.gz
drwxr-xr-x. 20 root root 4096 11月 2 13:24 openssl-1.0.2n
-rw-r--r--. 1 root root 5375802 4月 30 2020 openssl-1.0.2n.tar.gz
[root@NEWZABBIXSERVER app]#
开始编译:
[root@NEWZABBIXSERVER nginx-1.22.1]# ./configure
> --user=www
> --group=www
> --prefix=/usr/local/nginx
> --sbin-path=/usr/local/nginx/sbin/nginx
> --conf-path=/usr/local/nginx/conf/nginx.conf
> --error-log-path=/usr/local/nginx/logs/error.log
> --http-log-path=/usr/local/nginx/logs/access.log
> --pid-path=/var/run/nginx.pid
> --lock-path=/var/lock/subsys/nginx
> --with-openssl=/app/openssl-1.0.2n
> --with-http_stub_status_module
> --with-http_ssl_module
> --with-http_gzip_static_module
> --with-pcre
checking for OS
+ Linux 3.10.0-1127.el7.x86_64 x86_64
checking for C compiler ... found
+ using GNU C compiler
+ gcc version: 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
checking for gcc -pipe switch ... found
……
Configuration summary
+ using system PCRE library
+ using OpenSSL library: /app/openssl-1.0.2n
+ using system zlib library
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/sbin/nginx"
nginx modules path: "/usr/local/nginx/modules"
nginx configuration prefix: "/usr/local/nginx/conf"
nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
nginx pid file: "/var/run/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
[root@NEWZABBIXSERVER nginx-1.22.1]#
执行make
和make install
:
[root@NEWZABBIXSERVER nginx-1.22.1]# make
……
sed -e "s|%%PREFIX%%|/usr/local/nginx|"
-e "s|%%PID_PATH%%|/var/run/nginx.pid|"
-e "s|%%CONF_PATH%%|/usr/local/nginx/conf/nginx.conf|"
-e "s|%%ERROR_LOG_PATH%%|/usr/local/nginx/logs/error.log|"
< man/nginx.8 > objs/nginx.8
make[1]: 离开目录“/app/nginx-1.22.1”
[root@NEWZABBIXSERVER nginx-1.22.1]#
[root@NEWZABBIXSERVER nginx-1.22.1]# make install
安装完成后,进入目录,查看安装情况:
[root@NEWZABBIXSERVER nginx]# ll
总用量 4
drwxr-xr-x. 2 root root 4096 11月 2 13:42 conf
drwxr-xr-x. 2 root root 40 11月 2 13:42 html
drwxr-xr-x. 2 root root 6 11月 2 13:42 logs
drwxr-xr-x. 2 root root 19 11月 2 13:42 sbin
[root@NEWZABBIXSERVER nginx]#
mysql
这里采用mysql
官方源进行yum
方式安装,首先获取官方源:
这里在官网:
https://repo.mysql.com/
找到mysql57-community-release-el7.rpm
并下载:
[root@NEWZABBIXSERVER app]# wget https://repo.mysql.com/mysql57-community-release-el7.rpm
--2022-11-02 13:51:31-- https://repo.mysql.com/mysql57-community-release-el7.rpm
正在解析主机 repo.mysql.com (repo.mysql.com)... 23.3.109.33
正在连接 repo.mysql.com (repo.mysql.com)|23.3.109.33|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:25680 (25K) [application/x-redhat-package-manager]
正在保存至: “mysql57-community-release-el7.rpm”
100%[=======================================================>] 25,680 136KB/s 用时 0.2s
2022-11-02 13:51:37 (136 KB/s) - 已保存 “mysql57-community-release-el7.rpm” [25680/25680])
[root@NEWZABBIXSERVER app]#
[root@NEWZABBIXSERVER app]# rpm -ivh mysql57-community-release-el7.rpm
警告:mysql57-community-release-el7.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql57-community-release-el7-11 ################################# [100%]
[root@NEWZABBIXSERVER app]#
[root@NEWZABBIXSERVER app]# yum install mysql-server mysql mysql-devel
……
警告:RPM 数据库已被非 yum 程序修改。
正在安装 : mysql-community-common-5.7.40-1.el7.x86_64 1/7
正在安装 : mysql-community-libs-5.7.40-1.el7.x86_64 2/7
正在安装 : mysql-community-client-5.7.40-1.el7.x86_64 3/7
正在安装 : mysql-community-server-5.7.40-1.el7.x86_64 4/7
正在安装 : mysql-community-devel-5.7.40-1.el7.x86_64 5/7
正在安装 : mysql-community-libs-compat-5.7.40-1.el7.x86_64 6/7
正在删除 : 1:mariadb-libs-5.5.65-1.el7.x86_64 7/7
验证中 : mysql-community-client-5.7.40-1.el7.x86_64 1/7
验证中 : mysql-community-devel-5.7.40-1.el7.x86_64 2/7
验证中 : mysql-community-server-5.7.40-1.el7.x86_64 3/7
验证中 : mysql-community-common-5.7.40-1.el7.x86_64 4/7
验证中 : mysql-community-libs-5.7.40-1.el7.x86_64 5/7
验证中 : mysql-community-libs-compat-5.7.40-1.el7.x86_64 6/7
验证中 : 1:mariadb-libs-5.5.65-1.el7.x86_64 7/7
已安装:
mysql-community-client.x86_64 0:5.7.40-1.el7 mysql-community-devel.x86_64 0:5.7.40-1.el7 mysql-community-libs.x86_64 0:5.7.40-1.el7 mysql-community-libs-compat.x86_64 0:5.7.40-1.el7
mysql-community-server.x86_64 0:5.7.40-1.el7
作为依赖被安装:
mysql-community-common.x86_64 0:5.7.40-1.el7
替代:
mariadb-libs.x86_64 1:5.5.65-1.el7
完毕!
[root@NEWZABBIXSERVER app]#
[root@NEWZABBIXSERVER app]# systemctl start mysqld
[root@NEWZABBIXSERVER app]#
然后查看进程是否启动:
[root@NEWZABBIXSERVER app]# ps -ef | grep mysqld
mysql 15380 1 0 14:12 ? 00:00:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
root 15427 3656 0 14:14 pts/1 00:00:00 grep --color=auto mysqld
[root@NEWZABBIXSERVER app]#
mysql
启动后,系统会自动为root
用户设置一个临时密码,这个密码第一次登录后,需要修改:
先查看临时密码是多少:
[root@NEWZABBIXSERVER app]# grep "password" /var/log/mysqld.log
2022-11-02T06:12:35.221860Z 1 [Note] A temporary password is generated for root@localhost: wjuC<jv7!7um
[root@NEWZABBIXSERVER app]#
即root临时密码为:wjuC<jv7!7um
,用此临时密码登录后修改:
[root@NEWZABBIXSERVER /]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 2
Server version: 5.7.40
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql>
这里修改root密码为:myzabbix123#
:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'myzabbix123#';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql>
提示不符合当前密码策略,修改当前密码策略,然后再修改密码:
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'myzabbix123#';
Query OK, 0 rows affected (0.00 sec)
mysql>
这里安装php7.4
,先装依赖:
[root@NEWZABBIXSERVER app]# yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
……
已安装:
freetype-devel.x86_64 0:2.8-14.el7_9.1 libcurl-devel.x86_64 0:7.29.0-59.el7_9.1 libjpeg-turbo-devel.x86_64 0:1.2.90-8.el7 libpng-devel.x86_64 2:1.5.13-8.el7 libxml2-devel.x86_64 0:2.9.1-6.el7_9.6
作为依赖被安装:
xz-devel.x86_64 0:5.2.2-2.el7_9
更新完毕:
curl.x86_64 0:7.29.0-59.el7_9.1 freetype.x86_64 0:2.8-14.el7_9.1 libpng.x86_64 2:1.5.13-8.el7 libxml2.x86_64 0:2.9.1-6.el7_9.6
作为依赖被升级:
libcurl.x86_64 0:7.29.0-59.el7_9.1 libxml2-python.x86_64 0:2.9.1-6.el7_9.6 xz.x86_64 0:5.2.2-2.el7_9 xz-libs.x86_64 0:5.2.2-2.el7_9
完毕!
[root@NEWZABBIXSERVER app]#
这里打开官网,先查询到地址:
https://www.php.net/distributions/php-7.4.32.tar.gz
然后下载到本地:
[root@NEWZABBIXSERVER app]# wget https://www.php.net/distributions/php-7.4.32.tar.gz
--2022-11-02 14:33:24--
已发出 HTTP 请求,正在等待回应... 200 OK
……
[root@NEWZABBIXSERVER app]#
解压后,查看:
[root@NEWZABBIXSERVER php-7.1.14]# tar zxvf php-7.4.32.tar.gz
[root@NEWZABBIXSERVER php-7.1.14]#
[root@NEWZABBIXSERVER php-7.4.32]# ./configure --prefix=/usr/local/php7 --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-zlib --with-curl --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-openssl --enable-mbstring --enable-xml --enable-session --enable-ftp --enable-pdo -enable-tokenizer --enable-zip
……
Generating files
configure: creating ./config.status
creating main/internal_functions.c
creating main/internal_functions_cli.c
+--------------------------------------------------------------------+
| License: |
| This software is subject to the PHP License, available in this |
| distribution in the file LICENSE. By continuing this installation |
| process, you are bound by the terms of this license agreement. |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point. |
+--------------------------------------------------------------------+
Thank you for using PHP.
config.status: creating php7.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating sapi/fpm/php-fpm.conf
config.status: creating sapi/fpm/www.conf
config.status: creating sapi/fpm/init.d.php-fpm
config.status: creating sapi/fpm/php-fpm.service
config.status: creating sapi/fpm/php-fpm.8
config.status: creating sapi/fpm/status.html
config.status: creating sapi/cgi/php-cgi.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: executing default commands
[root@NEWZABBIXSERVER php-7.1.14]#
执行make
和make install
:
[root@NEWZABBIXSERVER php-7.4.32]# make
[root@NEWZABBIXSERVER php-7.4.32]# make install
……
Thank you for helping to make PHP better.
[root@NEWZABBIXSERVER php-7.1.14]# make install
Installing shared extensions: /usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303/
Installing PHP CLI binary: /usr/local/php7/bin/
Installing PHP CLI man page: /usr/local/php7/php/man/man1/
Installing PHP FPM binary: /usr/local/php7/sbin/
Installing PHP FPM defconfig: /usr/local/php7/etc/
Installing PHP FPM man page: /usr/local/php7/php/man/man8/
Installing PHP FPM status page: /usr/local/php7/php/php/fpm/
Installing phpdbg binary: /usr/local/php7/bin/
Installing phpdbg man page: /usr/local/php7/php/man/man1/
Installing PHP CGI binary: /usr/local/php7/bin/
Installing PHP CGI man page: /usr/local/php7/php/man/man1/
Installing build environment: /usr/local/php7/lib/php/build/
Installing header files: /usr/local/php7/include/php/
Installing helper programs: /usr/local/php7/bin/
program: phpize
program: php-config
Installing man pages: /usr/local/php7/php/man/man1/
page: phpize.1
page: php-config.1
Installing PEAR environment: /usr/local/php7/lib/php/
[PEAR] Archive_Tar - installed: 1.4.3
[PEAR] Console_Getopt - installed: 1.4.1
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util - installed: 1.4.2
[PEAR] PEAR - installed: 1.10.5
Wrote PEAR system config file at: /usr/local/php7/etc/pear.conf
You may want to add: /usr/local/php7/lib/php to your php.ini include_path
/app/php-7.4.32/build/shtool install -c ext/phar/phar.phar /usr/local/php7/bin
ln -s -f phar.phar /usr/local/php7/bin/phar
Installing PDO headers: /usr/local/php7/include/php/ext/pdo/
[root@NEWZABBIXSERVER php-7.4.32]#
安装完成后,将下面两个文件复制到指定的目录下,如下:
[root@NEWZABBIXSERVER php-7.4.32]# cp php.ini-production /usr/local/php7/lib/php.ini
[root@NEWZABBIXSERVER php-7.4.32]# cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/
[root@NEWZABBIXSERVER php-7.4.32]#
[root@NEWZABBIXSERVER php-7.4.32]# systemctl start php-fpm
[root@NEWZABBIXSERVER php-7.4.32]#
这里先修改nginx
配置文件,用来包括php-fpm
功能:
备份一下:
[root@NEWZABBIXSERVER conf]# cp nginx.conf nginx.conf.ori.20221102
[root@NEWZABBIXSERVER conf]#
然后编辑:
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
接着,修改php-fpm
配置文件,启用php-fpm
默认配置:
[root@NEWZABBIXSERVER nginx]# cd /usr/local/php7/
[root@NEWZABBIXSERVER php7]# ls
bin etc include lib php sbin var
[root@NEWZABBIXSERVER php7]# cd etc
[root@NEWZABBIXSERVER etc]# cp php-fpm.conf.default php-fpm.conf
[root@NEWZABBIXSERVER etc]# cp php-fpm.d/www.conf.default php-fpm.d/www.conf
[root@NEWZABBIXSERVER etc]#
上面修改结束后,再重启lnmp服务:
[root@NEWZABBIXSERVER etc]# systemctl start php-fpm
[root@NEWZABBIXSERVER etc]# /usr/local/nginx/sbin/nginx
[root@NEWZABBIXSERVER etc]#
[root@NEWZABBIXSERVER etc]# vim /usr/local/php7/lib/php.ini
[root@NEWZABBIXSERVER etc]#
max_execution_time = 300
memory_limit = 128M
max_input_time = 300
date.timezone = Asia/Shanghai
至此,可以用phpinfo()
进行测试,测试过程略。
[root@NEWZABBIXSERVER nginx]# pwd
/usr/local/nginx
[root@NEWZABBIXSERVER nginx]# sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@NEWZABBIXSERVER nginx]# sbin/nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
[root@NEWZABBIXSERVER nginx]#
安装zabbix
之前,需要提前安装相应的依赖包和库:
[root@NEWZABBIXSERVER app]# yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libevent libevent-devel
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.huaweicloud.com
* extras: mirrors.huaweicloud.com
* updates: mirrors.ustc.edu.cn
软件包 1:net-snmp-5.7.2-49.el7_9.2.x86_64 已安装并且是最新版本
软件包 1:net-snmp-devel-5.7.2-49.el7_9.2.x86_64 已安装并且是最新版本
软件包 curl-7.29.0-59.el7_9.1.x86_64 已安装并且是最新版本
软件包 libcurl-devel-7.29.0-59.el7_9.1.x86_64 已安装并且是最新版本
软件包 libxml2-2.9.1-6.el7_9.6.x86_64 已安装并且是最新版本
软件包 libevent-2.0.21-4.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 libevent-devel.x86_64.0.2.0.21-4.el7 将被 安装
……
这里创建zabbix
进程用户:
[root@NEWZABBIXSERVER app]# groupadd zabbix
[root@NEWZABBIXSERVER app]# useradd -g zabbix zabbix
[root@NEWZABBIXSERVER app]# id zabbix
uid=1002(zabbix) gid=1002(zabbix) 组=1002(zabbix)
[root@NEWZABBIXSERVER app]#
登录官网:
https://www.zabbix.com/download_sources
找到源码包下载链接,获取源码包到本地:
https://cdn.zabbix.com/zabbix/sources/stable/6.2/zabbix-6.2.3.tar.gz
下载后,解压进入目录:
[root@NEWZABBIXSERVER zabbix-6.2.3]# tar zxvf zabbix-6.2.3.tar.gz
[root@NEWZABBIXSERVER zabbix-6.2.3]#
[root@NEWZABBIXSERVER app]# cd zabbix-6.2.3/
[root@NEWZABBIXSERVER zabbix-6.2.3]# ls
aclocal.m4 bin ChangeLog conf config.sub configure.ac database include install-sh Makefile.am man missing README src
AUTHORS build compile config.guess configure COPYING depcomp INSTALL m4 Makefile.in misc NEWS sass ui
[root@NEWZABBIXSERVER zabbix-6.2.3]#
[root@NEWZABBIXSERVER zabbix-6.2.3]# ./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --with-libxml2
……
LDAP support: no
IPv6 support: no
***********************************************************
* Now run 'make install' *
* *
* Thank you for using Zabbix! *
* <http://www.zabbix.com> *
***********************************************************
[root@NEWZABBIXSERVER zabbix-6.2.3]#
然后执行make
和make install
:
[root@NEWZABBIXSERVER zabbix-6.2.3]# make && make install
[root@NEWZABBIXSERVER zabbix-6.2.3]#
由于zabbix
启动脚本路径默认指向的是/usr/local/sbin
路径,而zabbix
的安装路径是/usr/local/zabbix
,因此,需要提前创建如下软链接:
[root@NEWZABBIXSERVER app]# ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
[root@NEWZABBIXSERVER app]# ln -s /usr/local/zabbix/bin/* /usr/local/bin/
[root@NEWZABBIXSERVER app]#
对于Zabbix server
和proxy
守护进程以及Zabbix
前端,都需要连接到一个数据库。
Zabbix agent
不需要数据库的支持。
因此,需要先创建一个用户和数据库,并导入数据库对应的表。
为导入方便,先进入下列目录:
[root@NEWZABBIXSERVER zabbix-6.2.3]# cd database/
[root@NEWZABBIXSERVER database]# pwd
/app/zabbix-6.2.3/database
[root@NEWZABBIXSERVER database]# ls
elasticsearch Makefile Makefile.am Makefile.in mysql oracle postgresql sqlite3
[root@NEWZABBIXSERVER database]#
然后登录数据库:
[root@NEWZABBIXSERVER database]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 3
Server version: 5.7.40 MySQL Community Server (GPL)
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql>
创建zabbix数据库及用户:
mysql> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.01 sec)
mysql> use zabbix;
Database changed
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix456';
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql>
然后导入数据:
mysql> use zabbix;
mysql> source schema.sql;
mysql> source images.sql;
mysql> source data.sql;
……
Query OK, 1 row affected (0.00 sec)
Query OK, 1 row affected (0.00 sec)
Query OK, 1 row affected (0.00 sec)
Query OK, 1 row affected (0.00 sec)
Query OK, 1 row affected (0.00 sec)
Query OK, 1 row affected (0.00 sec)
Query OK, 69433 rows affected (0.81 sec)
Query OK, 0 rows affected (0.07 sec)
mysql>
zabbix
的安装路径为/usr/local/zabbix
,配置文件位于/usr/local/zabbix/etc
目录下,zabbix_server.conf
就是zabbix server
的配置文件,打开此文件:
[root@NEWZABBIXSERVER etc]# pwd
/usr/local/zabbix/etc
[root@NEWZABBIXSERVER etc]# ls
zabbix_agentd.conf zabbix_agentd.conf.d zabbix_proxy.conf zabbix_proxy.conf.d zabbix_server.conf zabbix_server.conf.d
[root@NEWZABBIXSERVER etc]#
先备份一下:
[root@NEWZABBIXSERVER etc]# cp zabbix_server.conf zabbix_server.conf.ori.20221102
[root@NEWZABBIXSERVER etc]# ll
总用量 104
-rw-r--r--. 1 root root 17033 11月 2 16:41 zabbix_agentd.conf
drwxr-xr-x. 2 root root 6 11月 2 16:41 zabbix_agentd.conf.d
-rw-r--r--. 1 root root 25609 11月 2 16:41 zabbix_proxy.conf
drwxr-xr-x. 2 root root 6 11月 2 16:41 zabbix_proxy.conf.d
-rw-r--r--. 1 root root 26844 11月 2 16:41 zabbix_server.conf
drwxr-xr-x. 2 root root 6 11月 2 16:41 zabbix_server.conf.d
-rw-r--r--. 1 root root 26844 11月 2 17:06 zabbix_server.conf.ori.20221102
[root@NEWZABBIXSERVER etc]#
修改如下几个配置项:
[root@NEWZABBIXSERVER etc]# vim zabbix_server.conf
[root@NEWZABBIXSERVER etc]# cat zabbix_server.conf
ListenPort=10051
LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix456
ListenIP=0.0.0.0
StartPollers=5
StartTrappers=10
StartDiscoverers=10
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
[root@NEWZABBIXSERVER etc]#
添加管理维护zabbix
的脚本并启动服务:
从zabbix
源码包misc/init.d/fedora/core/
目录中找到zabbix_server
和zabbix_agentd
管理脚本,然后复制到/etc/init.d
目录下:
[root@NEWZABBIXSERVER core]# pwd
/app/zabbix-6.2.3/misc/init.d/fedora/core
[root@NEWZABBIXSERVER core]# ll
总用量 8
-rwxr-xr-x. 1 moonrong moonrong 2170 7月 18 15:31 zabbix_agentd
-rwxr-xr-x. 1 moonrong moonrong 2181 7月 18 15:31 zabbix_server
[root@NEWZABBIXSERVER core]#
进行复制:
[root@NEWZABBIXSERVER core]# cp zabbix_server /etc/init.d/zabbix_server
[root@NEWZABBIXSERVER core]# cp zabbix_agentd /etc/init.d/zabbix_agentd
[root@NEWZABBIXSERVER core]#
再添加脚本执行权限:
[root@NEWZABBIXSERVER core]# chmod +x /etc/init.d/zabbix_server
[root@NEWZABBIXSERVER core]# chmod +x /etc/init.d/zabbix_agentd
[root@NEWZABBIXSERVER core]#
再将其添加到开机启动:
[root@NEWZABBIXSERVER core]# chkconfig zabbix_server on
[root@NEWZABBIXSERVER core]# chkconfig zabbix_agentd on
[root@NEWZABBIXSERVER core]#
[root@NEWZABBIXSERVER app]# /etc/init.d/zabbix_server start
Starting zabbix_server (via systemctl): [ 确定 ]
[root@NEWZABBIXSERVER app]#
添加相关服务和端口到系统配置文件:
[root@NEWZABBIXSERVER app]# vim /etc/services
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
[root@NEWZABBIXSERVER app]#
这里采用yum方式安装,先获取yum源:
http://repo.zabbix.com/zabbix/
从zabbix
官网下载对应的版本6.2。
这里先登录TESTSER01
主机,进行下载:
[root@TESTSER01 myapp]# wget http://repo.zabbix.com/zabbix/6.2/rhel/7/x86_64/zabbix-agent-6.2.3-release1.el7.x86_64.rpm
--2022-11-02 17:44:54-- http://repo.zabbix.com/zabbix/6.2/rhel/7/x86_64/zabbix-agent-6.2.3-release1.el7.x86_64.rpm
正在解析主机 repo.zabbix.com (repo.zabbix.com)... 178.128.6.101, 2604:a880:2:d0::2062:d001
正在连接 repo.zabbix.com (repo.zabbix.com)|178.128.6.101|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:536136 (524K) [application/x-redhat-package-manager]
正在保存至: “zabbix-agent-6.2.3-release1.el7.x86_64.rpm”
100%[==================================================>] 536,136 592KB/s 用时 0.9s
2022-11-02 17:45:00 (592 KB/s) - 已保存 “zabbix-agent-6.2.3-release1.el7.x86_64.rpm” [536136/536136])
[root@TESTSER01 myapp]#
然后对rpm包进行安装:
[root@TESTSER01 myapp]# rpm -ivh zabbix-agent-6.2.3-release1.el7.x86_64.rpm
警告:zabbix-agent-6.2.3-release1.el7.x86_64.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID a14fe591: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:zabbix-agent-6.2.3-release1.el7 ################################# [100%]
[root@TESTSER01 myapp]#
安装完成后,zabbix agent
端已经安装完成了,zabbix agent
端的配置目录位于/etc/zabbix
下,可在此目录进行配置文件的修改。
zabbix agent
端的配置文件是/etc/zabbix/zabbix_agent.conf
,现进行修改:
root@TESTSER01 myapp]# cd /etc/zabbix/
[root@TESTSER01 zabbix]# ll
总用量 20
-rw-r--r--. 1 root root 17212 9月 21 18:26 zabbix_agentd.conf
drwxr-xr-x. 2 root root 6 9月 21 18:26 zabbix_agentd.d
[root@TESTSER01 zabbix]# vim zabbix_agentd.conf
[root@TESTSER01 zabbix]#
LogFile=/var/log/zabbix/zabbix_agentd.log
Server=192.168.250.61
StartAgents=3
ServerActive=192.168.250.61
Hostname=192.168.250.62
Include=/etc/zabbix/zabbix_agentd.d/
UnsafeUserParameters=1
[root@TESTSER01 zabbix]# systemctl start zabbix-agent
[root@TESTSER01 zabbix]#
前面已经安装好了lnmp
环境,因此可以直接使用。
这里我们将zabbix web
安装到/usr/loca/nginx/html
目录下,因此,只需将Zabbix web
的代码放到此目录即可。
Zabbix web
的代码在Zabbix
源码包中的UI
目录下,将这个目录拷贝到/usr/loca/nginx/html
目录下并改名为zabbix
即可完成Zabbix web
端的安装。
[root@NEWZABBIXSERVER zabbix-6.2.3]# cp -r ui /usr/local/nginx/html/zabbix
[root@NEWZABBIXSERVER zabbix-6.2.3]#
在浏览器输入http://ip/zabbix,然后会检查zabbix web运行环境是否满足,并提供连接数据库的相关信息即可:
http://192.168.250.61/zabbix/setup.php
根据提示,下载文件,并上传到usr/local/nginx/html/zabbix/conf/zabbix.conf.php
目录下。
点完成,出现登录界面:
默认的zabbix
平台登录用户名为Admin
,密码为zabbix
。
在编译nginx时,提示:./configure: error: C compiler cc is not found
,如下:
[root@NEWZABBIXSERVER nginx-1.22.1]# ./configure
> --user=www
> --group=www
> --prefix=/usr/local/nginx
> --sbin-path=/usr/local/nginx/sbin/nginx
> --conf-path=/usr/local/nginx/conf/nginx.conf
> --error-log-path=/usr/local/nginx/logs/error.log
> --http-log-path=/usr/local/nginx/logs/access.log
> --pid-path=/var/run/nginx.pid
> --lock-path=/var/lock/subsys/nginx
> --with-openssl=/app/openssl-1.0.2n
> --with-http_stub_status_module
> --with-http_ssl_module
> --with-http_gzip_static_module
> --with-pcre
checking for OS
+ Linux 3.10.0-1127.el7.x86_64 x86_64
checking for C compiler ... not found
./configure: error: C compiler cc is not found
[root@NEWZABBIXSERVER nginx-1.22.1]#
解决办法:
由于新安装的环境缺少,采用yum安装gcc gcc-c++ autoconf automake make
:
[root@NEWZABBIXSERVER app]# yum -y install gcc gcc-c++ autoconf automake make
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.huaweicloud.com
* extras: mirrors.huaweicloud.com
* updates: mirrors.ustc.edu.cn
软件包 1:make-3.82-24.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 autoconf.noarch.0.2.69-11.el7 将被 安装
---> 软件包 automake.noarch.0.1.13.4-3.el7 将被 安装
……
[root@NEWZABBIXSERVER app]# ]rpm –ivh mysql57-community-release-el7.rpm
RPM 版本 4.11.3
版权所有 (C) 1998-2002 - 红帽公司。
该程序可以在 GNU GPL 条款下自由分发
用法: rpm [-aKfgpqVcdLilsiv?] [-a|--all] [-f|--file] [-g|--group] [-p|--package] [--pkgid] [--hdrid] [--triggeredby] [--whatrequires] [--whatprovides] [--nomanifest] [-c|--configfiles] [-d|--docfiles]
[-L|--licensefiles] [--dump] [-l|--list] [--queryformat=QUERYFORMAT] [-s|--state] [--nofiledigest] [--nofiles] [--nodeps] [--noscript] [--allfiles] [--allmatches] [--badreloc]
[-e|--erase <package>+] [--excludedocs] [--excludepath=<path>] [--force] [-F|--freshen <packagefile>+] [-h|--hash] [--ignorearch] [--ignoreos] [--ignoresize] [-i|--install] [--justdb]
[--nodeps] [--nofiledigest] [--nocontexts] [--noorder] [--noscripts] [--notriggers] [--nocollections] [--oldpackage] [--percent] [--prefix=<dir>] [--relocate=<old>=<new>] [--replacefiles]
[--replacepkgs] [--test] [-U|--upgrade <packagefile>+] [--reinstall=<packagefile>+] [-D|--define “MACRO EXPR”] [--undefine=MACRO] [-E|--eval “EXPR”] [--macros=<FILE:…>] [--noplugins]
[--nodigest] [--nosignature] [--rcfile=<FILE:…>] [-r|--root ROOT] [--dbpath=DIRECTORY] [--querytags] [--showrc] [--quiet] [-v|--verbose] [--version] [-?|--help] [--usage] [--scripts]
[--setperms] [--setugids] [--setcaps] [--restore] [--conflicts] [--obsoletes] [--provides] [--requires] [--info] [--changelog] [--xml] [--triggers] [--last] [--dupes] [--filesbypkg]
[--fileclass] [--filecolor] [--fscontext] [--fileprovide] [--filerequire] [--filecaps]
[root@NEWZABBIXSERVER app]#
进入/etc/pki/rpm-gpg
目录查看GPG
密钥:
[root@NEWZABBIXSERVER ~]# cd /etc/pki/rpm-gpg
[root@NEWZABBIXSERVER rpm-gpg]# ll
总用量 12
-rw-r--r--. 1 root root 1690 4月 8 2020 RPM-GPG-KEY-CentOS-7
-rw-r--r--. 1 root root 1004 4月 8 2020 RPM-GPG-KEY-CentOS-Debug-7
-rw-r--r--. 1 root root 1690 4月 8 2020 RPM-GPG-KEY-CentOS-Testing-7
[root@NEWZABBIXSERVER rpm-gpg]#
导入GPG-KEY
:
[root@NEWZABBIXSERVER rpm-gpg]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
[root@NEWZABBIXSERVER rpm-gpg]#
导入后,不行,然后全部导入:
[root@NEWZABBIXSERVER rpm-gpg]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
[root@NEWZABBIXSERVER rpm-gpg]# rpm --import RPM-GPG-KEY-CentOS-Debug-7
[root@NEWZABBIXSERVER rpm-gpg]# rpm --import RPM-GPG-KEY-CentOS-Testing-7
[root@NEWZABBIXSERVER rpm-gpg]#
mysql-community-client-5.7.40-1.el7.x86_64.rpm 的公钥尚未安装
失败的软件包是:mysql-community-client-5.7.40-1.el7.x86_64
GPG 密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
执行下面导入,过期所致的问题:
[root@NEWZABBIXSERVER rpm-gpg]# rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
[root@NEWZABBIXSERVER rpm-gpg]#
服务热线
1391-024-6332
Copyright 2015-2018 www.intsavi.com.cn All Rights Reserved
电话:010-62980070 010-62961051 手机:13910246332
版权所有北京赛维博信科技发展有限公司 备案号:京ICP备14043711号-1 京ICP备14043711号-3