开源服务器监控工具——zabbix(二)[通俗易懂]

开源服务器监控工具——zabbix(二)[通俗易懂]基本知识及安装操作见:开源服务器监控工具——zabbix(一)使用脚本操作zabbix我们可以利用脚本来对zabbix进行操作,可以使用脚本进行登陆zabbix,发现、删除和创建要监控的主机,我们需要将要执行的操作写入脚本中。登陆mkdir/zabbixcd/zabbixvimzabbix-api.sh写入:curl-s-XPOST-H’Content-Type:a…

大家好,又见面了,我是你们的朋友全栈君。

基本知识及安装操作见:开源服务器监控工具——zabbix(一)

使用脚本操作zabbix

我们可以利用脚本来对zabbix进行操作,可以使用脚本进行登陆zabbix,发现、删除和创建要监控的主机,我们需要将要执行的操作写入脚本中。

登陆

mkdir /zabbix
cd /zabbix
vim zabbix-api.sh
写入:

curl -s -X POST -H 'Content-Type:application/json' -d '
{
    "jsonrpc": "2.0",
    "method": "user.login",
    "params": {
        "user": "Admin",
        "password": "westos"
    },
    "id": 1,
    "auth": null
}' http://172.25.6.11/zabbix/api_jsonrpc.php | python -m json.tool

在这里插入图片描述
给脚本可执行权限:chmod +x zabbix-api.sh
执行脚本:./zabbix-api.sh
在这里插入图片描述

发现

这个脚本可以自动发现可以使用zabbix-server监控的主机,我们创建第二个脚本get.sh,内容如下:

curl -s -X POST -H 'Content-Type:application/json' -d '
{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": [
            "hostid",
            "host"
    ],
    "selectInterfaces": [
           "interfaceid",
           "ip"
       ]
},
    "id": 2,
    "auth":"此处写执行上一个脚本得到的result后面的"
}' http://172.25.6.11/zabbix/api_jsonrpc.php | python -m json.tool

在这里插入图片描述
给脚本执行权限并执行脚本:
在这里插入图片描述
可以看到,我们使用脚本发现了zabbix-server监控的主机server1-172.25.66.1

删除

我们可以利用删除脚本直接删除zabbix-server所监控的主机,前面我们已经监控了server1,现在我们使用删除脚本来将server1删除,脚本delete.sh内容如下:

curl -s -X POST -H 'Content-Type:application/json' -d '
{
    "jsonrpc": "2.0",
    "method": "host.delete",
    "params": [
        "填写执行上个脚本最后得到的hostid" 
    ],
    "id": 2,
    "auth": "不变"
}' http://172.25.6.11/zabbix/api_jsonrpc.php | python -m json.tool

在这里插入图片描述
给予脚本执行权限并执行脚本:
在这里插入图片描述
执行成功后,我们可以到zabbix的web页面中,在配置栏的主机选项中可以看到监控的server1主机已经消失

创建

我们也可以用脚本创建被监控主机,创建后,就可以在zabbix的web页面中看到,脚本create.sh内容如下:

curl -s -X POST -H 'Content-Type:application/json' -d '
{
    "jsonrpc": "2.0",
    "method": "host.create",
    "params": {
        "host": "server1",
        "interfaces": [
                {
                        "type": 1,
                        "main": 1,
                        "useip": 1,
                        "ip": "172.25.66.1",
                        "dns": "",
                        "port": "10050"
                }
        ],
        "groups": [
                {
                        "groupid": "2"
                }
        ],
        "templates": [
        {

          "templateid": "10001"
        }
        ]
},
    "id": 2,
    "auth":"不变"
}' http://172.25.66.11/zabbix/api_jsonrpc.php | python -m json.tool

在这里插入图片描述
在这里插入图片描述
给脚本执行权限并执行:
在这里插入图片描述
执行后,在web页面就会出现server1主机
在这里插入图片描述

为zabbix添加模板

