Linux - LNMP 安装Zabbix

1 环境准备

1.1 需要的环境

CentOS 7 虚拟机两台(最少两台,分别安装Server和Agent,有条件可以准备更多)

网络环境(Yum安装需要网络)

2 开始安装

提醒:建议在安装前对虚拟机拍摄快照或者对虚拟机进行备份操作

2.1 安装前的准备

启用可选 rpms 的软件仓库

安装yum utils工具包,若不安装则会找不到命令yum-config-manager

# yum -y install yum-utils

启用yum仓库

# yum-config-manager --enable rhel-7-server-optional-rpms

2.2 安装php

使用yum直接安装php,php-gd,php-mysql,php-fpm php-mbstring php-xml

# yum install php php-gd php-mysql php-fpm

配置php

编辑/etc目录下php.ini文件

post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = "Asia/Shanghai"

开机启动php-fpm

# systemctl enable php-fpm.service

启动php-fpm

# systemctl start php-fpm

2.3 安装Mysql/mariadb

对于Zabbix Server和Proxy来说,由于需要将数据储存起来,所以需要在安装Zabbix Server和Proxy的服务器上安装Mysql数据库。(由于CentOS 7 默认使用Mariadb替代Mysql,所以此处使用Mariadb。同时为了与Mysql的兼容性,所以使用Mariadb5.5版本)

安装mariadb使用以下命令

# yum install  -y mariadb-server

设置开机启动并启动mariadb

# systemctl enable mariadb 
# systemctl start mariadb

在命令行输入以下命令进入mariadb

# mysql -uroot -p

注:密码不用输入直接回车就行

输入以下命令修改登录密码

# SET password for 'root'@'localhost'=password('newpassword');

至此数据库部分安装完成

2.4 安装nginx

添加Nginx的yum源

在/etc/yum.repo.d下新增文件nginx.repo

在文件中写入以下代码:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

保存并退出

安装nginx

使用以下代码安装nginx

# yum install nginx

如果出现nginx.pid文件找不到的情况下使用

# nginx -c /etc/nginx/nginx.conf 

重新指定配置文件即可

设置开机启动并启动nginx

# systemctl enable nginx
# systemctl start nginx

2.5 开启防火墙80端口

在命令行输入以下命令来开启80端口

# firewall-cmd --zone=public --add-port=80/tcp --permanent

意义解释:

--zone #作用域

--add-port=80/tcp #添加端口,格式为:端口/通讯协议

--permanent #永久生效,没有此参数重启后失效

重启防护墙生效

# systemctl restart firewalld.service

2.6 关闭SELinux

编辑/etc/selinux下的config文件

SELINUX=disabled 

重启生效

2.7 测试nginx 是否安装成功

浏览器访问以下地址

http://{nginx主机的ip}:80

若出现Welcome to nginx! 则说明nginx安装成功

2.8 配置Nginx

编辑/etc/nginx目录下nginx.conf文件

去掉

gzip on

的注释

编辑/etc/nginx/conf.d目录下的default.conf文件

修改

location /{
       ...
       ...
       ...
}

模块中的路径和首页未zabbix的路径为:

root /usr/share/zabbix;
index index.php;

取消

location ~ \.php${
       ...
       ...
       ...
}

模块的注释,并且修改

Fastcgi_param  SCRIPT_FILENAME   /usr/share/zabbix$fastcgi_script_name;

添加(增大nginx 缓存,否则web页面会出错)

fastcgi_buffers 8 128k;
fastcgi_buffer_size 128k;

3 安装Zabbix

3.1 添加 Zabbix 软件仓库

安装软件仓库配置包,这个包包含了 yum(软件包管理器)的配置文件

# rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

3.2 安装Zabbix Server

安装zabbix server

# yum install zabbix-server-mysql

创建数据库

# mysql -uroot -p
# create database zabbix character set utf8 collate utf8_bin;
# grant all privileges on zabbix.* to zabbix@localhost identified by '';
# quit;

导入数据

使用 MySQL 来导入 Zabbix server 的初始数据库 schema 和数据

# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p Zabbix

(如果没有这个文件夹可以尝试重复输入一遍yum install zabbix-server-mysql)

配置Zabbix Server所使用的数据库

编辑/etc/zabbix/zabbix_server.conf文件以下内容

DBHost=localhost  数据库地址
DBName=zabbix  数据库名字
DBUser=zabbix  数据库用户名
DBPassword=  数据库用户密码
DBPort=3306 数据库端口

开机启动Zabbix Server进程并启动zabbix server

# systemctl enable zabbix-server
# systemctl start zabbix-server

3.3 安装Zabbix 前端

# yum install zabbix-web-mysql

配置zabbix前端/etc/httpd/conf.d/zabbix.conf

php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Aisa/Shanghai

3.4 测试zabbix

访问nginx配置的虚拟主机地址,若出现以下画面则server配置成功

[图片上传失败...(image-c0f83f-1570431597569)]

3.5 安装Zabbix Agent

安装Zabbix Agent

(安装前请先在主机上安装软件仓库配置包,详见3.1,同时关闭selinx和防火墙或允许端口通过,详见2.5和2.6)

# yum install zabbix-agent

配置Zabbix Agent

修改/etc/zabbix下zabbix_agentd.conf文件

Server=Server端IP地址
ServerActive=Server端IP地址
Hostname=主机名(此名称非常重要,请勿乱填,因为后面在web上添加主机时需要这个名字)

设置Zabbix Agent 开机启动并启动

# systemctl enable zabbix-agent
# systemctl start zabbix-agent

Zabbix Server 默认授权账号、密码

user: Admin
pwd:zabbix

Server Agent端口防火墙配置

agent端查看10050端口(默认端口)
server端查看10051端口(默认端口)

Zabbix server to passive agent = responds to agent on 10050
Active agent to zabbix server = Active agents requests zabbix on port 10051.

备注

  1. zabbix-mysql安装失败: https://blog.csdn.net/handsomehuo/article/details/101108432
  2. https://blog.csdn.net/weixin_44897792/article/details/97017329
  3. Zabbix 添加监控
    https://blog.csdn.net/reblue520/article/details/81058885
    https://blog.csdn.net/weixin_33841503/article/details/93297245
    https://blog.csdn.net/reblue520/article/details/81058886
    https://blog.csdn.net/reblue520/article/details/76287113
  • CPU 核心监控:
    https://blog.51cto.com/budeed/2052019
    https://blog.csdn.net/linuxdadada/article/details/77773985
    http://www.mamicode.com/info-detail-2427545.html

你可能感兴趣的:(Linux - LNMP 安装Zabbix)