美文网首页123hjg
自动化运维之【Zabbix+MySQL+Httpd】IT基础架构

自动化运维之【Zabbix+MySQL+Httpd】IT基础架构

作者: 张毅SOHO | 来源:发表于2020-06-15 15:31 被阅读0次

    Zabbix是一个开源的(遵循 GPLv2 协议)且支持中文语言的IT基础架构、服务、应用程序和资源监控系统。它使用 C/S 架构,由 Server(服务器端) 与 Agent(客户端代理) 组成。

    本方案基于CentOS8系统设计,建议在RedHat/CentOS系统中使用。

    1. 部署拓扑图

    Zabbix 部署拓扑图

    网络资源规划:

    1、服务器端

    • 主机名:Zabbix
    • IP 地址:192.168.0.10:10051
    • 程序:Zabbix Server
    • 系统:CentOS8

    2、客户端

    节点名 主机名 IP:PORT 程序 平台
    客户端-1 host 192.168.0.21:10050 Zabbix Agent Linux
    客户端-2 host 192.168.0.22:10050 Zabbix Agent Windows
    客户端≥3 host 192.168.0.23:10050 Zabbix Agent MacOS

    2. 服务器端安装和配置

    1、安装和初始化数据库。

    1)安装 MySQL 或 MariaDB:

    [centos@Zabbix ~ ]$ sudo dnf install mysql-server mysql
    

    或者:

    [centos@Zabbix ~ ]$ sudo dnf install mariadb-server mariadb
    

    2)启动数据库并设置为开机自启动:

    [centos@Zabbix ~ ]$ sudo systemctl start mysqld
    [centos@Zabbix ~ ]$ sudo systemctl enable mysqld
    

    或者:

    [centos@Zabbix ~ ]$ sudo systemctl start mariadb
    [centos@Zabbix ~ ]$ sudo systemctl enable mariadb
    

    3)初始化数据库根管理员账号【root】的口令:

    [centos@Zabbix ~ ]$ mysqladmin -u root password "password"
    

    4)测试登录数据库:

    [centos@Zabbix ~ ]$ mysql -u root -p
    Enter password:
    mysql> 
    

    2、安装 Web 中间件 。

    [centos@Zabbix ~ ]$ sudo dnf install httpd
    

    3、安装 Zabbix 服务器端 。

    1)打开 Zabbix 官方网站下载页面,选择 Zabbix 适配的操作系统和基础环境。

    2)下载并安装 Zabbix 官方 yum 源配置文件。

    [centos@Zabbix ~ ]$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
    [centos@Zabbix ~ ]$ sudo dnf clean all
    [centos@Zabbix ~ ]$ sudo dnf makecache
    

    3)安装 Zabbix Server、Zabbix Web、Zabbix Agent。

    [centos@Zabbix ~ ]$ sudo dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent
    

    4)创建和配置 Zabbix 数据库。

    [centos@Zabbix ~ ]$ mysql -u root -p
    Enter password:
    mysql> create database zabbix character set utf8 collate utf8_bin;
    mysql> create user zabbix@localhost identified by 'password';
    mysql> grant all privileges on zabbix.* to zabbix@localhost;
    mysql> flush privileges;
    mysql> quit; 
    

    5)导入 Zabbix 数据库结构。

    [centos@Zabbix ~ ]$ zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix 
    

    6)设置 Zabbix 配置文件参数。

    使用文本编辑器打开配置文件:

    [centos@Zabbix ~ ]$ sudo gedit /etc/zabbix/zabbix_server.conf 
    

    修改或验证文件中的以下参数并保存:

    # 服务器端口号,默认值是10051。
    ListenPort=10051
    
    # 日志文件路径
    LogFile=/var/log/zabbix/zabbix_server.log
    
    # 运行时文件路径
    PidFile=/var/run/zabbix/zabbix_server.pid
    
    # Socket目录
    SocketDir=/var/run/zabbix
    
    # 数据库服务器IP或DNS。
    DBHost=localhost
    
    # 数据库名称。
    DBName=zabbix
    
    # 数据库用户账号。
    DBUser=zabbix
    
    # 数据库用户的口令。
    DBPassword=password
    

    注意:一般情况下只需要设置【DBPassword】参数即可,其他的使用默认值。

    7)设置并启用 Web 中间件模块。

    [centos@Zabbix ~ ]$ sudo gedit /etc/php-fpm.d/zabbix.conf
    

    将文件中代码 "; php_value[date.timezone] = Europe/Riga" 改为如下并保存:

    php_value[date.timezone] = Asia/Shanghai
    

    注意:去掉 ";" 表示取消注释该行代码;"Asia/Shanghai" 表示中国时区。

    8)修改 SELinux 配置文件,永久关闭 SELinux。

    使用文本编辑器打开"/etc/selinux/config"文件:

    [centos@host ~]$ sudo gedit /etc/selinux/config
    

    将 "SELINUX" 参数设置为:"permissive" 或者 "disabled",并保存:

    #     enforcing - 表示启用 SELinux 安全策略。
    #     permissive - 表示启用 SELinux 安全策略,但不强制验证。如果执行第一步可以正常运行,则建议设置此值。
    #     disabled - 关闭 SELinux 安全策略,相当于没有安装 SELinux。
    SELINUX=disabled
    

    重启服务器:

    [centos@host ~]$ sudo reboot
    

    9)启动 Zabbix 相关服务,并设置为开启自启动。

    [centos@Zabbix ~ ]$ sudo systemctl start zabbix-server zabbix-agent httpd php-fpm
    [centos@Zabbix ~ ]$ sudo systemctl enable zabbix-server zabbix-agent httpd php-fpm 
    

    10)设置防火墙端口(CentOS8默认安装firewall防火墙),允许"80"、"10051"、"10050"端口(Zabbix 默认端口)访问服务器。

    [centos@Zabbix ~ ]$ sudo firewall-cmd --zone=public --add-port=10051/tcp --permanent
    [centos@Zabbix ~ ]$ sudo firewall-cmd --zone=public --add-port=10050/tcp --permanent
    [centos@Zabbix ~ ]$ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
    [centos@Zabbix ~ ]$ sudo firewall-cmd --reload
    

    4、配置 Zabbix 服务器端 。

    在浏览器中输入【http://localhost/zabbix】。

    欢迎页 前置检查 数据库配置 中间件配置 安装前摘要 完成页

    5、使用 Zabbix 监控器 。

    在浏览器中输入【http://localhost/zabbix】,初始用户的账号和口令分别是:【Admin】和【zabbix】,账号和口令都区分大小写。

    用户认证 主界面 设置中文语言 中文主界面

    3. 客户端安装和配置

    1、打开 Zabbix 官方网站下载页面,选择 Zabbix 适配的操作系统和基础环境。

    2、下载并安装 Zabbix 官方 yum 源配置文件。

    [centos@host ~ ]$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
    [centos@host ~ ]$ sudo dnf clean all
    [centos@host ~ ]$ sudo dnf makecache
    

    3、安装 Zabbix Agent。

    [centos@host ~ ]$ sudo dnf install zabbix-agent
    

    4、设置 Zabbix 配置文件参数。

    使用文本编辑器打开配置文件:

    [centos@host ~ ]$ sudo gedit /etc/zabbix/zabbix_agentd.conf 
    

    修改或验证文件中的以下参数并保存:

    # 日志文件路径
    LogFile=/var/log/zabbix/zabbix_agentd.log
    
    # 运行时文件路径
    PidFile=/var/run/zabbix/zabbix_agentd.pid
    
    # Zabbix 服务器端IP地址。
    Server=192.168.0.10
    
    # Zabbix 主动检查本机数据接收服务器IP地址。
    ServerActive=192.168.0.10
    
    # 客户端主机名称。
    Hostname=192.168.0.21
    
    # 代理端口号,默认值是10050。
    ListenPort=10050
    

    5、修改 SELinux 配置文件,永久关闭 SELinux。

    使用文本编辑器打开"/etc/selinux/config"文件:

    [centos@host ~]$ sudo gedit /etc/selinux/config
    

    将 "SELINUX" 参数设置为:"permissive" 或者 "disabled",并保存:

    #     enforcing - 表示启用 SELinux 安全策略。
    #     permissive - 表示启用 SELinux 安全策略,但不强制验证。如果执行第一步可以正常运行,则建议设置此值。
    #     disabled - 关闭 SELinux 安全策略,相当于没有安装 SELinux。
    SELINUX=disabled
    

    重启服务器:

    [centos@host ~]$ sudo reboot
    

    6、启动 Zabbix Agent 服务,并设置为开启自启动。

    [centos@host ~ ]$ sudo systemctl start zabbix-agent
    [centos@host ~ ]$ sudo systemctl enable zabbix-agent
    

    7、设置防火墙端口(CentOS8默认安装firewall防火墙),允许"10050"端口(Zabbix Agent 默认端口)访问服务器。

    [centos@host ~ ]$ sudo firewall-cmd --zone=public --add-port=10050/tcp --permanent
    [centos@host ~ ]$ sudo firewall-cmd --reload
    

    注意:所有客户端都需按照以上步骤配置。

    8、在 Zabbix 监控系统中配置客户端主机。

    在浏览器中输入【http://localhost/zabbix】,初始用户的账号和口令分别是:【Admin】和【zabbix】,账号和口令都区分大小写。

    在【配置 --> 主机】页面中创建新的主机 填写客户端主机基本信息 选择监控点模块并添加 添加完成

    注意:添加完成后,需要等待大约 3 分钟才能建立服务器和客户端的数据通信,之后刷新一下页面,如果发现该主机的可用性标记为下图状态,则表示客户端已受控。

    图片.png

    常见问题:更改 Zabbix 用户的口令

    [centos@Zabbix ~ ]$ mysql -u root -p
    Enter password:
    mysql> use zabbix;
    mysql> update users set passwd=md5('password') where alias= 'Admin';
    

    相关文章

      网友评论

        本文标题:自动化运维之【Zabbix+MySQL+Httpd】IT基础架构

        本文链接:https://www.haomeiwen.com/subject/mecqxktx.html