Zabbix监控搭建

Zabbix监控搭建

  • zabbix监控搭建部署
    • 一、部署LNMP架构
      • 1.部署前准备
      • 2.安装Nginx
      • 3.配置nginx
      • 4.安装数据库
      • 5.关闭SElinux和firewalld
      • 6.修改php.ini文件
      • 7.可选操作,检测LNMP
    • 二、安装zabbix
      • 1.安装zabbix_server
      • 2.安装zabbix_agentd
    • 三、浏览器访问进行安装

zabbix监控搭建部署

一、部署LNMP架构

2022.03.13
如果执行yum list | grep php 之后发现php包特别少,没有7.0-7.2版本的,只有默认的5.4版本,还少了一些包,这种情况下最好看下面这个。
https://blog.csdn.net/liuyu_719/article/details/113555148

1.部署前准备

# CentOs 7 安装php源和epel扩展源:
rpm -ivh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -ivh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

# 安装包
yum -y install gcc pcre-devel  openssl-devel  make  vim
yum -y install  mariadb mariadb-devel mariadb-server

# 网络不好的情况下,下面最好一个包一个包的安装
yum -y install php70w php70w-gd php70w-mbstring php70w-mysql php70w-fpm  php70w-bcmath
yum -y install php70w-xmlwriter
yum -y install  libevent-devel
yum -y install  net-snmp-devel curl-devel 

# fping可用于做ping检测,后面做持续ping监控的时候会用到
yum -y install  fping

# 下载ngin和zabbix
wget https://nginx.org/download/nginx-1.18.0.tar.gz

# zabbix下载如下
# 链接:https://pan.baidu.com/s/1TBXi-zqEucqLsCnifZzXoQ
# 提取码:dyfj
# 本文以zabbix-4.4.7版本为例,6.0版本的安装方式好像稍有不同可能会安装失败。

2.安装Nginx

useradd -s /sbin/nologin nginx
tar -xf nginx-1.18.0.tar.gz
cd nginx--1.18.0
./configure  --prefix=/usr/local/nginx  --user=nginx   --group=nginx   --with-http_ssl_module    --with-stream    --with-http_stub_status_module  
	# 指定安装路径、指定用户、指定组、开启SSL加密功能、开启TCP/UDP代理模块、开启status状态页面
make && make install

3.配置nginx

注:尽量在配置之前先把老的配置文件备份一下

cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak

