Недавно мне приходилось развернуть агенты Appdynamics в некоторых системах, которые работали как на рабочие нагрузки TOMCAT, так и JBOSS, и вот как я использовал один PlayBook, чтобы управлять им все.
1 — выяснить, какую платформу я имел дело с
#check to see if we're tomcat or jboss - name: Check to see if tomcat user exists stat: path: /home/tomcat8 register: tomcat8 - name: check to see if jbossadm user exists stat: path: /home/jbossadm register: jbossadm
Как видите, я выполняю простую проверку модуля статистика в домашнем каталоге пользователя, запускающую рабочую нагрузку Java. В нашем использовании случаем этих 2 пользователей никогда не сосуществуют на сервере.
2 — Связь собственности на файлы/папки на основе наших выводов выше
#creates directory path - name: Create the directories for site specific configurations owned by tomcat8 file: path: /usr/local/appdynamics/appagent/ state: directory owner: tomcat8 group: tomcat8 mode: 0755 when: tomcat8.stat.exists - name: Create the directories for site specific configurations owned by jbossadm file: path: /usr/local/appdynamics/appagent/ state: directory owner: jbossadm group: jbossadm mode: 0755 when: jbossadm.stat.exists
Таким образом, в каждом случае мы создаем ту же путь папки и изменение владения файловой системы Linux на основе какой платформы мы выполняем эту анающую игрушку.
статус модуль и Когда Условия являются довольно мощными инструментами, которые вы можете использовать, чтобы сделать Anbible Super Firecible без необходимости проходить кучу дополнительных параметров для управления, какие задачи выполняются в ваших плейговых устройствах.
Оригинал: «https://dev.to/bak3y/deterministic-ansible-3ch7»