[Pulp-list] [devel] systemd units & init scripts in the distributed-tasks branch!

Randy Barlow rbarlow at redhat.com
Mon Jan 27 22:20:21 UTC 2014


Hi!

If you are a developer, and you have been tracking our distributed-tasks branch, read on. If not, feel free to skip this message :)

I just merged my pull request[0] that adds support for running our Celery workers under systemd or Upstart. If you are a developer, you too can benefit from this! Here's what you need to do:

1) You do need to install Celery and its dependencies. I *think* anything greater than 3.0 will work, but I've only tested with 3.1, so you might as well use that. I've added Celery and deps to our deps/ folder, if you want to build the RPM yourself (it's not yet in our own repo, so you can't get it that way yet.) I'd bet that sudo pip install celery would work too. Also, if you are in Fedora, you can probably just use the version they supply and it'll work just fine.

2) In the distributed-tasks branch, you'll need to run pulp-dev -I again. I don't think you need to -U before pulling, but that wouldn't hurt. I think I only added new things, so a simple -I will probably do the trick.

3) On your dev machine, you need to start three services: pulp_celerybeat, pulp_resource_manager, and pulp_workers. There are config files to control all of these in /etc/default, and the configs have the same names as the services. For Upstart (RHEL):

    $ sudo chkconfig on pulp_celerybeat
    $ sudo chkconfig on pulp_resource_manager
    $ sudo chkconfig on pulp_workers
    $ sudo service pulp_celerybeat start
    $ sudo service pulp_resource_manager start
    $ sudo service pulp_workers start

For systemd:

    $ sudo systemctl enable pulp_celerybeat
    $ sudo systemctl enable pulp_resource_manager
    $ sudo systemctl enable pulp_workers
    $ sudo systemctl start pulp_celerybeat
    $ sudo systemctl start pulp_resource_manager
    $ sudo systemctl start pulp_workers

That should do it. These things all log in obviously named files under /var/log/pulp if you use the default settings, so you can see stuff in there if you run into trouble. I've got another PR that will add docs for all of this as well.

Of course, if you'd rather keep running celeryd manually, you always have that option. It's not required to run it with your init system.

Happy distribution of tasks!

[0] https://github.com/pulp/pulp/pull/762

-- 
Randy Barlow




More information about the Pulp-list mailing list