微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ansible Tower安装配置全过程下

10、正式JOB的例子

在服务器上安装并配置zabbix agent,步骤基本和上边的一样,差别在playbook上

---

- hosts: all

remote_user: root

gather_facts: yes

 

tasks:

- name: install zabbix_agent.

shell: rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-agent-3.2.7-1.el7.x86_64.rpm

- name: edit configuration file for zabbix_agent.

template:

src: zabbix_agentd.conf.j2

dest: /etc/zabbix/zabbix_agentd.conf

backup: yes

owner: root

group: root

mode: 0644

- name: start zabbix_agent service.

systemd:

name: zabbix-agent.service

state: started

enabled: yes

- name: configure firewall.

firewalld:

port: 10050/tcp

permanent: true

state: enabled

- name: Create a new host in zabbix

local_action:

module: zabbix_host

server_url: http://192.168.1.121/zabbix/

login_user: api

login_password: ********

host_name: '{{ansible_default_ipv4.address}}'

host_groups:

- Linux servers

link_templates:

- Template OS Linux

status: enabled

state: present

timeout: 30

interfaces:

- type: 1

main: 1

useip: 1

ip: '{{ansible_default_ipv4.address}}'

dns: ""

port: 10050

注释:shell、template、systemd、firewalld这些都是Ansible内置模块,zabbix_host是外置需要安装的模块,所有模块具体用法见下边官方文档

https://docs.ansible.com/ansible/latest/modules/list_of_all_modules.html

如果不安装zabbix_host,直接运行job会出如下错误

安装zabbix_host模块

yum -y install epel-release

yum install python-pip

pip install zabbix-api

zabbix接口创建主机的具体用法见下边官方文档

https://www.zabbix.com/documentation/3.2/manual/api/reference/hostinterface/object#host_interface

playbook代码如下:

运行job后日志如下

 

运行后192.168.1.79已被zabbix连接10050端口

zabbix的主机界面已经有192.168.1.79,且正常监控

11、特别环节:交互式运行Job

下边以交互创建虚拟机为例

完成Playbook

新建Templates

然后点击右上角的ADD SURVEY

PROMPT是此变量的描述

ANSWER VARIABLE NAME是Playbook中的变量名。注意一定不要写错,不能包含小数点等特殊符号

ANSWER TYPE是变量值的类型

全部写完后的界面,可以点击右侧的铅笔图标修改

当运行JOB时会跳出刚才写的交互对话框

按JOB要求填写即可,注意不能出现任何中文字符

运行JOB,没问题

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