所有的操作都是基于Docker来的,没有装Docker的话请参照 官方文档 安装
采用的ES版本为6.8.13
宿主机系统为Centos 7.8
单机版添加密码验证
集群版使用ssl传输
将下面的内容粘贴到elasticsearch.yml
ES_JAVA_OPTS设置了ES的启动内存,自己按需修改
discovery.type=single-node表示该es为单节点,不加这个的话,你的es健康状态会显示为黄色
根据提示,先输入y,然后输入密码,这里会要求输入多次,主要是需要给好几个系统添加密码,用户默认elastic
至此,单节点的elasticsearch就部署好了,通过elasticsearch head即可连接使用
生成的ssl证书在用户目录certs下 cd ~/certs 即可看到
后续步骤需要在每一台集群服务器上执行
NODE_LIST:配置集群中其他节点的地址,格式为:ip:port,ip2:port2
NODE_NAME:当前节点的name
至此,搭建就完了
我们一般在开发与测试的使用使用的单节点的es,节约资源嘛,而在生产的时候,那肯定就需要上集群了,这时候在开发与测试环境的时候,java的连接配置就会与生产有一些出入
我一般都是用的 spring-boot-starter-data-elasticsearch 搭配 x-pack-transport 来连接
先引入相关的依赖
版本号这东西自己注意下哈,es对这还是挺敏感的
这里主要是通过isCluster这个配置来区分的
如果连接的是集群,由于我们之前为集群配置了一个ssl证书,所以java连接的时候也是需要使用那个证书的,所以会多出来几个配置
ES版本依赖: https://www.elastic.co/cn/support/matrix
三台服务器:
现在完成后上传至Linux服务器。比如通过ssh rz 命令上传到home目录
这里选择 ElasticHD ,解压即可使用。
有关ES可视化工具,参见下面附录
报错如下,切换至非root用户即可
ES未来的把版本要求匹配JDK 11,这里可以忽略。
启动检查失败,这里有三个错误。
[1] es进程的最大文件描述符[4096]太低,请至少增加到[65535]
[2] 用户[es]的最大线程数[3795]太低,请至少增加到[4096]
[3] 最大虚拟内存区域[65530]太低,请至少增加到[262144]
修改limits.conf配置 vim /etc/security/limits.conf 在末尾添加如下内容:
修改sysctl.conf配置 vim /etc/sysctl.conf 在末尾添加如下内容:
修改保存之后重新加载配置
查看防火墙状态,看防火墙是未开启此端口。
直接关闭防火墙(比较暴力)
或者开启端口
浏览器可以成功访问: http://192.168.200.101:9200
日志不停的打印警告,主节点没有发现,原因是9300端口防火墙没有放开,因为节点通信、发现、选举master,默认使用9300端口。
ES官网: https://www.elastic.co/cn/elasticsearch
官网文档: https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html
中文社区: https://elasticsearch.cn/
ES常用工具清单: https://blog.csdn.net/laoyang360/article/details/80645710
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)