docker 创建 elasticsearch. kibana.安装 es插件 release/elasticssearch-analysis-ik-8.10.2

1 创建network
 docker network create es-net
 docker network rm es-net
2 启动容器
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --network es-net elasticsearch:8.10.2

3 复制配置文件
docker cp es:/usr/share/elasticsearch/config/elasticsearch.yml ./elasticsearch.yml
4 修改配置文件
cluster.name: "docker-cluster"
network.host: 0.0.0.0

# 配置远程访问
http.host: 0.0.0.0

# 因为elasticsearch与elasticsearch-head工具是前后端分离项目,所以需要处理跨域问题
http.cors.enabled: true
http.cors.allow-origin: "*"

# 开启账户密码验证
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

5 启动容器
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx1024m" -v /Users/xin/docker/elasticsearch/data:/usr/share/elasticsearch/data -v /Users/xin/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins -v /Users/xin/docker/elasticsearch/config:/usr/share/elasticsearch/config  -v /Users/xin/docker/elasticsearch/logs:/usr/share/elasticsearch/logs --network es-net elasticsearch:8.10.2

#-m :设置容器使用内存最大值;
#-d :后台运行容器,并返回容器ID;
#--name : 容器命名;
#-p :端口映射 第一个端口是宿主机端口,第二个端口是容器端口;
#-v : 把es的配置文件映射到宿主机的指定目录了;
#--net/--network :桥接名,这个需要提前创建,加到同一个网络桥接里的容器可以互相通过容器名ping通;
#--restart : 容器重启模式;
#-e :设置环境变量;
#elasticsearch:8.1.0 :如果只是写elasticsearch,tag就是latest;


6 用户名密码

设置elastic,apm_system,kibana,kibana_system,logstash_system,beats_system,remote_monitoring_user 这些用户的密码

docker exec -it es elasticsearch-setup-passwords interactive

此处如果设置密码 ,需要将 xpack.security.enabled: false 设置为 false,否则访问不到es节点。

Kibana报错:Unable to retrieve version information from Elasticsearch nodes

elasticsearch@882e202cff35:~$ elasticsearch-setup-passwords interactive
******************************************************************************
Note: The 'elasticsearch-setup-passwords' tool has been deprecated. This       command will be removed in a future release.
******************************************************************************

Initiating the setup of passwords for reserved users elastic,apm_system,kibana,kibana_system,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y

Enter password for [elastic]: 
Reenter password for [elastic]: 
Enter password for [apm_system]: 
Reenter password for [apm_system]: 
Enter password for [kibana_system]: 
Reenter password for [kibana_system]: 
Enter password for [logstash_system]: 
Reenter password for [logstash_system]: 
Enter password for [beats_system]: 
Reenter password for [beats_system]: 
Enter password for [remote_monitoring_user]: 
Reenter password for [remote_monitoring_user]: 
Changed password for user [apm_system]
Changed password for user [kibana_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]

访问http://192.168.1.3:9200 成功说明 es 安装成功;

安装插件
  1. 安装插件步骤
    • docker cp usr/local/es/elasticsearch-analysis-ik-7.12.1.zip 容器名称:/usr/share/elasticsearch
    • docker exec -it 容器名称 /bin/bash
    • elasticsearch-plugin install file:/usr/share/elasticsearch/elasticsearch-analysis-ik-7.12.1.zip
  2. 安装分词器

https://github.com/medcl/elasticsearch-analysis-ik/releases 下载对应的版本,此处注意一定要和elasticsearch 版本对应起来,我的版本是 8.10.2 ,ik 的作者没有构建 8.10.2 的版本;因此 我通过 拉取 8.10.4 的版本 自己重新构建。

  • 拉取 8.10.4 源码,直接下载zip

  • 修改 pom 的版本号为。8.10.4

  • 建议在idea 下打开,勾选 profiles 中的 release,执行 install 命令,生成的 zip 包在 target/release/elasticssearch-analysis-ik-8.10.2

    docker 创建 elasticsearch. kibana.安装 es插件 release/elasticssearch-analysis-ik-8.10.2_第1张图片

  • install 完成后会报 /bin/sh: gpg: command not found 错误可以不用管

7 启动 kibana
docker run -d --name kibana -e ELASTICSEARCH_HOSTS=http://es:9200 --network=es-net -p 5601:5601 kibana:8.10.2

8 复制文件
docker cp kibana:/usr/share/kibana/config/ /Users/xin/docker/kibana/

9 修改配置文件
server.name: kibana
# kibana的主机地址 0.0.0.0可表示监听所有IP
server.host: "0.0.0.0"
# kibana访问es的URL
elasticsearch.hosts: [ "http://es:9200" ]
elasticsearch.username: 'kibana'  
elasticsearch.password: '123456'
# 显示登陆页面
xpack.monitoring.ui.container.elasticsearch.enabled: true
# 语言
i18n.locale: "zh-CN"

10 启动容器

删除之前的,重新启动新的容器

docker run -d --name kibana -e ELASTICSEARCH_HOSTS=http://es:9200  -v /Users/xin/docker/kibana/config:/usr/share/kibana/config  --network=es-net -p 5601:5601 kibana:8.10.2
11 访问

http://192.168.1.3:5601/app/kibana/home

你可能感兴趣的:(软件使用,java,javase,jenkins,运维,elasticsearch,es,kibana,analysis-ik)