Ansible зависает при выполнении команды playbook - PullRequest
0 голосов
/ 25 мая 2020

Я столкнулся с проблемой, когда ansible полностью зависает при выполнении задачи. Задача, на которой он висит, заключается в том, что команда java -jar запускается с использованием командного модуля.

ansible_hanging.img

Странно, что playbook делает успешно выполнить команду, поскольку выходные данные процесса показаны ниже на удаленном сервере.

[nexus@kubem00 nexusiq-server]$ ps -aux | grep java
nexus    12739 11.7 21.0 3068128 395608 pts/2  Sl+  19:25   0:16 java -jar nexus-iq-server-1.91.0-01.jar server config.yml
nexus    12803  0.0  0.0 112808   968 pts/1    S+   19:27   0:00 grep --color=auto java

У меня такое чувство, что моя ошибка связана с тем фактом, что она выполняется как задача переднего плана, когда я прерываю зависание ansible playbook запускается с помощью ctrl + c запущенная служба java на удаленном сервере убита.

Я также пробовал запустить ее, используя команду модуля оболочки ansible с и без '&' для запуска в фон, с которым мне не повезло.

ansible - 2.9.7 python - 3.8.2 remote_server os: Centos7

1 Ответ

1 голос
/ 25 мая 2020

После того, как я несколько раз ударился головой о стену, мне удалось заставить его работать.

Мне пришлось вернуться к модулю оболочки и использовать команду nohup, и, похоже, он работает.

- name: Run NexusIQ server
  become: yes
  become_user: nexus
  shell: nohup java -jar nexus-iq-server-1.91.0-01.jar server config.yml &
  args:
    chdir: /opt/nexusiq-server
...