设为首页 收藏本站
查看: 691|回复: 0

[经验分享] ansible-playbook批量部署zabbix

[复制链接]

尚未签到

发表于 2018-7-30 06:15:21 | 显示全部楼层 |阅读模式
---  
  - hosts: "{{ host }}"
  
    remote_user: "{{ user }}"
  
    gather_facts: false
  
    tasks:
  
        - name: Install the 'Development tools' package group
  
          yum:
  
              name: "@Development tools"
  
              state: present
  
          tags:
  
              - Dev_tools
  

  
        - name: Install packages
  
          yum: state=present name={{ item }}
  
          with_items:
  
              - gcc
  
              - gcc-c++
  
              - autoconf
  
              - automake
  
              - libxml2-devel
  
              - sysstat
  
              - vim
  
              - iotop
  
              - unzip
  
              - htop
  
              - iotop
  
              - strace
  
              - wget
  
              - tar
  
              - libselinux-python
  
              - rsync
  
              - rdate
  
          tags:
  
              - packages
  
        - name: Selinux modify disabled
  
          lineinfile:
  
              dest: /etc/selinux/config
  
              regexp: '^SELINUX='
  
              line: 'SELINUX=disabled'
  
          tags:
  
              - testselinux
  

  
        - name: Modify lineinfile
  
          lineinfile:
  
              dest: "{{ item.dest }}"
  
              state: present
  
              regexp: "{{ item.regexp }}"
  
              line: "{{ item.line }}"
  
              validate: 'visudo -cf %s'
  
          with_items:
  
                # - {
  
                #   dest: "/etc/zabbix/zabbix_agentd.conf",
  
                #   regexp: "^Include",
  
                #   line: "\n\n###Add include\nInclude=/etc/zabbix/zabbix_agentd.conf.d/*.conf" }
  
              - {
  
                dest: "/etc/sudoers",
  
                regexp: "^Defaults    requiretty",
  
                line: "# Defaults    requiretty" }
  
          tags:
  
              - testline
  

  
        - name: Copy configuration file
  
          copy:
  
              src: "{{ item.src }}"
  
              dest: "{{ item.dest }}"
  
              owner: root
  
              group: root
  
              mode: "{{ item.mode }}"
  
          with_items:
  
              - {
  
                src: "/etc/init.d/zabbix_agentd",
  
                dest: "/etc/init.d/zabbix_agentd",
  
                mode: "0755"}
  
          tags:
  
              - testcopy
  
        - name: Create a directory
  
          file: path={{ item }} state=directory mode=0750
  
          with_items:
  
              - /etc/sudoers.d
  
          tags:
  
              - testdir
  

  
        - name: Looping over Fileglobs
  
          copy: src={{ item }} dest=/etc/sudoers.d/ owner=root mode=0440
  
          with_fileglob:
  
              - /etc/sudoers.d/*
  
          tags:
  
              - test_fileglobs
  

  
        - name: synchronization of src on the control machine to dest on the remote hosts
  
          synchronize:
  
            src: "{{ item.src }}"
  
            dest: "{{ item.dest }}"
  
            recursive: yes
  
            checksum: yes
  

  
          with_items:
  
              - {
  
                src: "/etc/zabbix",
  
                dest: "/etc/"}
  
              - {
  
                src: "/usr/local/zabbix",
  
                dest: "/usr/local/"}
  
          tags:
  
              - sys_dir
  

  
        - name: Ensure two job that runs of crontab
  
          cron:
  
            name: "{{ item.name }}"
  
            minute: "{{ item.minute}}"
  
            job: "{{ item.job}}"
  
          with_items:
  
                - {
  
                  name: "Time synchronization",
  
                  minute: "10",
  
                  job: "/usr/bin/rdate -s 192.168.1.163 > /dev/null 2>&1"}
  
                - {
  
                  name: "a job vmstat_output",
  
                  minute: "1",
  
                  job: "vmstat 1 10 > /tmp/vmstat_output"}
  
                - {
  
                  name: "a job iostat_output",
  
                  minute: "1",
  
                  job: "bin/bash /usr/local/zabbix/script/iostat.sh"}
  
          tags:
  
              - testcron
  

  
        - name: Starting zabbix_agentd
  
          shell: /usr/local/zabbix/script/zabbix_agent.sh
  
          tags:
  
              - starting_zabbix_aqentd
  

  
        - name: Install omsa
  
          shell: sh /usr/local/zabbix/script/dell.sh
  
          tags:
  
              - install_omsa

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-543194-1-1.html 上篇帖子: Ansible自动化运维工具介绍 下篇帖子: ansible学习资料整理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表