Title

k8s部署elasticsearch8.13.3版本并配置密码以及ik分词器

本文在es7版本进行升级到8版本(直接部署8版本同理,自行思考)

以下是7版本的部署方法

k8s部署elasticsearch以及ik分词器 - Esurts~ - 博客园

 

configmap需要注销掉一项配置

 es8不支持这项配置了

 

使用es7版本进行构建生成私钥证书

生成es容器

docker run -it -d --name es-tls elasticsearch:7.17.16 /bin/bash

进入容器内部生成证书

docker exec -it es-tls /bin/bash

pwd  (看是否在以下目录中)

/usr/share/elasticsearch

生成证书

./bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""

将证书复制到本地 

docker cp es-tls:/usr/share/elasticsearch/config/elastic-certificates.p12 /app/elastic-certificates.p12

 

使用dockerfile重新构建es镜像

vim Dockerfile

FROM elasticsearch:7.17.16
MAINTAINER jiang
LABEL maintainer="jiang"
COPY /app/elastic-certificates.p12 /usr/share/elasticsearch/config/
EXPOSE 9200 9300
CMD ["eswrapper"]

编译镜像

docker build -t elasticsearch:8.13.3-p12 .

 

在原来es7的yaml里替换新构建的镜像并在env下新增一下变量

- name: xpack.security.enabled
  value: "true"
- name: xpack.security.transport.ssl.enabled
  value: "true"
- name: xpack.security.transport.ssl.verification_mode
  value: "certificate"
- name: xpack.security.transport.ssl.keystore.path
  value: "elastic-certificates.p12"
- name: xpack.security.transport.ssl.truststore.path
  value: "elastic-certificates.p12"

 

重新启动并进入pod设置密码

./bin/elasticsearch-setup-passwords interactive

interactive 是手动输入密码

auto是自动随机生成密码

 

浏览器访问提示需要输入密码就可以了

 

部署ik分词器的步骤本文开头的链接中已经写了

只需要把es7的ik分词器换为8.13.3版本的ik分词器插件即可

以下是es各版本ik分词器的下载地址

Index of: analysis-ik/stable/

posted @ 2024-10-21 11:11  Esurts~  阅读(401)  评论(0)    收藏  举报