Я пытаюсь установить Logsta sh, используя Ansible на RHEL 7.
После установки я не могу запустить службу logsta sh. Я получаю service not found
ошибку. Я искал в сети и нашел следующую команду.
/usr/share/logstash/bin/system-install /etc/logstash/startup.options systemd
После чего запустилась служба logsta sh.
Я сделал то же самое в своей книге игр чуть выше команды systemd. Но это не идемпотент. Первая задача выполняется каждый раз. У меня есть два вопроса:
1. Есть ли способ достичь этого, кроме использования оболочки?
2. Какие условия when
я могу поставить в этой задаче, чтобы сделать ее идемпотентной. Если я проверяю статус сервиса и помещаю статус в состояние «когда», то мне нужно написать его снова в конце, чтобы гарантировать статус (дублированные задачи). Или же мне просто нужно запустить эту команду только при первом запуске на этом сервере. Это возможно? Пожалуйста посоветуй.
- name: generate logstash.service file for systemd
shell: /usr/share/logstash/bin/system-install /etc/logstash/startup.options systemd
- name: Enable and restart logstash.service
systemd:
name: logstash.service
enabled: yes
state: restarted