Curator Configuration

Hello,

I have a query regarding curator setup, I have successfully setup my curator, I could see for master_only, it says [In some situations, primarily with automated deployments, it makes sense to install Curator on every node. But you wouldn’t want it to run on each node. By setting  `master_only`  to  `True` , this is possible. It tests for, and will only continue running on the node that is the elected master].I have four nodes ,and I want to run curator from one of the Elasticsearch server, my config.yml is below:
Remember, leave a key empty if there is no value.  None will be a string,
# not a Python "NoneType"
client:
  hosts:
    - HostIP1
    - HostIP2
    - HostIP3
    - HostIP4
  port: 9200
  url_prefix:
  use_ssl: True
  certificate: /usr/share/elasticsearch/ca/ca.crt
  client_cert: /usr/share/elasticsearch/elasticsearch01/elasticsearch01.crt
  client_key: /usr/share/elasticsearch/elasticsearch01/elasticsearch01.key
  ssl_no_validate: True
  http_auth: username:password
  timeout: 30
  master_only: False
logging:
  loglevel: INFO
  logfile:
  logformat: default
  blacklist: ['elasticsearch', 'urllib3']

I could see its running successfully, my question is should I make master_only: False or True in case of clustering and I would like to make HostIP1 as master, can someone please suggest?

Regards
Dev

Having multiple entries for hosts is only about guaranteeing and/or load-balancing connection to a single cluster. Each entry for hosts must be IPs or host names within a single cluster. Things will break quickly if you try to run with entries spanning multiple clusters.

The master_only flag is for special use only. It is for people deploying Curator to all nodes in a cluster—usually as part of a configuration management solution (Chef, Puppet, Salt, Ansible, etc.). It guarantees that if Curator starts to run on all nodes in the cluster, it will only continue to run on the node identified as the elected master node. The master_only flag will be ignored if there are multiple entries for hosts, and will log a warning about that. It requires that only a single entry be defined, which should be the IP of the node it is running on, such that Curator only connects to the node it is running on.

Thanks, so you meant if I have to set master_only as true in case if I have only one  host as hosts, If i define multiple entries for hosts then master_only should be false?Would there be any issues if I mention multiple entries for hosts because my elasticsearch servers are clustered. I have installed curator on all the nodes but only configured the action and config yml files in one of the node from where i am running the curator job. Sorry I am new to this asking very basic questions.

Curator can run from anywhere that has access to the host and port. It doesn't have to run locally.

It is okay to run local (within the cluster), but unless you're running Curator with the exact same configuration files on every node, you do not need to set the master_only flag at all (the default is false).