# 389 server stops after Ansible "hangs up"

**URL:** <https://forum.ansible.com/t/389-server-stops-after-ansible-hangs-up/20529>\
**Category:** Ansible Project\
**Tags:** ubuntu\
**Created:** [February 11, 2016, 5:01am UTC](https://forum.ansible.com/t/389-server-stops-after-ansible-hangs-up/20529 "2016-02-11T05:01:37Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Joshua\_J\_Kugler](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@Joshua\_J\_Kugler](https://forum.ansible.com/u/Joshua_J_Kugler)\
**Post date:** [February 11, 2016, 5:01am UTC](https://forum.ansible.com/t/389-server-stops-after-ansible-hangs-up/20529/1 "2016-02-11T05:01:37Z")

</div>

Ansible 2.0.0.2  
Control host: Ubuntu 14.04  
Controlled host: CentOS 6

So, I've been trying to set up FreeIPA on my CentOS. I was getting really  
frustrated because right after ipa-server-install completed successfully, and  
I ran /etc/init.d/ipa start, subsequent commands failed. I finally realized  
that dirsrv (389 LDAP server) was stopping soon after starting.

Thinking there was something odd in the ipa startup, I started IPA, slept for  
30 seconds, and then tried to start dirsrv. That reported that dirsrv was  
already running...but then it shut down right away. Logging in to the machine  
and starting dirsrv was fine. Starting dirsrv via

ssh \<host\> "/etc/init.d/dirsrv start"

also worked.

So, I put this in my Ansible command:

shell: /etc/init.d/dirsrv start && sleep 30

The logs show dirsrv start. And stay started. As soon as that sleep 30  
expires, however, and ansible "hangs up" the server immediately shuts down.  
Same if I try:

command: /etc/init.d/dirsrv start && sleep 30

Same problem if I wrap the thing in a "script:" command.

WHAT would be killing a daemon, started by an init.d script, to shut down  
(cleanly, no less) when ansible is done with the command and disconnects. And  
the command to start IPA (or just the server, in the case of chasing down the  
bug) is followed by other ansible commands for that host, so it's not like  
ansible is done with the host when it "hangs up" after the given command.

I am at my wits end. Does anyone have any ideas how to fix or work around it? I  
even tried wrapping the init.d/ipa start in a

screen -d -m

session, but that shuts down right away.

Interestingly enough, if I put this in a script:

#!/bin/bash

screen -d -m /etc/init.d/ipa start /etc/init.d/ipa start  
sleep 30

And then pass that to the "screen background" process, even though it has gone  
into the background, Ansible won't continue until the script ends and the  
screen session terminates...but the dirsrv does stop right away! 🙂

So, something truly weird is going on here. Clearly a bug on the dirsrv side,  
but a really weird interaction with ansible and its ssh sessions.

Ideas would be greatly appreciated!

j

---

<div class="post-metadata">

**Author:** ![Joshua\_J\_Kugler](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@Joshua\_J\_Kugler](https://forum.ansible.com/u/Joshua_J_Kugler)\
**Post date:** [February 11, 2016, 7:41am UTC](https://forum.ansible.com/t/389-server-stops-after-ansible-hangs-up/20529/2 "2016-02-11T07:41:40Z")

</div>

Looking in the log files, it only shows startup and shutdown. No errors. As I  
said, starting it up from a standard ssh session works file. It's only when  
it's started by Ansible, then Ansible disconnects that ds389 then shuts down.

j

---

<div class="post-metadata">

**Author:** ![Brian\_Coca](https://avatars.discourse-cdn.com/v4/letter/b/6de8d8/32.png) [@Brian\_Coca](https://forum.ansible.com/u/Brian_Coca)\
**Post date:** [February 11, 2016, 2:40pm UTC](https://forum.ansible.com/t/389-server-stops-after-ansible-hangs-up/20529/3 "2016-02-11T14:40:23Z")

</div>

command/shell are not good ways of starting services, setup a init script/system|upstart configuration instead.

But “if you must”, add `nohup` to the command as Ansible immediately terminates the tty and the ‘daemon’ might not have detached yet or detach correctly which can stall/kill the process.

---

<div class="post-metadata">

**Author:** ![Joshua\_J\_Kugler](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@Joshua\_J\_Kugler](https://forum.ansible.com/u/Joshua_J_Kugler)\
**Post date:** [February 11, 2016, 3:41pm UTC](https://forum.ansible.com/t/389-server-stops-after-ansible-hangs-up/20529/4 "2016-02-11T15:41:30Z")

</div>

Thanks for the suggestion. I had been using ansible's 'service' module and  
that wasn't working either. I resorted to command/shell modules as a means of  
trouble shooting.

j
