yanchuen 发表于 2015-12-24 13:01:52

Zabbix Auto discovery 批量修改主机名称

之前配置了Discovery+Action实现了主机自动发现并主机、分组、添加模板等功能。后来进入组里面一看原来都是Hostsname都是以IP地址命名的,后来就拿php和zbx api 写了一个脚本,来完成批量修改主机名的目的。
           注:这个hostsname我是用的agentd里面配置的hostsname。
  流程:
1.读取zabbix数据库中原有的dservices表,表内存放着discovery的发现信息,IP地址、系统版本。
  2.在zabbix数据库中新建一个dhosts_plus表,存放zabbix_get脚本发现的hostsname。
  3.通过dhosts_plus表内的信息,与API调用修改已经注册的主机。
  注: 主要是通过zabbix_get脚本和agent.hostname agent.version这两个参数。Hostsname是配置文件下设置的。    1.8.2不支持agent.hostname!!!!!!!!!!!!!
  目录结构:
http://blog.iyunv.com/data:image/png;base64,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
  MYSQL表结构:



[*]CREATE TABLE IF NOT EXISTS `dhosts_plus` (

[*]
[*]`ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增',
[*]
[*]`IP` varchar(20) NOT NULL COMMENT 'IP地址',
[*]
[*]`OS` varchar(255) NOT NULL COMMENT '系统',
[*]
[*]`agent.hostname` varchar(30) NOT NULL COMMENT '名字',
[*]
[*]`agent.version` varchar(30) NOT NULL COMMENT '版本',
[*]
[*]PRIMARY KEY (`ID`)
[*]
[*]) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=0 ;
  MYSQL表内容:
http://blog.iyunv.com/data:image/png;base64,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
  
脚本内容:

      这些php文件头部都加了#!/opt/lampp/bin/php 这是我配置的php环境 在LINUX命令行下chmod +x insert.php 就可在命令行下运行php文件。

  Insert.php



[*]#!/opt/lampp/bin/php

[*] query($SQL_1);
[*]    // 查找dservices表内的ip,value字段 SQL语句
[*]    $SQL_2 = 'SELECT ip,value FROM dservices';
[*]    //执行SQL语句
[*]    $result = $pdo -> query($SQL_2);
[*]    // 遍历
[*]    while($row = $result -> fetch()){
[*]         #print_r($row);
[*]         $ip = $row['ip'];
[*]         $os = $row['value'];
[*]
[*]         // 用zabbix_get脚本来获取主机名称 和 客户端版本号
[*]         $name = exec("/usr/local/zabbix_proxy/bin/zabbix_get -s $ip -k'agent.hostname'");
[*]         $version = exec("/usr/local/zabbix_proxy/bin/zabbix_get -s $ip -k'agent.version'");
[*]
[*]         // 将上面返回结果插入到 dhosts_plus 表内 SQL语句
[*]         $SQL_3 = "INSERT INTO `dhosts_plus` (`ID`, `IP`, `OS`,`agent.hostname`, `agent.version`) VALUES (NULL, '$ip', '$os', '$name', '$version')";
[*]         # echo $SQL_3;
[*]         # exit;
[*]         // 执行
[*]         $pdo -> exec($SQL_3);
[*]         $ID = $pdo -> lastInsertId();
[*]         // 执行成功后 返回ID
[*]         echo $ID."\n";
[*]    }
[*]}
[*]
[*]insert($pdo);
  Update.php



[*]#!/opt/lampp/bin/php

[*]url = "http://202.206.32.41/api_jsonrpc.php";
[*]$zbx->method = 'user.login';
[*]/* 用户名 */
[*]$zbx->query['user'] = 'api';
[*]/* 密码 */
[*]$zbx->query['password'] = 'zabbix';
[*]$zbx->access_token = $zbx->call()['result'];
[*]
[*]
[*]// 获得windows 主机 SQL语句
[*]$SQL_1='SELECT * FROM `dhosts_plus` WHERE `OS` like "%Win%"';
[*]// 执行
[*]$result = $pdo -> query($SQL_1);
[*]// windows 主机更新
[*]while($row = $result -> fetch()){
[*]    #print_r($row);
[*]    $ip = $row['IP'];
[*]    $host = $row['agent.hostname'];
[*]    $version = $row['agent.version'];
[*]
[*]    // 获得 hosts id
[*]    $zbx->method = 'host.get';
[*]    $zbx->query['output'] = 'hostids';
[*]    $zbx->query['filter']['ip'] = "$ip";
[*]    $hostid = $zbx->call()['result']['0']['hostid'];
[*]    #print_r($hostid);
[*]
[*]    // 通过hosts id 更新主机
[*]    $zbx->method = 'host.update';
[*]    $zbx->query['hostid'] = "$hostid";
[*]    $zbx->query['host'] = "$host";
[*]    $zbx->query['name'] = "$host";
[*]    // 描述的位置写上 客户端版本号;覆盖性写入
[*]    # $zbx->query['description'] = "This Agentd version:$version";
[*]    $hostupdate = $zbx->call();
[*]    // 返回hostsid,证明更新成功
[*]    print_r($hostupdate);
[*]}
[*]
[*]// 获得LINUX 主机 SQL语句
[*]$SQL_2='SELECT * FROM `dhosts_plus` WHERE `OS` like "%Linux%"';
[*]// 执行
[*]$result = $pdo -> query($SQL_2);
[*]// LINUX 主机更新
[*]while($row = $result -> fetch()){
[*]    #print_r($row);
[*]    $ip = $row['IP'];
[*]    $host = $row['agent.hostname'];
[*]    $version = $row['agent.version'];
[*]
[*]    // Host ID
[*]    $zbx->method = 'host.get';
[*]    $zbx->query['output'] = 'hostids';
[*]    $zbx->query['filter']['ip'] = "$ip";
[*]    $hostid = $zbx->call()['result']['0']['hostid'];
[*]    #print_r($hostid);
[*]
[*]    // Update Host
[*]    $zbx->method = 'host.update';
[*]    $zbx->query['hostid'] = "$hostid";
[*]    $zbx->query['host'] = "$host";
[*]    $zbx->query['name'] = "$host";
[*]    # $zbx->query['description'] = "This Agentd version:$version";
[*]    $hostupdate = $zbx->call();
[*]    print_r($hostupdate);
[*]}
  Zbx.inc.php



[*]method;
[*]
[*]      $data['params'] = $this->query;
[*]
[*]      $this->query = '';
[*]
[*]      if(!empty($this->access_token))
[*]
[*]      $data['auth'] = $this->access_token;
[*]
[*]      $data['id'] = rand(1,100);
[*]
[*]      $data = json_encode($data, JSON_PRETTY_PRINT);
[*]
[*]      return $this->connect($this->url, $data);
[*]
[*]    }
[*]
[*]
[*]
[*]}

页: [1]
查看完整版本: Zabbix Auto discovery 批量修改主机名称