Commit 384d79c5 by Guba Sándor

Merge branch 'feature-priority-queues'

parents 859d36fd 33abfb37
description "IK Cloud Django Development Server" description "IK Cloud Django Development Server"
start on runlevel [2345]
stop on runlevel [!2345]
respawn respawn
respawn limit 30 30 respawn limit 30 30
setuid cloud setuid cloud
setgid libvirtd setgid libvirtd
instance $NAME
script script
cd /home/cloud/vmdriver cd /home/cloud/vmdriver
. /home/cloud/.virtualenvs/vmdriver/local/bin/activate . /home/cloud/.virtualenvs/vmdriver/local/bin/activate
. /home/cloud/.virtualenvs/vmdriver/local/bin/postactivate . /home/cloud/.virtualenvs/vmdriver/local/bin/postactivate
HOSTNAME=$(hostname -s) exec celery -A netcelery worker --loglevel=info -n ${NAME}
exec celery -A netcelery worker --loglevel=info -n ${HOSTNAME}.netdriver
end script end script
description "IK Cloud Django Development Server"
start on runlevel [2345]
stop on runlevel [!2345]
pre-start script
hostname=$(hostname -s)
for inst in vm.fast vm.slow
do
start vmcelery NAME=$hostname.$inst || :
done
for inst in net.fast
do
start netcelery NAME=$hostname.$inst || :
done
end script
post-stop script
for inst in `initctl list|grep "^vmcelery "|awk '{print $2}'|tr -d ')'|tr -d '('`
do
stop vmcelery NAME=$inst || :
done
for inst in `initctl list|grep "^netcelery "|awk '{print $2}'|tr -d ')'|tr -d '('`
do
stop netcelery NAME=$inst || :
done
end script
description "IK Cloud Django Development Server" description "IK Cloud Django Development Server"
start on runlevel [2345]
stop on runlevel [!2345]
respawn respawn
respawn limit 30 30 respawn limit 30 30
setuid cloud setuid cloud
setgid libvirtd setgid libvirtd
instance $NAME
script script
cd /home/cloud/vmdriver cd /home/cloud/vmdriver
. /home/cloud/.virtualenvs/vmdriver/local/bin/activate . /home/cloud/.virtualenvs/vmdriver/local/bin/activate
. /home/cloud/.virtualenvs/vmdriver/local/bin/postactivate . /home/cloud/.virtualenvs/vmdriver/local/bin/postactivate
HOSTNAME=$(hostname -s) exec celery -A vmcelery worker --loglevel=info -n $NAME
exec celery -A vmcelery worker --loglevel=info -n ${HOSTNAME}.vmdriver
end script end script
""" Celery module for libvirt RPC calls. """
from celery import Celery from celery import Celery
from kombu import Queue, Exchange from kombu import Queue, Exchange
from socket import gethostname
from os import getenv from os import getenv
HOSTNAME = gethostname()
from argparse import ArgumentParser
parser = ArgumentParser()
parser.add_argument("-n", "--hostname", dest="hostname",
help="Define the full queue name with"
"with priority", metavar="hostname.queue.priority")
(args, unknwon_args) = parser.parse_known_args()
HOSTNAME = vars(args).pop("hostname")
if HOSTNAME is None:
raise Exception("You must define hostname as -n <hostname> or "
"--hostname=<hostname>.\n"
"Hostname format must be hostname.module.priority.")
AMQP_URI = getenv('AMQP_URI') AMQP_URI = getenv('AMQP_URI')
CACHE_URI = getenv('CACHE_URI') CACHE_URI = getenv('CACHE_URI')
celery = Celery('netdriver', backend='cache',
def to_bool(value):
return value.lower() in ("true", "yes", "y", "t")
lib_connection = None
celery = Celery('netcelery',
broker=AMQP_URI, broker=AMQP_URI,
include=['netdriver']) include=['netdriver'])
celery.conf.update( celery.conf.update(
CELERY_RESULT_BACKEND='cache',
CELERY_CACHE_BACKEND=CACHE_URI, CELERY_CACHE_BACKEND=CACHE_URI,
CELERY_TASK_RESULT_EXPIRES=300, CELERY_TASK_RESULT_EXPIRES=300,
CELERY_QUEUES=( CELERY_QUEUES=(
Queue(HOSTNAME + '.net', Exchange( Queue(HOSTNAME, Exchange(
'netdriver', type='direct'), routing_key='netdriver'), 'netdriver', type='direct'), routing_key="netdriver"),
) )
) )
if to_bool(getenv('LIBVIRT_KEEPALIVE', "False")):
import libvirt
lib_connection = libvirt.open(getenv('LIBVIRT_URI'))
""" Celery module for libvirt RPC calls. """ """ Celery module for libvirt RPC calls. """
from celery import Celery from celery import Celery
from kombu import Queue, Exchange from kombu import Queue, Exchange
from socket import gethostname
from os import getenv from os import getenv
from argparse import ArgumentParser
parser = ArgumentParser()
parser.add_argument("-n", "--hostname", dest="hostname",
help="Define the full queue name with"
"with priority", metavar="hostname.queue.priority")
(args, unknwon_args) = parser.parse_known_args()
HOSTNAME = vars(args).pop("hostname")
if HOSTNAME is None:
raise Exception("You must define hostname as -n <hostname> or "
"--hostname=<hostname>.\n"
"Hostname format must be hostname.module.priority.")
HOSTNAME = gethostname()
AMQP_URI = getenv('AMQP_URI') AMQP_URI = getenv('AMQP_URI')
CACHE_URI = getenv('CACHE_URI') CACHE_URI = getenv('CACHE_URI')
...@@ -24,7 +34,7 @@ celery.conf.update( ...@@ -24,7 +34,7 @@ celery.conf.update(
CELERY_CACHE_BACKEND=CACHE_URI, CELERY_CACHE_BACKEND=CACHE_URI,
CELERY_TASK_RESULT_EXPIRES=300, CELERY_TASK_RESULT_EXPIRES=300,
CELERY_QUEUES=( CELERY_QUEUES=(
Queue(HOSTNAME + '.vm', Exchange( Queue(HOSTNAME, Exchange(
'vmdriver', type='direct'), routing_key="vmdriver"), 'vmdriver', type='direct'), routing_key="vmdriver"),
) )
) )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment