下载elastic search安装包
elasticsearch-6.1.3.tar.gz
下载jdk安装包
jdk-8u261-linux-x64.tar.gz
修改elasticsearch配置文件
路径config/elasticsearch.yml
- 多个节点的cluster.name保持一致,以此确认为同一集群
cluster.name: datasong
- 每个节点的node.name不同,以此确认为不同节点
node.name: esnode1
- 配置本节点的IP地址,如果是用K8S,则使用动态地址,详情见历史文章
https://blog.csdn.net/wenyichuan/article/details/108407071
network.host: esnode1.iscas.svc.cluster.local
- 配置本集群所有节点IP
discovery.zen.ping.unicast.hosts: ["esnode1.iscas.svc.cluster.local", "esnode2.iscas.svc.cluster.local", "esnode3.iscas.svc.cluster.local"]
编写Dockerfile
FROM centos:7
ADD jdk-8u261-linux-x64.tar.gz /usr/local
ADD elasticsearch-6.1.3.tar.gz /home/
RUN mv /usr/local/jdk1.8.0_261 /usr/local/jdk
RUN yum install -y nfs-utils
ENV JAVA_HOME=/usr/local/jdk
ENV JRE_HOME=$JAVA_HOME/jre
ENV CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
ENV PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
RUN groupadd -r es && useradd -r -g es es
RUN chmod -R 777 /home/elasticsearch-6.1.3/
USER es
WORKDIR /home/elasticsearch-6.1.3/bin
ENTRYPOINT [ "./elasticsearch" ]
EXPOSE 9200
EXPOSE 9300
打包镜像
docker build -t esnode .