zabbix监控接口状态、执行脚本、发送邮件

zabbix监控接口状态、执行脚本、发送邮件

一、软件环境安装

server安装

#docker安装

1、创建文件夹

mkdir zabbix
cd zabbix

2、创建docker-compose.yml文件

vi docker-compose.yml
version: '3'
services:

zabbix_mysql:
  container_name: "zabbix_mysql"
  restart: "always"
  image: mariadb
  ports:
    - "13306:3306"
  volumes:
    - /data/docker/mysql-data:/var/lib/mysql
    - /etc/localtime:/etc/localtime:ro
  environment:
    MYSQL_ROOT_PASSWORD: "mysqlpss123"
    MYSQL_USER: "zabbix"
    MYSQL_PASSWORD: "mysqlpss123"
    MYSQL_DATABASE: "zabbix"

zabbix_server:
  container_name: "zabbix_server"
  restart: "always"
  image: zabbix/zabbix-server-mysql
  ports:
    - "10051:10051"
  volumes:
    - /etc/localtime:/etc/localtime:ro
    - /data/docker/zabbix:/usr/lib/zabbix
  depends_on:
    - zabbix_mysql
  links:
    - zabbix_mysql:mysql
  environment:
    DB_SERVER_HOST: "mysql"
    MYSQL_USER: "zabbix"
    MYSQL_DATABASE: "zabbix"
    MYSQL_PASSWORD: "mysqlpss123"

zabbix_nginx_web:
  container_name: "zabbix_nginx_web"
  restart: "always"
  image: zabbix/zabbix-web-nginx-mysql
  ports:
    - "1443:443"
    - "10000:8080"
  volumes:
    - /etc/localtime:/etc/localtime:ro
  depends_on:
    - zabbix_mysql
    - zabbix_server
  links:
    - zabbix_mysql:mysql
    - zabbix_server:zabbix_server
  environment:
    DB_SERVER_HOST: "mysql"
    MYSQL_USER: "zabbix"
    MYSQL_PASSWORD: "mysqlpss123"
    MYSQL_DATABASE: "zabbix"
    ZBX_SERVER_HOST: "zabbix_server"
    PHP_TZ: "Asia/Shanghai"

3、创建容器启动server服务

docker-compose up -d

浏览器访问ip:端口出现zabbix登录页面,默认登录账号Admin密码zabbix


#注意如果出现数据库报错

进入zabbix_mysql容器删除zabbix数据库,等zabbix_server重新创建就好

docker exec -it zabbix_mysql /bin/bash
#进入数据库容器
mysql -u root -p
#输入密码
drop database zabbix;

agent安装

#rpm安装

1、安装源

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum clean all

2、安装agent

yum install -y zabbix-agent

3、修改配置文件

vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1                #<===zabbix server的ip地址或主机名,可同时列出多个,需要用逗号隔开(基于IP地址的授权机制,允许那些server来获取信息,可以是多个server获取数据)
ServerActive=127.0.0.1      #<===主动将数据推送给哪个服务端,服务端处于被动模式下(将数据通知给哪个server,如果本机既是server又是agent,不能去掉127.0.0.1)
Hostname=Zabbix server      #<===(agent端节点主机名)在对应节点实现自动发现,自动联系server服务端,告知自己是谁(全局唯一),一般是本机主机名,通常也使用DNS解释的主机名

4、启动agent服务

systemctl start zabbix-agent
#启动agent服务
systemctl enable zabbix-agent
#添加开机启动

5、开启端口

firewall-cmd --zone=public --add-port=10050/tcp --permanent
firewall-cmd --reload

二、创建监控

1、创建主机

配置》主机》创建主机

#主机名称获取方式,agent服务器上执行

hostname
#获取主机名称

2、创建web监控

从刚创建的主机中点击web监测

创建web场景

3、创建触发器

从刚创建的主机中点击触发器

创建触发器

4、创建动作

配置》动作页面

创建动作

#注意agent执行命令,需要配置一些设置

登录agent主机

增加一行配置可远程执行命令

vim /etc/zabbix/zabbix_agentd.conf
#增加一行配置可远程执行命令
EnableRemoteCommands=1

修改sudo使zabbix可以执行sudo

visudo
#增加一行
zabbix ALL=(ALL) NOPASSWD: ALL

重启zabbix agent

systemctl restart zabbix-agent

三、配置邮箱告警

1、确保你的zabbix-server、zabbix-agent服务是正常的。

2、确保你的zabbix-server有触发器,且有效。

3、确保你的服务器可以访问互联网。

1、配置发件箱

管理》报警媒介类型页面

修改或创建一个Media type

2、配置收件箱

管理》用户页面

3、配置发送邮件动作

配置》动作页面

创建动作

 

 

 

 

Zabbix使用agent监控

zabbix之Web检测

zabbix从放弃到入门(7):触发器详解之一,创建触发器

zabbix触发器调用远程脚本

zabbix-agentd配置文件详解

每日一记:zabbix邮箱告警配置(超简单)

posted @ 2020-08-04 15:20  左岸丶  阅读(1936)  评论(0编辑  收藏  举报