web-dev-qa-db-fra.com

échec de l'envoi de la demande de jointure au maître de la grappe 5.4

J'ai configuré la recherche élastique avec 3 nœuds. Mon cluster ne parvient pas à trouver le nœud principal. 

Logs de recherche élastique

[2018-02-24T02:39:39,106][INFO ][o.e.d.z.ZenDiscovery     ] [node3] failed to send join request to master [{node1}{MO28S_KZQaih1pd-ERrvIA}{SBwZDgFcTz2xTLOyh2fZAA}{192.168.2.xxx}{192.168.2.xxx:9300}], reason [RemoteTransportException[[node1][192.168.2.xxx:9300][internal:discovery/zen/join]]; nested: NotMasterException[Node [{node1}{MO28S_KZQaih1pd-ERrvIA}{SBwZDgFcTz2xTLOyh2fZAA}{192.168.2.xxx}{192.168.2.xxx:9300}] not master for join request]; ], tried [3] times
[2018-02-24T02:39:42,332][INFO ][o.e.d.z.ZenDiscovery     ] [node3] failed to send join request to master [{node1}{MO28S_KZQaih1pd-ERrvIA}{SBwZDgFcTz2xTLOyh2fZAA}{192.168.2.xxx}{192.168.2.xxx:9300}], reason [RemoteTransportException[[node1][192.168.2.xxx:9300][internal:discovery/zen/join]]; nested: NotMasterException[Node [{node1}{MO28S_KZQaih1pd-ERrvIA}{SBwZDgFcTz2xTLOyh2fZAA}{192.168.2.xxx}{192.168.2.xxx:9300}] not master for join request]; ], tried [3] times

Mon fichier elasticsearch.yml

cluster.name: cluster-testing 
node.name: node3
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.Host: 192.168.2.xxx
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.2.xxx", "192.168.2.xxx", 
                                    "192.168.2.xxx"]
discovery.zen.minimum_master_nodes: 2 
gateway.recover_after_nodes: 2 
gateway.expected_nodes: 3

Je ne suis pas capable de trouver où est le problème 

4
Javeed Shakeel

Pour transformer un nœud en nœud maître, vous devez ajouter

node.master: true

dans elasticsearch.yml.

De votre configuration

discovery.zen.minimum_master_nodes: 2 

au moins deux de vos noeuds doivent définir node.master sur true

MODIFIER:

vous trouverez ci-dessous la configuration de travail pour notre projet (3 * maîtres et 6 * esclaves):

MAÎTRISER:

cluster.name: VAL_elasticsearch
node.name: MASTER-${HOSTNAME}
node.data: false
node.master: true
path.data: /data
path.logs: /local/opt/logs
path.repo: ["/home/data_ElasticSearchBackup"]
bootstrap.memory_lock: true
bootstrap.seccomp: false
network.Host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: ["ip_master1","ip_master2","ip_masterx"]
discovery.zen.minimum_master_nodes: 2

ESCLAVE:

cluster.name: VAL_elasticsearch
node.name: DATA-${HOSTNAME}
node.data: true
node.master: false
path.data: /data
path.logs: /local/opt/logs
path.repo: ["/home/data_ElasticSearchBackup"]
bootstrap.memory_lock: true
bootstrap.seccomp: false
network.Host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: ["ip_master1","ip_master2","ip_masterx"]
discovery.zen.minimum_master_nodes: 2

Etes-vous sûr que tous les ports sont ouverts entre toutes les instances élastiques?

1
Mumrah81

J'ai fait face à une erreur similaire, mais mon cas était un peu différent. 

J'essayais de démarrer 2 nœuds ES sur le même ordinateur. J'avais copié mon répertoire ES pour démarrer un nouveau nœud et je recevais RemoteTransportException cette exception. 

Après avoir cherché un peu sur Google, j'ai découvert que je devais supprimer le répertoire nodes du répertoire copié pour amorcer ce nœud. Ce répertoire est généralement présent dans {ES_HOME}/data/nodes ou /var/lib/elasticsearch/nodes.

Source: https://github.com/elastic/elasticsearch/issues/21405

0
avp