临时禁用swap交换分区
swapoff -a
永久禁用swap交换分区 ```python echo “vm.swappiness = 0”>> /etc/sysctl.conf
sysctl -p
3. 配置Es的jvm内存
```python
vim jvm.options
-Xms16g
-Xmx16g
- 配置es锁内存锁定物理内存地址,防止es内存被交换出去,也就是避免es使用swap交换分区,频繁的交换,会导致IOPS变高。 ```python vim elasticsearch.yml
bootstrap.memory_lock: true
```python
ERROR: [1] bootstrap checks failed
[1]: memory locking requested for elasticsearch process but memory is not locked
设置好之后启动es会报如上错误,解决办法:
- 修改/etc/security/limits.conf,添加如下内容 ```python
- soft nofile 65536
- hard nofile 65536
- soft nproc 32000
- hard nproc 32000
- hard memlock unlimited
- soft memlock unlimited ```
修改/etc/systemd/system.conf,修改如下内容
DefaultLimitNOFILE=65536 DefaultLimitNPROC=32000 DefaultLimitMEMLOCK=infinity立即生效:/bin/systemctl daemon-reload
- 配置query请求可使用的jvm内存限制,默认是10% ```python vim elasticsearch.yml
indices.queries.cache.size: 20%
6. 查询request请求的DSL语句缓存,被缓存的DSL语句下次请求时不会被二次解析可提升检索性能,默认值是1%
```python
vim elasticsearch.yml
indices.fielddata.cache.size: 30%
- 设置字段缓存的最大值,默认无限制。 ```python vim elasticsearch.yml
indices.fielddata.cache.size: 30% ```
- 设置索引的刷新时间
