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.
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