vim /usr/local/nginx/conf/nginx.conf
	# 修改配置文件,按i键进入插入模式
    … …
    http{
    … …
    	# 在http下面插入
        fastcgi_buffers 8 16k;                      
        fastcgi_buffer_size 32k;                      
        fastcgi_connect_timeout 300;                 
        fastcgi_send_timeout 300;                     
        fastcgi_read_timeout 300;                        
        #缓存php生成的页面内容,8个16k
        #缓存php生产的头部信息
        #连接PHP的超时时间
        #发送请求的超时时间
        #读取请求的超时时间
        
    location ~ \.php$ {
                    root           html;
                    fastcgi_pass   127.0.0.1:9000;
                    fastcgi_index  index.php;
                    # 修改该行为.conf
                    include        fastcgi.conf;
            }
    … …
	#vim回退到普通模式(esc键),wq保存并退出   
    
# 做个快捷链接,启动服务
ln -s /usr/local/nginx/sbin/nginx /sbin/nginx
nginx

注:

nginx -s stop #关闭Nginx服务
nginx -s reload #重新加载配置文件
当服务启动的时候,如果修改了配置文件,需要执行nginx -s reload,而不是执行nginx再次启动服务

4.安装数据库

# 上面已经安装了,所以这里直接启服务
systemctl start  mariadb
systemctl enable  mariadb

# 给zabbix创建个库
# 进入mariadb数据库
mysql
create database zabbix character set utf8 collate utf8_bin;
#创建数据库,支持中文字符集
grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';
#创建可以访问数据库的账户与密码
FLUSH PRIVILEGES;
# 刷新,退出
quit;

5.关闭SElinux和firewalld

firewall-cmd --set-default-zone=trusted  
systemctl status firewalld && yum -y remove firewalld

setenforce 0
    vim /etc/selinux/config
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    SELINUX=permissive
	# 修改为非enforcing即可

6.修改php.ini文件

vim /etc/php.ini
	date.timezone = Asia/Shanghai                #设置时区
	max_execution_time = 300                    #最大执行时间,秒
	max_input_time = 300                        #服务器接收数据的时间限制
	post_max_size = 32M                        #POST数据最大容量	
	memory_limit = 128M                        #内存容量限制

systemctl restart php-fpm  && systemctl enable php-fpm

7.可选操作,检测LNMP

cd /usr/local/nginx/html/
vim mysql_test.php

$mysqli = new mysqli('localhost','root','','mysql');
if (mysqli_connect_errno()){
    die('Unable to connect!'). mysqli_connect_error();
}
$sql = "select * from user";
$result = $mysqli->query($sql);
while($row = $result->fetch_array()){
    printf("Host:%s",$row[0]);
    printf("
"
); printf("Name:%s",$row[1]); printf("
"
); } ?>
curl http://127.0.0.1/mysql_test.php
# 检测LNMP架构的动静分离是否成功,以及php代码链接数据库查询是否成功。

二、安装zabbix

1.安装zabbix_server

cd 
tar -xf zabbix-4.4.7.tar.gz
cd zabbix-4.4.7/
./configure  --enable-server  --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config  --with-net-snmp --with-libcurl
    # --enable-server安装部署zabbix服务器端软件
    # --enable-agent安装部署zabbix被监控端软件
    # --enable-proxy安装部署zabbix代理相关软件
    # --with-mysql配置mysql_config路径
    # --with-net-snmp允许zabbix通过snmp协议监控其他设备(监控交换机需要用到)
    # --with-libcurl安装相关curl库文件,这样zabbix就可以通过curl连接http等服务,测试被监控主机服务的状态

make && make install
	
cd database/mysql/
#之前给zabbix创建的是空数据库,源码包目录下,有提前准备好的数据
# 使用mysql导入这些数据即可(注意导入顺序)
mysql -uzabbix -pzabbix zabbix < schema.sql
mysql -uzabbix -pzabbix zabbix < images.sql
mysql -uzabbix -pzabbix zabbix < data.sql

cd ../../frontends/php/
cp -r * /usr/local/nginx/html/
chmod -R 777 /usr/local/nginx/html/*

vim /usr/local/etc/zabbix_server.conf
    DBHost=localhost
    # 数据库主机名,与本机对应上
    DBName=zabbix
    # 设置数据库名称
    DBUser=zabbix
    # 设置数据库账户
    DBPassword=zabbix
    # 设置数据库密码,默认该行被注释
    LogFile=/tmp/zabbix_server.log    
    # 设置日志,仅查看以下即可
    
useradd -s /sbin/nologin zabbix
 #启动服务
zabbix_server     
# 确认连接状态,端口10051
ss -ntulp |grep zabbix_server     

2.安装zabbix_agentd

vim /usr/local/etc/zabbix_agentd.conf
	#允许哪些主机监控本机
	Server=127.0.0.1,本机IP        
    #允许哪些主机通过主动模式监控本机
	ServerActive=127.0.0.1,本机IP              
    #设置本机主机名
    Hostname=localhost        
    #设置日志文件
    LogFile=/tmp/zabbix_server.log     
    #是否允许自定义key
    UnsafeUserParameters=1   

#启动监控agent
zabbix_agentd 
#查看端口信息为10050
ss -antulp |grep zabbix_agentd   

三、浏览器访问进行安装

http://192.168.59.134/setup.php

点击《Next step》
Zabbix监控搭建_第1张图片

进入到PHP环境监测页面,点击《Next step》
如果有飘红,那么就去检查php.ini文件是不是有地方没进行修改,然后再去检查是不是有的php70w包没装上。
PHP-LDAP显示是红色的,这个没关系,不用管它。
Zabbix监控搭建_第2张图片

进入到配置数据库页面,在本文中,给zabbix使用的数据库,库名+授权的用户名+密码,都是zabbix,然后zabbix_server.conf配置文件中的DBPassword,也是zabbix。
Zabbix监控搭建_第3张图片

这里不用管,直接点击《Next step》
Zabbix监控搭建_第4张图片

同上
Zabbix监控搭建_第5张图片

安装完成

Zabbix监控搭建_第6张图片
zabbix默认的登陆用户名为Admin,密码为zabbix

你可能感兴趣的:(zabbix,linux,linux,运维)