一、IP信息说明

【Master】

IP: 192.168.236.100

【Minion】

IP: 192.168.236.101

二、配置SaltStack

关于SaltStack Master和Minion的安装这里不再赘述!

【配置Master】

1.新建目录

mkdir  -p  /srv/salt/iso

mkdir -p   /srv/salt/install_zabbix

2.新建配置文件

(1)  /srv/top.sls

 base:
'*':
- cpitables.*
- install_zabbix.*

(2)  /srv/salt/install_zabbix/install_zabbix_new.sls

说明:本sls文件主要用来从Master端的/srv/salt/iso目录下复制文件到Minion端的/soft目录下,然后安装zabbix并启动zabbix

 /soft/zabbix-2.4..tar.gz:
file.managed:
- unless: test -e /soft/zabbix-2.4..tar.gz
- source: salt://iso/zabbix-2.4.5.tar.gz
- user: root
- group: root
- mode:
cmd.run:
- cwd: /soft
- name: tar zxf zabbix-2.4..tar.gz && cd /soft/zabbix-2.4. && ./configure --prefix=/usr/local/zabbix-2.4. --enable-agent && make && make install
- unless: test -d /usr/local/zabbix-2.4.
- require:
- file: /soft/zabbix-2.4..tar.gz /soft/install_zabbix.py:
file.managed:
- unless: test -e /soft/install_zabbix.py
- source: salt://install_zabbix/install_zabbix.py
- user: root
- group: root
- mode:
cmd.run:
- name: /usr/bin/python /soft/install_zabbix.py
- require:
- file: /soft/install_zabbix.py

(3)  /srv/salt/install_zabbix/install_zabbix.py

说明:该脚本主要用来修改zabbix客户端的配置文件信息,并设置防火墙

 #!/usr/bin/env python
