author:headsen  chen

date: 2018-11-10  10:08:38

背景:zabbix的硬件监控架构已经部署完成,接下来就是创建主机这一步,2400台主机如果采用一台台的创建和关联模板就太慢了。硬件监控不用于agent方式,agent的方式可以采用添加自动发现的规则来自动注册。

硬件监控采用 server端通过SNMP服务去各个物理机的管理卡上去抓相应的硬件信息。所以无法通过自动发现规则来添加主机

1,手动添加一台主机,导出该主机的xml配置信息:

<zabbix_export>
    <version>4.0</version>
    <date>2018-11-09T11:12:04Z</date>
    <groups>
        <group>
            <name>Linux servers</name>
        </group>
        <group>
            <name>北京dell服务器组</name>
        </group>
    </groups>
    <hosts>
        <host>
            <host>1.1.1.1</host>
            <name>1.1.1.1</name>
            <description/>
            <proxy>
                <name>10-20-42-2</name>
            </proxy>
            <status>0</status>
            <ipmi_authtype>-1</ipmi_authtype>
            <ipmi_privilege>2</ipmi_privilege>
            <ipmi_username/>
            <ipmi_password/>
            <tls_connect>1</tls_connect>
            <tls_accept>1</tls_accept>
            <tls_issuer/>
            <tls_subject/>
            <tls_psk_identity/>
            <tls_psk/>
            <templates>
                <template>
                    <name>Template Dell iDrac SNMPV2</name>
                </template>
            </templates>
            <groups>
                <group>
                    <name>Linux servers</name>
                </group>
            </groups>
            <interfaces>
                <interface>
                    <default>1</default>
                    <type>2</type>
                    <useip>1</useip>
                    <ip>1.1.1.1</ip>
                    <dns/>
                    <port>161</port>
                    <bulk>1</bulk>
                    <interface_ref>if1</interface_ref>
                </interface>
            </interfaces>
            <applications/>
            <items/>
            <discovery_rules/>
            <httptests/>
            <macros/>
            <inventory/>
        </host>
    </hosts>
</zabbix_export>

2,分析该xml文件,解析结构分为以下几个标签

<zabbix_export>
 <version>4.0</version>
    <date>2018-11-09T11:12:04Z</date>
    <groups>
                <group>  ...
                </group>
    </groups>
    <hosts> 
                    ...
    </hosts>   
</zabbix_export>

其中:hosts 标签就每台添加的主机的信息,我们每次添加的主机,都是再写一个 <hosts> 标签

3,将2400台主机的IP写入dell-ip-list 文件里,并放入centos6.8的系统里,以便通过shell进行操作

4,构思:利用for循环实现生成2400台主机的xml文件

第一步:文件头部不动的部分:

# cat  >> dell.xml <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
    <version>4.0</version>
    <date>2018-11-09T11:12:04Z</date>
    <groups>
        <group>
            <name>Linux servers</name>
        </group>
        <group>
            <name>北京dell服务器组</name>
        </group>
    </groups>
    <hosts>
EOF

第二步:写一个单 <hosts>标签的模板文件:

# cat >> plate.xml <<
       <host>
            <host>1.1.1.1</host>
            <name>1.1.1.1</name>
            <description/>
            <proxy>
                <name>10-20-42-2</name>
            </proxy>
            <status>0</status>
            <ipmi_authtype>-1</ipmi_authtype>
            <ipmi_privilege>2</ipmi_privilege>
            <ipmi_username/>
            <ipmi_password/>
            <tls_connect>1</tls_connect>
            <tls_accept>1</tls_accept>
            <tls_issuer/>
            <tls_subject/>
            <tls_psk_identity/>
            <tls_psk/>
            <templates>
                <template>
                    <name>Template Dell iDrac SNMPV2</name>
                </template>
            </templates>
            <groups>
                <group>
                    <name>Linux servers</name>
                </group>
            </groups>
            <interfaces>
                <interface>
                    <default>1</default>
                    <type>2</type>
                    <useip>1</useip>
                    <ip>1.1.1.1</ip>
                    <dns/>
                    <port>161</port>
                    <bulk>1</bulk>
                    <interface_ref>if1</interface_ref>
                </interface>
            </interfaces>
            <applications/>
            <items/>
            <discovery_rules/>
            <httptests/>
            <macros/>
            <inventory/>
        </host>
EOF

第三步:利用for循环生成2400个物理机的hosts标签文件的脚本: xml.sh

#!/bin/bash
for i in `cat dell-ip-list`
do
   cat plate.xml > dd
   sed -i "s/1.1.1.1/$i/g" dd
   cat dd >> dell.xml
done
echo "     </hosts>
</zabbix_export>" >> dell.xml

第四步:运行该脚本,生成dell.xml 的文件

# sh xml.sh

5,将dell.xml文件导入

静等15分钟。之后刷新页面,得到如下页面证明配置成功:

