Ansible小试牛刀

注意事项

除了安装的zabbix相关组件

使用此脚本安装的所有软件版本均为系统默认版本

安装软件

zabbix相关组件,包括server,agent等

MySQL

Redis

NGINX

openjdk

maven

nodejs

keepalived

iptables

ipvsadm

使用剧本

javascript 复制代码
---
- hosts: all
  name: zabbix-agent-set
  user: root
  gather_facts: yes
  vars:
    lvs_iptables_packages:
    - iptables
    - ipvsadm
    nginx_packages:
    - nginx
    - keepalived
    - nodejs
    redis_cluster_packages:
    - redis
    - tree
    mysql_packages:
    - mysql
    - mysql-server
    zabbix_packages:
    - zabbix-server-mysql
    - zabbix-web-mysql
    - zabbix-nginx-conf
    - zabbix-sql-scripts
    - zabbix-selinux-policy
    - zabbix-agent2
    java_packages:
    - maven
    - java-17-openjdk
    all_packages:
    - zabbix-agent2
    - zabbix-agent2-plugin-mongodb
    - zabbix-agent2-plugin-mssql
    - zabbix-agent2-plugin-postgresql
    - epel-release
  tasks:
  - name: judge zabbix-agent yum repositry exists
    shell: cat /etc/yum.repos.d/zabbix.repo
    ignore_errors: yes
    register: repo_result

  - name: set zabbix-agent yum repository
    shell: rpm -Uvh https://repo.zabbix.com/zabbix/7.0/alma/9/x86_64/zabbix-release-latest-7.0.el9.noarch.rpm \           && dnf clean all
    when: repo_result.rc != 0

  - name: install zabbix-agent package and plugin
    dnf:
      name: "{{ item }}"
      state: installed
    loop: "{{ all_packages }}"

  - name: install lvs-iptables package
    dnf:
      name: "{{ item }}"
      state: installed
    loop: "{{ lvs_iptables_packages }}"
    when: "'security' in  group_names "

  - name: install nginx package
    dnf:
      name: "{{ item }}"
      state: installed
    loop: "{{ nginx_packages }}"
    when: "'web' in  group_names "

  - name: install java package
    dnf:
      name: "{{ item }}"
      state: installed
    loop: "{{ java_packages }}"
    when: "'application' in  group_names "

  - name: install mysql package
    dnf:
      name: "{{ item }}"
      state: installed
    loop: "{{ mysql_packages }}"
    when: "'mysql' in  group_names "

  - name: install redis package
    dnf:
      name: "{{ item }}"
      state: installed
    loop: "{{ redis_cluster_packages }}"
    when: "'redis' in  group_names "

  - name: install zabbix-server package
    dnf:
      name: "{{ item }}"
      state: installed
    loop: "{{ zabbix_packages }}"
    when: "'zabbix' in  group_names "

  - name: copy zabbix-agent configure
    copy:
      src: /root/zabbix_agent2.conf
      dest: /etc/zabbix/zabbix_agent2.conf

  - name: copy diy system minitor script
    copy:
      src: /root/system_os.sh
      dest: /etc/zabbix/zabbix_agent2.d/system_os.sh

  - name: copy diy minitor configure file
    copy:
      src: /root/system_os.conf
      dest: /etc/zabbix/zabbix_agent2.d/system_os.conf

  - name: copy mysql minitor script
    copy:
      src: /root/mysql_minitor.sh
      dest: /etc/zabbix/zabbix_agent2.d/mysql_minitor.sh
    when: "'mysql' in  group_names "

  - name: copy mysql minitor configure file
    copy:
      src: /root/mysql_minitor.conf
      dest: /etc/zabbix/zabbix_agent2.d/mysql_minitor.conf
    when: "'mysql' in group_names "

  - name: copy redis minitor script
    copy:
      src: /root/redis_minitor.sh
      dest: /etc/zabbix/zabbix_agent2.d/redis_minitor.sh
    when: "'redis' in group_names "

  - name: copy redis minitor configure file
    copy:
      src: /root/redis_minitor.conf
      dest: /etc/zabbix/zabbix_agent2.d/redis_minitor.conf
    when: "'redis' in group_names "

  - name: start zabbix-agent2 service
    service:
      name: zabbix-agent2
      state: restarted
      enabled: yes
相关推荐
꧁༺朝花夕逝༻꧂1 天前
Ansible+Zabbix-agent2快速实现对多主机监控
运维·ansible
m0_628017592 天前
项目四.高可用集群_ansible
ansible
云攀登者-望正茂2 天前
通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
ansible
云攀登者-望正茂5 天前
使用 Ansible 在 Windows 服务器上安装 SSL 证书
ansible
tianyuanwo6 天前
Ansible自动化运维全解析:从设计哲学到实战演进
运维·自动化·ansible
哆啦A梦15886 天前
在golang中如何将已安装的依赖降级处理,比如:将 go-ansible/[email protected] 更换为 go-ansible/@v1.1.7
开发语言·golang·ansible
lifeng43217 天前
在 CentOS 上将 Ansible 项目推送到 GitHub 的完整指南
centos·github·ansible
运维成长记12 天前
ansible-playbook 进阶 接上一章内容
linux·服务器·ansible
半桶水专家12 天前
Ansible 配置Playbook文件格式、关键字和语法详解
ansible