使用Docker快速部署ES单机或ES集群

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Docker快速部署ES单机或ES集群相关的知识,希望对你有一定的参考价值。

参考技术A ES现在是很多系统中不可或缺的一部分,为了在使用时快速的部署一个ES环境,这里记录一下自己的一些操作步骤。
所有的操作都是基于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连接的时候也是需要使用那个证书的,所以会多出来几个配置

以上是关于使用Docker快速部署ES单机或ES集群的主要内容,如果未能解决你的问题,请参考以下文章

docker 快速部署ES集群 spark集群

docker-compose es + kibana 集群/单机部署

教你在Kubernetes中快速部署ES集群

教你在Kubernetes中快速部署ES集群

docker-compose快速部署elasticsearch-8.x集群+kibana

docker-compose快速部署elasticsearch-8.x集群+kibana