zabbix高级玩法之通过xml文件一次性导入的更多相关文章

  1. maven 高级玩法

    maven 高级玩法 标签(空格分隔): maven 实用技巧 Maven 提速 多线程 # 用 4 个线程构建,以及根据 CPU 核数每个核分配 1 个线程进行构建 $ mvn -T 4 clean ...

  2. 轻量级高性能ORM框架:Dapper高级玩法

    Dapper高级玩法1: 数据库中带下划线的表字段自动匹配无下划线的Model字段. Dapper.DefaultTypeMap.MatchNamesWithUnderscores = true; 备 ...

  3. 【ASP.NET Core】依赖注入高级玩法——如何注入多个服务实现类

    依赖注入在 ASP.NET Core 中起中很重要的作用,也是一种高大上的编程思想,它的总体原则就是:俺要啥,你就给俺送啥过来.服务类型的实例转由容器自动管理,无需我们在代码中显式处理. 因此,有了依 ...

  4. 【Python基础】random 的高级玩法

    random 模块的高级玩法 1.python 随机产生姓名 方式一: import random xing = [ '赵', '钱', '孙', '李', '周', '吴', '郑', '王', ' ...

  5. Word 查找替换高级玩法系列之 -- 段首批量添加字符

    打开「查找和替换」输入框,按照下图操作: 更多查找替换高级玩法,参看:Word查找替换高级玩法系列 -- 目录篇 未完 ...... 点击访问原文(进入后根据右侧标签,快速定位到本文)

  6. Word 查找替换高级玩法系列之 -- 把论文中的缩写词快速变成目录下边的注释表

    1. 前言 问题:Word写论文如何把文中的缩写快速转换成注释表? 原来样子: 想要的样子: 2. 步骤 使用查找替换高级用法,替换缩写顺序 选中所有文字 打开查找替换对话框,输入以下表达式: 替换后 ...

  7. mybatis mapper xml文件的导入方式和查询方式

    mybatis mapper xml文件的导入方式和查询方式 ssm框架 Mybatis  mapper与SQLSession的关系 每个基于MyBatis的应用都是以一个SqlSessionFact ...

  8. 十五天精通WCF——第九天 高级玩法之自定义Behavior

    终于我又看完了二期爱情保卫战,太酸爽了,推荐链接:http://www.iqiyi.com/a_19rrgublqh.html?vfm=2008_aldbd,不多说,谁看谁入迷,下面言归正传, 看看这 ...

  9. [转]十五天精通WCF——第九天 高级玩法之自定义Behavior

    终于我又看完了二期爱情保卫战,太酸爽了,推荐链接:http://www.iqiyi.com/a_19rrgublqh.html?vfm=2008_aldbd,不多说,谁看谁入迷,下面言归正传, 看看这 ...

随机推荐

  1. 以Windows服务方式启动MySQL,并将其默认编码设置为UTF-8

    系统环境:Windows XP Professional 版本 2002 Service Pack 3 // 第1步:创建选项文件.首先下载mysql-5.5.12-win32.zip,只需复制mys ...

  2. C++ 中的constkeyword

    为什么使用const?採用符号常量写出的代码更easy维护:指针经常是边读边移动,而不是边写边移动:很多函数參数是仅仅读不写的.const最常见用途是作为数组的界和switch分情况标号(也能够用枚举 ...

  3. 前端页面——Cookie与Session有什么差别

    我们在实际生活中总会遇到这种事情,我们一旦登录(首次输入username和password)某个站点之后,当我们再次訪问的时候(仅仅要不关闭浏览器),无需再次登录.而当我们在这个站点浏览一段时间后,它 ...

  4. 利用neon技术对矩阵旋转进行加速

    一般的矩阵旋转操作都是对矩阵中的元素逐个操作,假设矩阵大小为m*n,那么时间复杂度就是o(mn).如果使用了arm公司提供的neon加速技术,则可以并行的读取多个元素,对多个元素进行操作,虽然时间复杂 ...

  5. SharePoint 使用ECMAscript对象模型来操作Goup与User

    这里总结了关于使用ECMAscript对象模型来操作Goup与User的常用情况,内容如下:     1.取得当前Sharepoint网站所有的Groups     2.获取当前登录用户的Title与 ...

  6. slab着色,可以减少cache conflict miss概率么?

    以内部slab为例,管理区 + object总大小+left_over size = 1page,我们做个极端假设,cache为 direct-mapped caches. 1.没有采用slab着色: ...

  7. Spring依赖注入原理分析

    在分析原理之前我们先回顾下依赖注入的概念: 我们常提起的依赖注入(Dependency Injection)和控制反转(Inversion of Control)是同一个概念.具体含义是:当某个角色( ...

  8. abbyy在使用时提示更改分辨率如何处理

    ABBYY FineReader 12识别质量取决于文档图像的分辨率.低图像分辨率(低于 150 dp)可能会降低识别质量,而过高的分辨率(高于 600 dpi)也不会明显提升图像质量,还会延长处理时 ...

  9. go jwt OAuth2.0

    https://blog.csdn.net/wangshubo1989/article/details/77980316 https://blog.csdn.net/wangshubo1989/art ...

  10. 阿里云被挖矿使用,导致cpu长期处于100%,ddgs进程,xWx3T进程,关于redis密码

    1.使用top命令,查看到一个叫xWx3T的进程cpu占用99.8%,由于我的阿里云是单核的,所以最高只能100%. 把它用kill命令杀死后,过一会儿又启动了,又占用100%. 使用ps -ef可以 ...