Commit d868eb84 authored by Christos Stavrakakis's avatar Christos Stavrakakis

cyclades: Tool for checking Cyclades update path

Create a tool for checking the status of Cyclades update path, which
includes Ganeti, AMQP, snf-ganeti-eventd and snf-dispatcher. The tool is
created as part of the snf-dispatcher and can be used by passing the
'--status-check' option.

The tool sends a 'status-check' message to the running snf-dispatcher
process (via AMQP) and then waits to get the status report from an
exclusive queue. Respectively, the snf-dispatcher uses the Ganeti RAPI
client to add a special tag to each Ganeti cluster (in dry-run mode),
which will trigger snf-ganeti-eventd to send a heartbeat message to the
AMQP broker. Dispatcher collects all these message and sends the status
report back to the tool that triggered the status check.

Closes #23
parent 6abdbdb2
# Copyright 2012 GRNET S.A. All rights reserved.
# Copyright 2012-2014 GRNET S.A. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
......@@ -86,3 +86,14 @@ def convert_queue_to_dead(queue):
def convert_exchange_to_dead(exchange):
"""Convert the name of an exchange to the corresponding dead-letter one"""
return exchange + "-dl"
EVENTD_HEARTBEAT_ROUTING_KEY = "eventd.heartbeat"
def get_dispatcher_request_queue(hostname, pid):
return "snf:dispatcher:%s:%s" % (hostname, pid)
def get_dispatcher_heartbeat_queue(hostname, pid):
return "snf:dispatcher:heartbeat:%s:%s" % (hostname, pid)
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 to comment