Elasticsearch 零基础到入门新手教程(2)

默认情况下, Elasticsearch 会把插件、日志以及你最重要的数据放在安装目录下。这会带来不幸的事故,如果你重新安装 Elasticsearch的时候不小心把安装目录覆盖了。如果你不小心,你就可能把你的全部数据删掉了。 

最好的选择就是把你的数据目录配置到安装目录以外的地方,同样你也可以选择转移你的插件和日志目录。 

默认的插件目录在/usr/share/elasticsearch/plugins 

可以自定义更改如下:

1

2

3

4

5

 

path.data: /path/to/data1,/path/to/data2

# Path to log files:

path.logs: /path/to/logs

# Path to where plugins are installed:

path.plugins: /path/to/plugins

 

最小主节点数 
minimum_master_nodes 设定对你的集群的稳定 极其 重要,当你的集群中有两个 masters(注:主节点)的时候,这个配置有助于防止 脑裂 ,一种两个主节点同时存在于一个集群的现象。

如果你的集群发生了脑裂,那么你的集群就会处在丢失数据的危险中,因为主节点被认为是这个集群的最高统治者,它决定了什么时候新的索引可以创建,分片是如何移动的等等。

如果你有 两个 masters 节点,你的数据的完整性将得不到保证,因为你有两个节点认为他们有集群的控制权 

这个配置就是告诉 Elasticsearch 当没有足够 master 候选节点的时候,就不要进行 master 节点选举,等master 候选节点足够了才进行选举。 

此设置应该始终被配置为 master 候选节点的法定个数(大多数个)。法定个数就是 ( master 候选节点个数 / 2) + 1 。 

可以在你的 elasticsearch.yml 文件中这样配置:

1

 

discovery.zen.minimum_master_nodes: 2

 

Elasticsearch 默认被配置为使用单播发现 

使用单播,你可以为 Elasticsearch 提供一些它应该去尝试连接的节点列表。 当一个节点联系到单播列表中的成员时,它就会得到整个集群所有节点的状态,然后它会联系 master 节点,并加入集群。 

这个配置在 elasticsearch.yml 文件中

1

 

discovery.zen.ping.unicast.hosts: ["host1", "host2:port"]

 

内存交换 

到磁盘对服务器性能来说是 致命 的 
需要打开配置文件中的 mlockall 开关。 它的作用就是允许 JVM 锁住内存,禁止操作系统交换出去。在你的 elasticsearch.yml 文件中,设置如下:

1

 

bootstrap.mlockall: true

 

 

绑定IP 

 默认elasticsearch 只能访问自己127.0.0.1 ,如果需要让其他的机器的访问则需要在加上

1

 

network.host: 192.168.0.1

 

3.2 jvm.options 配置文件

Elasticsearch 默认安装后设置的堆内存是 1 GB 
你也可以通过命令行参数的形式,在程序启动的时候把内存小传递给它,如果你觉得这样更简单的话:

1

 

[root@ES-100 bin]# /usr/share/elasticsearch/bin/elasticsearch -Xmx10g -Xms10g

 

确保堆内存最小值( Xms )与最大值( Xmx )的大小是相同的,防止程序在运行时改变堆内存大小, 这是一个很耗系统资源的过程。 

标准的建议是把 50% 的可用内存作为 Elasticsearch 的堆内存,保留剩下的 50%。当然它也不会被浪费,Lucene 会利用起余下的内存.

但堆内存大小设置不要超过 32 GB

3.3 做实验用的配置文件

这只是我做实验用的配置文件, 具体环境,根据生产而定 
elasticsearch.yml

1

2

3

4

 

[root@ES-100 ~]# egrep -v "^#|^$" /etc/elasticsearch/elasticsearch.yml

path.data: /var/lib/elasticsearch

path.logs: /var/log/elasticsearch

network.host: 127.0.0.1,10.0.0.100

 

4 ElsaticSearch交互

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/0b85b6141a93dda06aa22fb80439f5cc.html