CentOS7 yum 安装 Zabbix 4.4
文章目录
环境
- centos 7
- nginx 1.16
- php 7.2
- zabbix 4.4
- mysql 5.7
虚拟机
- 192.168.1.100 安装 nginx, php, mysql, zabbix-server, zabbix-agent
- 192.168.1.101 安装 zabbix-agent
导入软件源
- 只在 192.168.1.100 上操作
- 创建 /etc/yum.repos.d/epel.repo,内容如下
1 2 3 4 5 6 7
[epel] name=Extra Packages for Enterprise Linux 7 - $basearch baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/$basearch failovermethod=priority enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
- 创建 /etc/yum.repos.d/nginx.repo,内容如下
1 2 3 4 5 6
[nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ enabled=1 gpgcheck=0 gpgkey=https://nginx.org/keys/nginx_signing.key
- 安装 webtatic 源,用于安装 php7.2
1 2
#这货依赖 epel-release,前面已经手动创建 epel 源,不鸟它! rpm -Uvh --nodeps https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
- 创建 /etc/yum.repos.d/mysql5.7.repo,内容如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
[mysql-connectors-community] name=MySQL Connectors Community baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-connectors-community-el7/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-tools-community] name=MySQL Tools Community baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-tools-community-el7/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql57-community] name=MySQL 5.7 Community Server baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql57-community-el7/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
- 创建 /etc/yum.repos.d/zabbix.repo,内容如下
1 2 3 4 5 6
[zabbix] name=Zabbix Official Repository - $basearch baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.4/rhel/7/$basearch/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
- 重建 yum 缓存
1 2
yum clean all yum makecache fast
安装 nginx
- 安装
1
yum install nginx
- 修改 /etc/nginx/nginx.conf,内容如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
# Nginx main config user nginx; pid /run/nginx.pid; error_log /var/log/nginx/error.log; worker_processes auto; worker_rlimit_nofile 65535; include /usr/share/nginx/modules/*.conf; events { use epoll; multi_accept on; worker_connections 10240; } http { log_format main '$remote_addr - [$time_local] "$request_method $uri" "$args" ' '"-" $status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; gzip on; sendfile on; tcp_nopush on; tcp_nodelay off; server_tokens off; keepalive_timeout 65; types_hash_max_size 2048; default_type application/octet-stream; include /etc/nginx/mime.types; include /etc/nginx/conf.d/*.conf; }
- 创建 /etc/nginx/conf.d/10080.conf,内容如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
# nginx listen 10080 server { listen 10080; server_name _; location /zabbix/ { root /usr/share; access_log /var/log/nginx/access-zabbix.log main; index index.php index.html index.html; } location ~ ^/zabbix/.+\.php$ { root /usr/share; access_log /var/log/nginx/access-zabbix.log main; index index.php index.html index.html; expires -1s; include fastcgi_params; try_files $uri =404; fastcgi_pass unix:/var/lib/php/phpfpm.sock; fastcgi_index index.php; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_split_path_info ^(.+\.php)(/.+)$; break; } location / { access_log /var/log/nginx/access-illegal.log main; return 403; } }
- 开机自启
1
systemctl enable nginx
- 启动 nginx
1
systemctl start nginx
安装 php
- 安装
1 2 3 4 5 6 7 8
yum install php72w \ php72w-cli \ php72w-fpm \ php72w-gd \ php72w-mbstring \ php72w-xml \ php72w-mysqlnd \ php72w-bcmath
- 修改 /etc/php.ini 中如下配置项
1 2 3 4 5 6 7 8 9 10
max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 max_input_vars = 10000 date.timezone = PRC #php 与 mysql 同机可指定 mysql 本地套接字 pdo_mysql.default_socket = /var/lib/mysql/mysql.sock mysqli.default_socket = /var/lib/mysql/mysql.sock
- 修改 /etc/php-fpm.d/www.conf 中如下配置
1 2
listen = /var/lib/php/phpfpm.sock listen.mode = 0666
- 开机自启
1
systemctl enable php-fpm
- 启动 php-fpm
1
systemctl start php-fpm
安装 mysql 5.7
- 安装,参考 CentOS7 yum 安装 MySQL5.7
- 启动 mysqld 服务,创建 zabbix 数据库及其用户
1 2 3
create database zabbix default charset utf8mb4; grant all on zabbix.* to zbx@localhost identified by 'Zbx_123456'; flush privileges;
安装 zabbix server
- 安装
1
yum install zabbix-server-mysql zabbix-web-mysql
- 导入 zabbix server 初始数据
1
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzbx -p -Dzabbix
- 修改 /etc/zabbix/zabbix_server.conf 中如下配置
1 2 3 4 5
DBName=zabbix DBUser=zbx DBPassword=Zbx_123456 DBSocket=/var/lib/mysql/mysql.sock AllowRoot=1
- 开机自启
1
systemctl enable zabbix-server
- 启动 zabbix-server
1
systemctl start zabbix-server
web 界面设置
- 使用常用浏览器访问: http://192.168.1.100:10080/zabbix/
- 根据界面提示提供数据库等信息
- zabbix 安装完成,进入系统登陆界面,默认 admin/zabbix
安装 zabbix agent
- 可以直接 yum 安装,这里推荐先下载 rpm 包,方便复制到其他服务器中运行
1
yum install zabbix-agent --downloadonly --downloaddir=.
- 安装
1
rpm -Uvh zabbix-agent-4.4.*.rpm
- 修改 /etc/zabbix/zabbix_agentd.conf 中如下配置
1 2 3 4
EnableRemoteCommands=1 AllowRoot=1 #UnsafeUserParameters=1 #UserParameter=UP[*],/etc/zabbix/UP.sh $1 $2 $3 $4 $5 $6 $7 $8 $9
- 开机自启
1
systemctl enable zabbix-agent
- 启动 zabbix-agent
1
systemctl start zabbix-agent
在其它服务器上安装 zabbix agent
- 从 192.168.1.100 复制 zabbix-agent-4.4.*.rpm 到 192.168.1.101 下
- 登陆 192.168.1.101,安装 zabbix-agent
1
rpm -Uvh zabbix-agent-4.4.\*.rpm
- 修改 /etc/zabbix/zabbix_agentd.conf 中如下配置
1 2 3 4 5 6 7
EnableRemoteCommands=1 Server=192.168.1.100 ServerActive=192.168.1.100:10051 Hostname=app101 #自定义,别和其他 agent 重名即可 AllowRoot=1 #UnsafeUserParameters=1 #UserParameter=UP[*],/etc/zabbix/UP.sh $1 $2 $3 $4 $5 $6 $7 $8 $9
- 开机自启
1
systemctl enable zabbix-agent
- 启动 zabbix-agent
1
systemctl start zabbix-agent
Docker 启动 zabbix server
- 下载镜像
1
docker pull ccr.ccs.tencentyun.com/colben/zabbix
- 启动容器
1 2 3 4 5
docker run -d \ --name zabbix-server \ -p 80:80 \ -p 10051:10051 \ ccr.ccs.tencentyun.com/colben/zabbix
- 浏览器访问 http://{ip}/zabbix/ ,打开 zabbix 页面向导,一直 “下一步” 即可
- 配置文件
- /etc/my.cnf
- /etc/my.cnf.d/*.cnf
- /etc/nginx/nginx.conf
- /etc/nginx/conf.d
- /etc/zabbix/zabbix_server.conf
- 数据目录
- /var/lib/mysql
- /var/lib/mysql-bin
- 日志目录
- /var/log/mysql
- /var/log/nginx
- /var/log/php7
- /var/log/zabbix
文章作者 Colben
上次更新 2020-02-12