美文网首页
Linux - LNMP 安装Zabbix

Linux - LNMP 安装Zabbix

作者: 纳样流年 | 来源:发表于2021-12-15 19:27 被阅读0次

    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 '<password>';
    # 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=<password>  数据库用户密码
    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

    相关文章

      网友评论

          本文标题:Linux - LNMP 安装Zabbix

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