实施前提条件

  1. zabbix-agent通过编译安装的,打成tar包,并且自己先配好master的ip等等之类的配置在/etc下,然后我们后面只需要修改一个Hostname这个配置项即可。。
  2. saltstack之间能够互相通信的。

配置文件如下:

[root@salt states]# pwd
/salt/states # 因为我的file_root是配置在这里
[root@salt states]# cat install_zabbix_agent.sls
/root/zabbix_agent2017-03-08.tar.gz:
file.managed:
- source: salt://zabbix_agent2017-03-08.tar.gz zabbix-agent: # 指定zabbix-agent用户名
user.present: # 创建zabbix-agent用户
- shell: /sbin/nologin # 设置shell为不登陆 /var/log/zabbix/: # 指定文件路径
file.directory: # 创建目录
- user: zabbix-agent # 目录属主
- group: zabbix-agent
- mode: 755 # 目录权限
- makedirs: True # 是否创建目录
- watch: # 在创建用户之后执行
- user: zabbix-agent unpack_zabbix_agent:
cmd.run:
- name: "tar zxf /root/zabbix_agent2017-03-08.tar.gz -C /usr/local/" # 解包
- watch:
- file: /root/zabbix_agent2017-03-08.tar.gz # 在复制完包后解压 set_config:
cmd.run:
- name: sed -i s/172.16.160.39/`ifconfig |grep -o "\<addr:.*ast\>" |awk -F":" '{print $2}' |awk '{print $1}'`/ /usr/local/zabbix_agent/etc/zabbix_agentd.conf && /usr/local/zabbix_agent/sbin/zabbix_agentd # 修改配置文件后启动agent
- watch:
- cmd: unpack_zabbix_agent # 在解压之后执行
zabbix_onboot:
cmd.run:
- name: echo "/usr/local/zabbix_agent/sbin/zabbix_agentd " >>/etc/rc.local
- watch:
- cmd: set_config

执行saltstack

[root@salt states]# salt 'data*' state.sls install_zabbix_agent

没有报错说明执行成功了

查看帮助:

  1. 查看user.present
[root@salt ~]# salt 'data*' sys.state_doc user.present
  1. 查看file.directory
[root@salt ~]# salt "*" sys.state_doc file.directory

saltstack系列2之zabbix-agent自动化部署的更多相关文章

  1. centos下Zabbix Agent端部署和安装

    首先重复一下前面的规划 server端:  192.168.136.144    centos6.5 (虚拟机) agent端:    192.168.136.155    centos6.5( 虚拟 ...

  2. SaltStack系列(一)之环境部署、命令及配置文件详解

    一.SaltStack介绍 1.1 saltstack简介: saltstack是基于python开发的一套C/S架构配置管理工具,它的底层使用ZeroMQ消息队列pub/sub方式通信,使用SSL证 ...

  3. 快速安装zabbix agent并部署监控

    1.准备yum源: epel源:yum install -y zabbix22-agent 2.上传脚本: 上传脚本事先写好的监控脚本到/script/下面 3.修改配置文件:Server=10.10 ...

  4. 通过ansible自动化部署zabbix应用

    zabbix在实际的应用中,可能需要监控的主机非常多,而每个主机的操作系统类型.版本也都不尽相同,在这种环境下,通过手动安装zabbix的agent端已经不现实了,此时就需要借助自动化工具完成zabb ...

  5. zabbix的安装部署及自定义监控的实现

    此篇感谢我的小师傅. 1. Zabbix主要功能和优劣势说明 1. Zabbix主要功能和优劣势说明 1.1 Zabbix主要功能: 1)Application monitoring 应用监控 数据库 ...

  6. saltstack自动化运维系列⑦SaltStack实践配置管理安装zabbix

    saltstack自动化运维系列⑥SaltStack实践配置管理安装zabbix 1.添加管理zabbix的sls文件# vim /srv/salt/base/init/zabbix_agent.sl ...

  7. 基于saltstack自动化部署高可用kubernetes集群

    SaltStack自动化部署HA-Kubernetes 本项目在GitHub上,会不定期更新,大家也可以提交ISSUE,地址为:https://github.com/skymyyang/salt-k8 ...

  8. 运维监控-基于yum的方式部署 Zabbix Agent 4.0 版本

    运维监控-基于yum的方式部署 Zabbix Agent 4.0 版本 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 上一篇博客我们分享了如何基于yum的方式部署zabbix 4. ...

  9. 运维与自动化系列④自动化部署基础与git

    运维与自动化系列④自动化部署基础与git 自动化部署基础与git 一:上一篇的代码是保存在本地,但是在生产环境当中是由版本控制进行代码管理,以便于发布代码和回滚,一般是使用gitlib比较多,另外还有 ...

  10. 运维与自动化系列③自动化部署基础与shell脚本实现

    自动化部署基础与shell脚本实现 关于自动化的基础知识: 1.1:当前代码部署的实现方式: 运维纯手工scp到web服务器纯手工登录git服务器执行git pull或svn服务器执行svn upda ...

随机推荐

  1. Scala 闭包

    Scala 闭包 闭包是一个函数,返回值依赖于声明在函数外部的一个或多个变量. 闭包通常来讲可以简单的认为是可以访问一个函数里面局部变量的另外一个函数. 如下面这段匿名的函数: val multipl ...

  2. iOS five years[转]

    原文链接:http://blog.ayaka.me/post/127980091987/5-years This morning, I got a push notification from Tim ...

  3. Linxu Yum方式安装Mysql

    1.下载yum源 进入http://dev.mysql.com/downloads/repo/,下载RedHat Enterprise Linux 6 / Oracle Linux 6版.文件名称:m ...

  4. LVS的优点和缺点

    LVS的优点是:1.抗负载能力强.是工作在网络4层之上仅作分发之用,没有流量的产生,这个特点也决定了它在负载均衡软件里的性能最强的,对内存和cpu资源消耗比较低.2.配置性比较低,这是一个缺点也是一个 ...

  5. Azkaban上传出错

    Error initializing project id: 4 version: 2 打包文件上传时,自动生成的中文名导致的,这里的压缩包不能用中文名称.

  6. Could not read symbols解决方法

    Could not read symbols 陈运文 Could not read symbols:Linux/UNIX系统下编译时,常见的一类报错信息. 通常情况下,该编译报错信息之前会给出出现错误 ...

  7. python多线程同步机制Lock

    #!/usr/bin/env python# -*- coding: utf-8 -*- import threadingimport time value = 0lock = threading.L ...

  8. Git教程首页

    Git 教程 Git 是一个分布式的版本控制和源代码管理系统,强调速度. Git 最初由Linus Torvalds设计和开发为Linux内核开发管理代码. Git是GNU通用公共许可证版本2的条款下 ...

  9. Flutter 1.0 正式版: Google 的便携 UI 工具包

    Flutter 1.0 正式版: Google 的便携 UI 工具包 文 / Tim Sneath,Google Dart & Flutter 产品组产品经理 Flutter 是 Google ...

  10. Vue路由获取路由参数

    vue路由设置路由参数有2种方式: 1.通过query配置: <router-link :to="{ name:'login',query:{id:1} }">登录&l ...