栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

ansible用roles的方式安装5.0版zabbix-agent2

ansible用roles的方式安装5.0版zabbix-agent2

文章目录

安装zabbix-agent2

1.主机清单文件(必须先和目标主机免密)2.创建角色目录3.编写具体任务4.编写触发任务(重启服务)5.templates放置模板文件(必须以.j2结尾)6.编写变量文件7.编写调用任务文件(名字任意起,但必须是yml)8.执行roles

安装zabbix-agent2
[root@zabbix-server roles]# tree -L 2
.
├── ansible.cfg               
├── group_vars      #变量目录
│   └── all
├── hosts           #主机清单
├── site.yml 
└── zabbix-agent2   #角色名称
    ├── files       #存放文件
    ├── handlers    #触发任务
    ├── tasks       #具体任务
    └── templates   #模板文件

1.主机清单文件(必须先和目标主机免密)
[root@zabbix-server roles]# cat hosts
[webservers]
node1

这里我做了用主机名的方式登录:看管理机用主机名登录文章

2.创建角色目录
mkdir -p zabbix-agent2{tasks,handlers,templates.files}
3.编写具体任务
#编写思路
1.安装
2.配置
3.启动
[root@zabbix-server roles]# cat zabbix-agent2/tasks/main.yaml 
- name: Add repository
  yum_repository:
    name: zabbix
    description: Zabbix YUM repo
    baseurl: https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64

- name: Installed Zabbix-Agent2 Server
  yum:
    name: zabbix-agent2 
    state: present

- name: Configure Zabbix-Agent2 Server
  template:
    src: zabbix_agent2.conf.j2
    dest: /etc/zabbix/zabbix_agent2.conf
  notify: Systemd Restart Zabbix-agent2

- name: Configure zabbix conf
  file:
    src: '{{ item.src }}'
    dest: '{{ item.dest }}'
    mode: 0644
  with_items:
    - { src: './zabbix_agent2.d/mysql.conf', dest: '/etc/zabbix/zabbix_agent2.d/' }
    - { src: './zabbix_agent2.d/nginx_status.conf', dest: '/etc/zabbix/zabbix_agent2.d/' }
    - { src: './zabbix_agent2.d/user_num.conf', dest: '/etc/zabbix/zabbix_agent2.d/' }
  notify: Systemd Restart Zabbix-agent2

- name: Copy zabbix-agent2 Files
  copy:
    src: '{{ item.src }}'
    dest: '{{ item.dest }}'
    mode: 0755
  with_items:
    - { src: './zabbix_agent2.d/scripts', dest: '/etc/zabbix/zabbix_agent2.d/' }

- name: System Zabbix-Agent2 Server
  systemd:
    name: zabbix-agent2
    state: started
    enabled: yes

4.编写触发任务(重启服务)
[root@zabbix-server roles]# cat zabbix-agent2/handlers/main.yml 
#重启服务
- name: Systemd Restart Zabbix-agent2
  systemd:
    name: zabbix-agent2
    state: restarted

5.templates放置模板文件(必须以.j2结尾)

templates中放带有变量的文件,会自己解析

[root@zabbix-server roles]# cat zabbix-agent2/templates/zabbix_agent2.conf.j2 
PidFile=/var/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server={{ zabbix_server_ip }}
ServerActive={{ zabbix_server_ip }}
Hostname={{ ansible_hostname }}
Hostmetadata=master
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock

6.编写变量文件
#有变量的都可以写在这里面
[root@zabbix-server roles]# cat group_vars/all 
##zabbix-server
zabbix_server_ip: 192.168.10.68
7.编写调用任务文件(名字任意起,但必须是yml)
[root@zabbix-server roles]# cat site.yml 
- hosts: webservers
  roles:
     - zabbix-agent2

8.执行roles
[root@zabbix-server roles]# ansible-playbook site.yml  -i hosts

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/759033.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号