nagios批量创建主机脚本-创新互联

目的:实现批量主机文件和服务的创建,将服务就写到了主机文件中;

成都创新互联是一家专业提供宽甸企业网站建设,专注与成都网站制作、成都网站建设、外贸营销网站建设H5开发、小程序制作等业务。10年已为宽甸众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。

用户change.sh linux.template(主机服务模版) list.txt (主机IP对应列表)

catc change.sh

   usage () {
           echo -en "USAGE: $0 [host list] or $0 [template] [host list]\nFor ex                                                                                                ample: $0 host.template host.list(Field : [IP] [HOST NAME])\n" 1>&2
           exit 1
   }

   if [ $# -gt 2 ];then
           usage
           exit 1
   fi

   case "$#" in
           2)
                   template=$1
                   host_list=$2
           ;;
           1)
                   template='host.template'
                   host_list=$1
           ;;
           0)
           #      template='host.template'
           #       host_list='host.list'
                   usage
           ;;
   esac

   if [ ! -f "${template}" ];then
           echo "template : ${template} not exist!" 1>&2
           exit 1
   fi

   if [ ! -f "${host_list}" ];then
           echo "host list : ${host_list} not exist!" 1>&2
           exit 1
   fi

   cat ${host_list}| while read ip hostname
   do
           echo "${ip}"|grep -oP '^\d{1,3}(\.\d{1,3}){3}$' >/dev/null 2>&1 || Field='not ip'
           if [ "${Field}" = 'not ip' ];then
                   echo "${ip} not ip!" 1>&2
                   exit 1
           fi
           host_cfg="${hostname}-${ip}.cfg"
           cp ${template} ${host_cfg}
           sed -i "s/HOST_NAME/${hostname}/g;s/ADDRESS/${ip}/g" ${host_cfg}
   done

cat linux.template

 define host{
           use linux-server,hosts-pnp
           host_name HOST_NAME
           alias HOST_NAME
           address ADDRESS
   }

###############################################################################
###############################################################################
#
# SERVICE DEFINITIONS
#
###############################################################################
###############################################################################

# Define a service to "ping" the local machine

define service{
       use                            local-service        ; Name of service template to use
       host_name                      HOST_NAME
       service_description            PING
   check_command         check_ping!100.0,20%!500.0,60%
       }

# Define a service to check the disk space of the root partition
# on the local machine. Warning if < 20% free, critical if
# < 10% free space on partition.

define service{
       use                            local-service,services-pnp        ; Name of service template to use
       host_name                      HOST_NAME
       service_description            Root Partition
   check_command         check_nrpe!check_sda1
       }

cat list.txt

192.168.1.2  linuxhost

192.188.22.33 winhost

执行 ./change.sh linux.template list.txt 即可

附件:http://down.51cto.com/data/2362459

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文标题:nagios批量创建主机脚本-创新互联
分享URL:http://azwzsj.com/article/dogegh.html