Hi Stephen,

> > > I'm deploying MongoDB to a number of servers using the script below.   
> > > Servers are Ubuntu 18.0.4.   I have an issue where the installation   
> > > fails   
> > > to create a mongo folder in /var/run/ and thus can't start the service   
> > > (No   
> > > place to put the PID file) ... but after a reboot the MongoDB folder is 
> > > removed (because var/run is not persistent) 
> > > [...] 
> > > Is this an issue with how I'm installing mongo via Ansible?     

> > No. It's not Ansible issue at all. MongoDB doesn't care about the 
> > directory. 
> > There are more options: 
> > 1) Put "pidfile" to persistent location 
> >    https://docs.mongodb.com/manual/reference/configuration-options/ 
> > 2) Fix the service to create the directory. See hints 
> > https://github.com/mongodb/mongo/commit/50ca596ace0b1390482408f1b19ffb1f9170cab6
> >  
> > 3) Create the directory on your own at startup. 

> If I install Mongo manually  apt-get install mongodb-org if install fine 
> and the /var/run/mongodb folder is created every reboot
> it's only when I install via Ansible then it doesn't.
> 
> e.g. a manual install also creates a mongodb file in /etc/init.d  the 
> Ansible install does not
> 
> I have worked round the problem with your option 3.
> I have created a file in /urs/lib/tmpfiles.d called mongo.conf contents of:
> 
> d /var/run/mongodb 0755 mongodb mongodb -
> 
> This creates the mongodb directory every reboot.
> 
> It does seem weird that the installs differs via Ansible vs manual 

There shouldn't be any difference in installing packages manually and with
Ansible. If you're sure you've found a difference open an issue with the
Ansible module.


OFF-TOPIC: MongoDB. Just to close this issue here.

You've configured the repo and installed "mongodb-org" which is maintained
and supported by MongoDB Inc (they claim it's for Ubuntu). Standard Ubuntu
18.04 does not include it.

If you want to find the problem take a look what packages are installed

    dpkg -l | grep mongo

See what files are installed by the package

     apt-file list mongodb-org

Examine the files and see what services are active

    /etc/init.d/mongodb
    /etc/mongodb.conf
    /lib/systemd/system/mongodb.service

FWIW. Standard Ubuntu 18.04 mongodb-server put PID by default into the file

    /var/lib/mongodb/mongod.lock

and the directory /var/run/mongodb lists the socket

    $ ls -1 /var/run/mongodb/
    mongodb-27017.sock

init.d shows

    $ grep RUNDIR /etc/init.d/mongodb 
    RUNDIR=/run/mongodb
    PIDFILE=$RUNDIR/$NAME.pid
    DAEMON_OPTS=${DAEMON_OPTS:-"--unixSocketPrefix=$RUNDIR --config $CONF
    run"} test -e "$RUNDIR" || install -m 755 -o mongodb -g mongodb -d
            "$RUNDIR"

If you think it's MongoDB problem proceed there.

HTH, Cheers,

        -vlado

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/20190916131317.66021a4d%40gmail.com.

Attachment: pgpVrq7bF2O4W.pgp
Description: OpenPGP digital signature

Reply via email to