我正在学习Elastic Search(v7.8),所以我做了一个本地集群对其进行测试。
我使用Ubuntu 18在IP地址相同的网络中制作了3个虚拟机,它们具有相同的资源量:
所有正确的单独安装,每个安装都响应她的API:
curl -XGET localhost:9200/?pretty
但是,当我尝试创建一个集群来编辑/etc/elasticsearch/elasticsearch.yml
时,每个集群都使用一个节点形成了自己的同名集群。这是我的文件:https://gist.github.com/RedxLus/f8eb561157c7f2b61fb4dfaa74fe8868
这是每个节点的输出。一模一样。:
curl -XGET 192.168.1.77:9200/_cluster/health?pretty
{
"cluster_name" : "luisiblog",
"status" : "green",
"timed_out" : false,
"number_of_nodes" : 1,
"number_of_data_nodes" : 1,
"active_primary_shards" : 0,
"active_shards" : 0,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 0,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0,
"task_max_waiting_in_queue_millis" : 0,
"active_shards_percent_as_number" : 100.0
}
我不知道这是配置错误还是跳过了添加节点的任何步骤。我希望他们能帮助我。非常感谢大家。
最佳答案
第一件事是您缺少network.host
适当的值,该值应该是0.0.0.0
,以确保在非回送地址上可见。
您可以尝试以下配置吗:
#这用于节点1
cluster.name: elasticsearch
node.name: node-1
network.host: 0.0.0.0
discovery.seed_hosts: ["192.168.1.77","192.168.1.76","192.168.1.75"]
cluster.initial_master_nodes: ["192.168.1.77"]
discovery.zen.minimum_master_nodes : 1
node.master: true
#这用于节点2 cluster.name: elasticsearch
node.name: node-2
network.host: 0.0.0.0
discovery.seed_hosts: ["192.168.1.77","192.168.1.76","192.168.1.75"]
cluster.initial_master_nodes: ["192.168.1.77"]
discovery.zen.minimum_master_nodes : 1
node.master: false
#这是用于节点3的cluster.name: elasticsearch
node.name: node-3
network.host: 0.0.0.0
discovery.seed_hosts: ["192.168.1.77","192.168.1.76","192.168.1.75"]
cluster.initial_master_nodes: ["192.168.1.77"]
discovery.zen.minimum_master_nodes : 1
node.master: false
请不要让我创建一个专用主节点,在这种情况下为node-1
关于elasticsearch - 添加节点以创建本地集群Elasticsearch [7.8],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62856133/