模板
模板:里边可以配置监控项、触发器、图形等,作用是在主机上可以直接link模板,继承模板中的配置。主机套用模板后,就拥有了模板中的配置:监控项、触发器、图形。
比如创建了一个监控磁盘大小的监控项,然后创建了触发器、和图形。那个机器想监控磁盘大小,直接套用此模板就行了。100台机器需要监控磁盘,直接套用这一个模板就可以,无需添加100次监控项、触发器和图形。
平时工作中,我们需要监控web、mysql、redis、nginx 这些服务器,众多服务器的业务都是一样的,所以我们只要事先创建好模板,然后所有服务器链接这个模板即可,如果后续有修改、新增功能,只需要修改模板即可。

添加http模板

在用来当模板的被监控主机中下载http并启动,然后进入zabbix的web页面中执行以下操作:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

添加mysql模板

在zabbix-server主机中:
cd /var/lib
mkdir zabbix
cd zabbix
编辑一个隐藏文件.my.cnf
vim .my.cnf
在这里插入图片描述
写入:

[msyql]
user=root
password=westos
socket=/var/lib/mysql/mysql.sock

[mysqladmin]
user=root
password=westos
socket=/var/lib/mysql/mysql.sock

在这里插入图片描述
重启zabbix-agent服务
systemctl restart zabbix-agent
然后在zabbix的web页面中执行以下操作:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133546.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Navicat连接SQL Server2000提示错误08001

    Navicat连接SQL Server2000提示错误08001数据库是SQLServer2000问题描述无论是本机的数据库还是局域网内的,都出现如图的提示使用系统自带的“SQL查询分析器”则可以访问!百度了一圈,给出的都是sql2005的解决办法请问2000该如何解决啊,先谢过~http://bbs.csdn.net/topics/390715240?page=1解决方法运行Navicat安装目录下的sqlncli.msi,选择修复(R

    2022年8月30日
    2
  • Ubuntu终端打开文件及查看目录「建议收藏」

    Ubuntu终端打开文件及查看目录「建议收藏」方法/步骤 1ctrl+alt+t,调出终端。———— 要去某个目录,用cd 例如:cd/home/yang/下载/ 在视图中,后面还有一个文件夹,我记不住,就按tab键一下。就自动出来了。 如果该文件夹下东西比较多,你记不住,那就多按两次tab,就会出现可以进入的文件夹。在这里我要进入【下载】文件夹里。————- …

    2022年10月11日
    0
  • socketpair原理_socket方法

    socketpair原理_socket方法今天跟人谈到socketpair的问题,晚上回来写了个程序验证下自己的猜测!   先说说我的理解:socketpair创建了一对无名的套接字描述符(只能在AF_UNIX域中使用),描述符存储于一个二元数组,eg.s[2].这对套接字可以进行双工通信,每一个描述符既可以读也可以写。这个在同一个进程中也可以进行通信,向s[0]中写入,就可以从s[1]中读取(只能从s[1]中读取),也可以在

    2022年10月14日
    0
  • nginx接口转发_网关和nginx区别

    nginx接口转发_网关和nginx区别nginx转发给网关的时候会丢失很多信息,包括host信息解决办法在nginx的配置文件配置proxy_set_headerHost$host;proxy_passhttp://转发的ip地址还有一点需要注意网关转到具体的域名需要配置在网关的最后…

    2022年10月10日
    0
  • Celer cBridge 主网上线:无缝桥接跨链和跨层流动性

    Celer cBridge 主网上线:无缝桥接跨链和跨层流动性CelercBridgev1.0版本今天正式主网上线!用户可以立即使用cBridge在Ethereum、Arbitrum、BinanceSmartChain以及Polygon进行高速低成本跨链和跨层转账。cBridge将会在短期内支持更多的layer2和layer1区块链的跨链转账。此外,任何人都将能够通过运行cBridge节点加入cBridge网络以提供跨链跨层流动性,同时通过收取手续费产生收益。cBridge是一个重要的里程碑,它标志着Celer将在未来的多链多层区块链扩容生态下,提..

    2022年6月4日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号