yum模块
yum模块 #循环1
- name: install dependencies
yum:
name: "{{ item }}"
state: "{{ item.state | default('installed') }}"
loop:
- gcc-c++
- openssl
- openssl-devel
- zlib-devel
- pcre-devel
#循环2
- name: install zabbix httpd php
yum:
name: "{{ item.name }}"
state: "{{ item.state | default('present') }}"
with_items:
- name: "httpd"
- name: "php"
- name: "zabbix-server-mysql"
- name: "zabbix-web-mysql"
- name: "zabbix-get"
- name: install httpd 单个
yum: name=httpd state=present
unarchive
unarchive单机
- name: unpack exporter
unarchive:
src: "{{ package_path }}/{{ nginx.exporter_name }}"
dest: "{{ service_path }}"
copy: yes
unarchive循环
- name: unpack nginx package
unarchive:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
owner: root
group: root
copy: yes
loop:
- { src: "{{ package_path }}/{{ nginx.package_name }}", dest: "{{ service_path }}" }
- { src: "{{ package_path }}/{{ nginx.vts_module }}", dest: "{{ service_path }}" }
systemd
systemd
- name: reload systemd & restart
systemd:
name: nginx
daemon_reload: yes
state: restarted
template
template
- name: generate configuration
template: src="templates/nginx_exporter.service" dest="/etc/systemd/system/nginx_exporter.service" owner=root group=root mode=0644
检查
检查端口是否存活
- name: Check if Nginx is accessible
wait_for:
host: "{{ (ansible_ssh_host|default(ansible_host))|default(inventory_hostname) }}"
port: 80
state: started
delay: 5
#timeout时间一定要大于上面的delay时间,否则会出现错误的检测结果
timeout: 10
connect_timeout: 5
公众号的监控系统正常更新、感兴趣的可以关注一下