def METHOD_NAME(self, node_id=None, metric=None, params=None):
    """
    The cluster nodes info API allows to retrieve one or more (or all) of
    the cluster nodes information.
    `<https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-nodes-info.html>`_
    :arg node_id: A comma-separated list of node IDs or names to limit the
        returned information; use `_local` to return information from the
        node you're connecting to, leave empty to get information from all
        nodes
    :arg metric: A comma-separated list of metrics you wish returned. Leave
        empty to return all.
    :arg flat_settings: Return settings in flat format (default: false)
    :arg timeout: Explicit operation timeout
    """
    return self.transport.perform_request(
        "GET", _make_path("_nodes", node_id, metric), params=params
    )