zabbix2.0

  • zabbix自动发现

  • zabbix代理设置

  • snmp ············》监控网络设备

监控的模式:

1、zabbix的主动模式和被动模式

主动和被动模式都是对于客户端而言的

  • 主动模式:客户端主动将数据发送给server或者是代理

  • 被动模式:服务端或者proxy(代理)主动去找客户端索要数据 ·············》被动模式(默认)

被动模式在成规模的集群(成百上千的情况),都是由服务端主动去找,那么服务端的压力会很大

自动发现:服务端可以自动发现客户端,并且把客户端添加到监控组当中去

1、zabbix官网提供的API内部的接口

api和端口之间的区别:

  • 端口:应用和应用之间的通信

  • 应用内部的组件进行通信的是API

内部的token密钥,首先要获取内部的通信密钥

官方获取内部token密钥的方法:

复制代码
curl -s -X POST -H 'Content-Type:application/json' -d '
{
  "jsonrpc": "2.0",
  "method": "user.login",
  "params": {
    "username": "Admin",
    "password": "zabbix"
  },
  "id": 1
}' http://192.168.31.10/zabbix/api_jsonrpc.php

curl -s -X POST -H 'Content-Type:application/json' -d '
{
  "jsonrpc": "2.0",
  "method": "host.create",#定义请求的方法,方法有很多,创建主机
  "params": {
     "host": "test2",#定义客户端的主机名
     "interfaces": [  #定义监控项的类型和客户端的信息
       {
         "type": 1,#类型为1 agent 2 snmp 3 umpi 4 jmx
         "main": 1,#调用主接口
         "useip": 1,#0 ···使用dns解析主机名,1 ···表示使用ip地址
         "ip": "192.168.233.20",客户端ip地址
         "dns": "",
         "port": "10050"#客户端端口
       }
   ],
   "groups": [
      {
         "groupid": "2"#所属的主机id
        }
   ],
   "templates": [
   {
        "templateid": "10001"#所属的模板的id
   }
   ]
},
"auth": "d42ab5124b4e066114d26cfb1f6cfe9a",
"id": 1
}' http://192.168.31.10/zabbix/api_jsonrpc.php | python3 -m json.tool

f8G3K9s2!mB4@xL7#pQ6vZ1n0

apt install -y zabbix-proxy-mysql zabbix-get zabbix-sql-scripts

apt install -y mariadb-server( =mysql )

mysql_secure_installation

复制代码
CREATE DATABASE zabbix_proxy character set utf8 collate utf8_bin;
GRANT all ON zabbix_proxy.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';
flush privileges;

cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql -u root -p123456 zabbix_proxy

复制代码
curl -s -X POST -H 'Content-Type:application/json' -d '
{
  "jsonrpc": "2.0",
  "method": "host.create",
  "params": {
     "host": "test3",
     "proxy_hostid": "10636",
     "interfaces": [
       {
         "type": 1,
         "main": 1,
         "useip": 1,
         "ip": "192.168.233.30",
         "dns": "",
         "port": "10050"
       }
   ],
   "groups": [
      {
         "groupid": "2"
        }
   ],
   "templates": [
   {
        "templateid": "10001"
   }
   ]
},
"auth": "d42ab5124b4e066114d26cfb1f6cfe9a",
"id": 1
}' http://192.168.233.10/zabbix/api_jsonrpc.php | python3 -m json.tool

批量添加主机的脚本

复制代码
#!/bin/bash
IP="
192.168.233.20
192.168.233.40
"
for i in ${IP}
do
#获取主机名
hostname=$(nslookup ${i} | grep 'name =' | awk '{print $4}'| sed 's/\.//')

curl -s -X POST -H 'Content-Type:application/json' -d '
{
  "jsonrpc": "2.0",
  "method": "host.create",
  "params": {
     "host": "'${hostname}'",
     "interfaces": [
       {
         "type": 1,
         "main": 1,
         "useip": 1,
         "ip": "'${i}'",
         "dns": "",
         "port": "10050"
       }
   ],
   "groups": [
      {
         "groupid": "2"
        }
   ],
   "templates": [
   {
        "templateid": "10343"
   }
   ]
},
"auth": "2e8954eca193054c88b919d39bc93e7a",
"id": 1
}' http://192.168.233.10/zabbix/api_jsonrpc.php | python3 -m json.tool
done

zabbix-snmp监控:

snmp:简单网络管理协议

simple network management protocol:用来监控和管理网络设备的标准协议

路由器,交换机等等

snmp-agent sys-info version all

snmp1 snmp2 snmp3 all 开启snmp协议之后,支持以上的所有版本。

snmp-agent community write public

路由器设备可以被哪些团体进行读写,public:公共组,所有设备都可以读写路由器的配置信息

复制代码
snmp-agent target-host trap-hostname zabbix address 192.168.233.10 udp-p
ort 161 trap-paramsname zabbix

声明监控的zabbix的server端的ip地址,和snmp的监听端口

view systemonly included .1.3.6.1.2.1.25.1

设备的oid信息,一般都是从设备厂商直接获取

1: 表示设备名,查询设备的所有信息

数字越短,能看到的信息就越多

zabbix监控:

zbx jmx ipmi snmp

zbx---传统监控,监控服务器状态和服务器上应用状态

snmp

代理配置:一般都是代理直接收集客户端的数据。

自动发现和代理的配置,可以通过api接口的方式实现

在当中写监控组件的时候,写了zabbix可以写普罗米修斯

如果写了普罗米修斯,就不需要再配置zabbix ···················》k8s集群当中

zabbix不适用监控容器,监控容器和k8s的pod的资源情况,使用普罗米修斯

相关推荐
千里马学框架5 天前
一起学 Android 14:ShellTransition 屏幕旋转过程深度剖析
android·智能手机·性能优化·framework·性能·屏幕旋转·rotation
美狐美颜SDK开放平台5 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
AFinalStone5 天前
Android7 SystemUI源码解析(七)Keyguard锁屏模块深度解析
android·systemui
致远ccc5 天前
Google Play 上架前如何测试 App?多国家 Android 环境测试
android·app测试·googleplay·多国家应用测试
ttyyttemo5 天前
Kotlin 协程中的 Job 结构化并发与取消
android
sun0077005 天前
tbox 4g/5g切换,导致wan ip 改变,导致车机旧网络不可用。需要重启车机才行
android
其实防守也摸鱼5 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
AFinalStone5 天前
Android7 SystemUI 源码解析(四)NavigationBar 导航栏与 SystemBars
android·systemui
JMchen5 天前
属性动画原理与高级动画实现
android·kotlin·canvas
AFinalStone5 天前
Android7 SystemUI 源码解析(二)启动流程深度解析
android·systemui