From 4e071d3b89793af09f2f84304b182257221cb6b5 Mon Sep 17 00:00:00 2001 From: Iustin Pop <iustin@google.com> Date: Tue, 9 Sep 2008 12:24:50 +0000 Subject: [PATCH] Export backend.GetMasterInfo over the rpc layer We create a multi-node call so that querying all nodes for agreement will be fast. Reviewed-by: imsnah --- daemons/ganeti-noded | 10 ++++++++++ lib/rpc.py | 12 ++++++++++++ 2 files changed, 22 insertions(+) diff --git a/daemons/ganeti-noded b/daemons/ganeti-noded index 59b3c3400..3de30d368 100755 --- a/daemons/ganeti-noded +++ b/daemons/ganeti-noded @@ -472,6 +472,12 @@ class NodeDaemonRequestHandler(http.HTTPRequestHandler): """ return backend.UploadFile(*params) + @staticmethod + def perspective_master_info(params): + """Query master information. + + """ + return backend.GetMasterInfo() # os ----------------------- @@ -526,6 +532,8 @@ class NodeDaemonRequestHandler(http.HTTPRequestHandler): duration = params[0] return utils.TestDelay(duration) + # file storage --------------- + @staticmethod def perspective_file_storage_dir_create(params): """Create the file storage directory. @@ -552,6 +560,8 @@ class NodeDaemonRequestHandler(http.HTTPRequestHandler): return backend.RenameFileStorageDir(old_file_storage_dir, new_file_storage_dir) + # jobs ------------------------ + @staticmethod @_RequireJobQueueLock def perspective_jobqueue_update(params): diff --git a/lib/rpc.py b/lib/rpc.py index 9fd542ccb..f3e85e889 100644 --- a/lib/rpc.py +++ b/lib/rpc.py @@ -384,6 +384,18 @@ def call_node_stop_master(node, stop_daemons): return c.getresult().get(node, False) +def call_master_info(node_list): + """Query master info. + + This is a multi-node call. + + """ + c = Client("master_info", []) + c.connect_list(node_list) + c.run() + return c.getresult() + + def call_version(node_list): """Query node version. -- GitLab