# coding:utf- import socket
import os def init_zabbix():
hostname = socket.gethostname()
os.system('useradd zabbix -s /sbin/nologin')
os.system('sed -i "s/Server=127.0.0.1/Server=192.168.236.100/g;s/ServerActive=127.0.0.1/ServerActive=192.168.236.100/g" /usr/local/zabbix-2.4.5/etc/zabbix-agentd.c
onf')
os.system('sed -i "s/Hostname=Zabbix server/Hostname=' + hostname+ '/g" /usr/local/zabbix-2.4.5/etc/zabbix-agentd.conf')
os.system('echo "/usr/local/zabbix-2.4.5/sbin/zabbix_agentd" >> /etc/rc.local')
os.system("/usr/local/zabbix-2.4.5/sbin/zabbix_agentd") if os.system('service iptables status|grep 10050') > :
os.system('iptables -A INPUT -s 192.168.236.0/24 -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT ')
os.system('service iptables save') init_zabbix()

(4) 将zabbix客户端安装包zabbix-2.4.5.tar.gz复制到目录/srv/salt/iso

【Minion】

在客户端新建目录soft

mkdir /soft

三、操作说明

在Master执行如下命令进行操作:

salt '*'  state.sls install_zabbix.install_zabbix_new

'*' : 表示所有可侦测到的Minion端

state.sls :为固定用法

install_zabbix :表示install_zabbix_new.sls文件所在的上次目录,该目录以/etc/salt/master文件中定义的目录为家目录

install_zabbix_new : 为操作用到的sls文件

其他可能用到的命令:

检测Master与Minion的是否连接:

salt '*'  test.ping

在安装zabbix前进行验证测试:

salt '*'  state.sls install_zabbix.install_zabbix_new test=True

【SaltStack】在Master上给Minion端安装zabbix的更多相关文章

  1. saltstack中如何实现多个master来管理minion

    背景: 公司有多个部门,有一些机器有本部门的业务,这些机器也有其他部门的业务,所以本部门需要一个master服务器来管理这批机器,其他部门也需要一个master服务器来管理这个机器,所以就需要多个ma ...

  2. 如果是在有master上开启了该参数,记得在slave端也要开启这个参数(salve需要stop后再重新start),否则在master上创建函数会导致replaction中断。

    如果是在有master上开启了该参数,记得在slave端也要开启这个参数(salve需要stop后再重新start),否则在master上创建函数会导致replaction中断.

  3. saltstack(二) master、minion常用配置选项

    master常用配置选项: interface: 指定bind的地址(默认0.) publish_port:指定发布端口(默认4505) ret_port: 指定结果返回端口,与minion配置文件的 ...

  4. centos 7 上zabbix 3.0 服务端安装

    zabbix服务端安装 安装完毕mysql-5.6.php5.6 mysql-5.6安装:https://www.cnblogs.com/xzlive/p/9771642.html  创建zabbix ...

  5. SaltStack入门到精通第一篇:安装SaltStack

    SaltStack入门到精通第一篇:安装SaltStack 作者:纳米龙  发布日期:2014-06-09 17:50:36   实际环境的设定: 系统环境: centos6 或centos5 实验机 ...

  6. saltstack(master迁移)

    环境:http://www.cnblogs.com/zzzhfo/p/6126223.html 在添加一台master 把master的/etc/salt目录下的pki打包 上传至第二台master的 ...

  7. SaltStack之Master配置文件详解

    salt-master的配置文件位于/etc/salt/master,可用选项如下: #######################主配置 interface默认值:0.0.0.0(所有的网络地址接口 ...

  8. Centos6上进行Mysql5.6安装和主从复制部署

    系统:centos6 数据库:mysql5.6 服务器:两台,一主一从 一.Mysql5.6二进制版本的安装 Mysql的安装在有三种模式,第一种是yum安装,第二种是二进制模式的安装,第三种是源码编 ...

  9. Open CDN 2.0管控端和节点端安装

    原文:http://www.safecdn.cn/cdn/2018/12/opencdn-2-0/1076.html OpenCDN是一套快速部署CDN加速的工具,针对专门提供CDN加速服务的企业或对 ...

随机推荐

  1. c51中的bit,SBIT

    在51单片机的0x20~0x2f,是bdata区既可以字节寻址又可以位寻址.用法: 1 先用bdata存储类型关键字 定义变量,注意其值就是地址 .unsigned char bdata MYBITS ...

  2. EF Core MySql GUID配置方式

    builder.Property(m => m.Id) .HasColumnName("Id") .ForMySQLHasColumnType("char(36)& ...

  3. jvm内存溢出的三种情况以及解决办法

    1       前言相信有一定java开发经验的人或多或少都会遇到OutOfMemoryError的问题,这个问题曾困扰了我很长时间,随着解决各类问题经验的积累以及对问题根源的探索,终于有了一个比较深 ...

  4. mongodb 上限集合

    上限集合是固定大小的循环集合按照插入以支持高性能的创建,读取和删除操作.通过循环,这意味着,当分配给该集合中的固定大小要用尽时,它会开始删除集合中最旧的文件而不提供任何明确的命令. 上限集合限制更新, ...

  5. hihocoder1829 Tomb Raider

    思路: 暴力枚举. 实现: #include <iostream> #include <set> #include <vector> using namespace ...

  6. hihoCoder #1151 : 骨牌覆盖问题·二 (矩阵快速幂,DP)

    题意:给一个3*n的矩阵,要求用1*2的骨牌来填满,有多少种方案? 思路: 官网题解用的仍然是矩阵快速幂的方式.复杂度O(logn*83). 这样做需要构造一个23*23的矩阵,这个矩阵自乘n-1次, ...

  7. Jquery 错误提示插件

    这是一个简单的输入框错误提示插件,可拓展! .jq-error{ font-size:12px; min-width:150px; width:auto; max-width:350px; line- ...

  8. ABAP,Java, nodejs和go语言的web server编程

    ABAP and Java see my blog. nodejs 用nodejs现成的express module,几行代码就能写个server出来: var express = require(' ...

  9. C#反射调用小DEMO

    程序集的源代码: namespace DesignMode { class IOCTest { public void TestO() { Console.WriteLine("O方法&qu ...

  10. 立个单调栈flag

    http://bestcoder.hdu.edu.cn/contests/contest_chineseproblem.php?cid=687&pid=1002