在生产环境下,Elasticsearch最好单独运行在服务器中。为了能够使其使用系统所有可用的资源,你需要配置你的操作系统以允许运行Elasticsearch的用户使用比默认情况下更多的资源。
在部署生成环境之前需要考虑以下设置:
配置(修改)你的操作系统设置禁用swapping提高文件描述符个数确保有充足的虚拟内存确保有充足的线程可用JVM DNS缓存设置不要使用noexec挂载临时目录TCP重传超时
那么开发环境和生产环境有何区别?
开发模式VS生产模式默认情况下,Elasticsearch(以下简写为ES)假设你运行在开发模式下。对于上面的配置,在开发模式下如果你没有正确配置,ES只会在日志中记录一个WARNING,ES实例仍然能够正常启动。
从开发模式到生产模式的转变一旦你配置了网络相关配置,例如network.host,ES就会认为你需要迁移到生产模式,将原本的警告升级为异常!这些异常将导致ES无法启动!这是一种重要的安全保障,能确保你不会丢失数据。



