X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/b6a30b0daecf3030fc991f070d09cce6741db5bf..cd098c41522469e462efeb1e157a8718ff7b7809:/scripts/gnt-cluster diff --git a/scripts/gnt-cluster b/scripts/gnt-cluster index 4566dd6..3986dea 100755 --- a/scripts/gnt-cluster +++ b/scripts/gnt-cluster @@ -209,6 +209,17 @@ def ShowClusterMaster(opts, args): ToStdout(master) return 0 +def _PrintGroupedParams(paramsdict): + """Print Grouped parameters (be, nic, disk) by group. + + @type paramsdict: dict of dicts + @param paramsdict: {group: {param: value, ...}, ...} + + """ + for gr_name, gr_dict in paramsdict.items(): + ToStdout(" - %s:", gr_name) + for item, val in gr_dict.iteritems(): + ToStdout(" %s: %s", item, val) def ShowClusterConfig(opts, args): """Shows cluster information. @@ -234,10 +245,7 @@ def ShowClusterConfig(opts, args): ToStdout("Enabled hypervisors: %s", ", ".join(result["enabled_hypervisors"])) ToStdout("Hypervisor parameters:") - for hv_name, hv_dict in result["hvparams"].items(): - ToStdout(" - %s:", hv_name) - for item, val in hv_dict.iteritems(): - ToStdout(" %s: %s", item, val) + _PrintGroupedParams(result["hvparams"]) ToStdout("Cluster parameters:") ToStdout(" - candidate pool size: %s", result["candidate_pool_size"]) @@ -247,10 +255,10 @@ def ShowClusterConfig(opts, args): ToStdout(" - file storage path: %s", result["file_storage_dir"]) ToStdout("Default instance parameters:") - for gr_name, gr_dict in result["beparams"].items(): - ToStdout(" - %s:", gr_name) - for item, val in gr_dict.iteritems(): - ToStdout(" %s: %s", item, val) + _PrintGroupedParams(result["beparams"]) + + ToStdout("Default nic parameters:") + _PrintGroupedParams(result["nicparams"]) return 0 @@ -457,7 +465,8 @@ def SetClusterParams(opts, args): """ if not (not opts.lvm_storage or opts.vg_name or opts.enabled_hypervisors or opts.hvparams or - opts.beparams or opts.candidate_pool_size is not None): + opts.beparams or opts.nicparams or + opts.candidate_pool_size is not None): ToStderr("Please give at least one of the parameters.") return 1 @@ -480,10 +489,14 @@ def SetClusterParams(opts, args): beparams = opts.beparams utils.ForceDictType(beparams, constants.BES_PARAMETER_TYPES) + nicparams = opts.nicparams + utils.ForceDictType(nicparams, constants.NICS_PARAMETER_TYPES) + op = opcodes.OpSetClusterParams(vg_name=vg_name, enabled_hypervisors=hvlist, hvparams=hvparams, beparams=beparams, + nicparams=nicparams, candidate_pool_size=opts.candidate_pool_size) SubmitOpCode(op) return 0 @@ -667,6 +680,9 @@ commands = { keyval_option("-B", "--backend-parameters", dest="beparams", type="keyval", default={}, help="Backend parameters"), + keyval_option("-N", "--nic-parameters", dest="nicparams", + type="keyval", default={}, + help="NIC parameters"), make_option("-C", "--candidate-pool-size", default=None, help="Set the candidate pool size", dest="candidate_pool_size", type="int"),