elasticsearch

elasticsearch配置说明

2019-01-20  本文已影响47人  CHIMPL

elasticsearch配置说明

配置文件在config目录下:jvm.options、elasticsearch.yml和log4j2.properties。其中jvm.options为虚拟机配置,log4j2.properties为日志配置,都相对比较简单。下面重点介绍elasticsearch.yml一些重要的配置项及其含义。

  1. cluster.name: elasticsearch

    配置elasticsearch的集群名称,默认是elasticsearch。elasticsearch会自动发现在同一网段下的集群名为elasticsearch的主机,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。生成环境时建议更改。

  2. node.name:“node-1”

    节点名,默认随机指定一个name列表中名字,该列表在elasticsearch的jar包中config文件夹里name.txt文件中,其中有很多作者添加的有趣名字,大部分是漫威动漫里面的人物名字。生成环境中建议更改以能方便的指定集群中的节点对应的机器

  3. node.master: true

    指定该节点是否有资格被选举成为node,默认是true,elasticsearch默认集群中的第一台启动的机器为master,如果这台机挂了就会重新选举master。

  4. node.data: true

    指定该节点是否存储索引数据,默认为true。如果节点配置node.master:false并且node.data: false,则该节点将起到负载均衡的作用

  5. index.number_of_shards: 5

    设置默认索引分片个数,默认为5片。经本人测试,索引分片对ES的查询性能有很大的影响,在应用环境,应该选择适合的分片大小。

  6. index.number_of_replicas:

    设置默认索引副本个数,默认为1个副本。此处的1个副本是指index.number_of_shards的一个完全拷贝;默认5个分片1个拷贝;即总分片数为10。

  7. path.conf: /path/to/conf

    设置配置文件的存储路径,默认是es根目录下的config文件夹。

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

    设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开。

  9. path.logs: /path/to/logs

    设置日志文件的存储路径,默认是es根目录下的logs文件夹

  10. path.plugins: /path/to/plugins

    设置插件的存放路径,默认是es根目录下的plugins文件夹

  11. bootstrap.memory_lock: true
    设置为true来锁住内存。因为当jvm开始swapping时es的效率会降低,所以要保证它不swap,可以把ES_MIN_MEM和ES_MAX_MEM两个环境变量设置成同一个值,并且保证机器有足够的内存分配给es。同时也要允许elasticsearch的进程可以锁住内存,linux下可以通过ulimit -l unlimited命令。
    12.network.host: 192.168.0.1

    这个参数是用来同时设置bind_host和publish_host上面两个参数。

  12. http.port: 9200

    设置对外服务的http端口,默认为9200。

  13. gateway.recover_after_nodes: 1

    设置集群中N个节点启动时进行数据恢复,默认为1。

  14. discovery.zen.minimum_master_nodes: 1

    设置这个参数来保证集群中的节点可以知道其它N个有master资格的节点。默认为1,对于大的集群来说,可以设置大一点的值(2-4)

  15. discovery.zen.ping.timeout: 3s

    设置集群中自动发现其它节点时ping连接超时时间,默认为3秒,对于比较差的网络环境可以高点的值来防止自动发现时出错。

  16. discovery.zen.ping.multicast.enabled:false

    设置是否打开多播发现节点,默认是true。

  17. discovery.zen.ping.unicast.hosts: [“host1”, “host2:port”]

    设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。

上一篇下一篇

猜你喜欢

热点阅读