ansibleプレイブックの役割を通じて、サービスとコマンドのステータスに関する情報をファイルに収集したいと思います。この日付を以下のファイルにインポートする方法はありますか?複数の作業があるため、状態をオフにする必要があります。
<serverip> snmp inactive
<serverip1> snmp active
<serverip2> snmp active
または
<serverip3> snmp 0
<serverip4> snmp 1
このような。
以下は、現在実行中のサンプルスクリプトです。
---
- name: read snmp service status
block:
- name: get sysctl snmp services status [PRE]
shell: "service snmp status"
ignore_errors: true
register: snmp
- name: set fact snmp
set_fact:
results_pre: "{{ results_pre|combine({'snmp': snmp.stdout.replace(\"'\", '\"')|quote }) }}"
- name: write snmp service status
copy:
dest: "{{ remote_logs_path }}/{{ ansible_ssh_host }}/pre/snmp"
content: "{{ snmp.stdout }}"
tags:
- snmp
答え1
Ansible Playbooks でサービスのステータスを収集するには、次の方法をお勧めします。service_facts
基準寸法。
- name: Gathering Service Facts
service_facts:
以下に基づいて、ステータスをログファイルに書き込むことができます。条件文そして事実。
- name: Write SNMP service status
...
when: ("snmp.service" in services)