第四节:ElasticSearch/Kibana/IK分词器多版本的安装使用(docker 和 windows)
一. 8.x版本--docker安装
1. 版本说明
ElasticSearch 8.18.3 【20250525发布】
Kibana 8.18.3
IK分词 8.18.3
2. ES安装
(1) 下载镜像
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.18.3
- 
这是官方推荐的下载方式,确保获取经过验证的镜像
 - 
指定版本号
8.18.3保证 ES 和 Kibana 版本一致 - 
使用官方仓库
docker.elastic.co而不是 Docker Hub 
(2) 创建docker网络
docker network create elastic-net
- 
创建专用网络
elastic-net用于容器间通信 - 
优点:
- 
容器可通过名称相互访问(如
elasticsearch主机名) - 
隔离于其他容器,提高安全性
 - 
无需暴露所有端口到宿主机
 
 - 
 - 
技术细节:默认创建 bridge 网络,适合单主机部署
 
(3) 创建必要目录
sudo mkdir -p /root/elasticsearch/{config,data,plugins,logs}
sudo chmod -R 777 /root/elasticsearch
- 
目录结构作用:
- 
config: 存储自定义配置文件 - 
data: 持久化索引数据 - 
plugins: 存放分词器等插件 - 
logs: 收集运行日志 
 - 
 
(4) 创建配置文件
cluster.name: "docker-cluster"
node.name: "ypf-es-node-01"
network.host: 0.0.0.0
http.port: 9200
discovery.type: single-node
path.data: /usr/share/elasticsearch/data
path.logs: /usr/share/elasticsearch/logs
xpack.security.enabled: false
详细说明:
- 
cluster.name: 集群标识符,多节点需一致 - 
node.name: 节点唯一名称,建议包含环境信息 - 
network.host: 0.0.0.0: 允许所有网络接口访问 - 
discovery.type: single-node: 单节点模式,无需发现其他节点 - 
xpack.security.enabled: false: 禁用安全功能(仅限测试) 
(5) 构建ES容器--无密码模式
docker run -d \
  --name elasticsearch \
  --net elastic-net \
  -p 9200:9200 \
  -p 9300:9300 \
  -v /root/elasticsearch/data:/usr/share/elasticsearch/data \
  -v /root/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
  -v /root/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
  -v /root/elasticsearch/logs:/usr/share/elasticsearch/logs \
  -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
  docker.elastic.co/elasticsearch/elasticsearch:8.18.3
访问:9200端口,显示如下

(6) 构建ES容器--有密码模式
docker run -d \
  --name elasticsearch \
  --net elastic-net \
  -p 9200:9200 \
  -p 9300:9300 \
  -v /root/elasticsearch/data:/usr/share/elasticsearch/data \
  -v /root/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
  -v /root/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
  -v /root/elasticsearch/logs:/usr/share/elasticsearch/logs \
  -e "ELASTIC_PASSWORD=ypf12345" \
  -e "xpack.security.enabled=true" \
  -e "xpack.security.http.ssl.enabled=false" \
  --ulimit memlock=-1:-1 \
  docker.elastic.co/elasticsearch/elasticsearch:8.18.3
超级管理员:elastic 密码:ypf12345
访问:9200端口,需要输入账号密码才能使用
 
3. Kibana安装
(1) 下载镜像
docker pull docker.elastic.co/kibana/kibana:8.18.3
PS:这里直接从官方下载指定版本
(2) 构建镜像--无密码模式
docker run -d \
  --name kibana \
  --net elastic-net \
  -p 5601:5601 \
  -e "ELASTICSEARCH_HOSTS=http://elasticsearch:9200" \
  docker.elastic.co/kibana/kibana:8.18.3
说明:
- 
elasticsearch是 ES 容器名称,Docker 网络自动解析 - 
访问
http://<服务器IP>:5601使用 Kibana - 
性能优化:可添加
-e "SERVER_MAXPAYLOADBYTES=1048576"处理大请求 
PS:访问9200端口即可
(3) 构建镜像--有密码模式【有问题,不能使用elastic账户】
docker run -d \
  --name kibana \
  --net elastic-net \
  -p 5601:5601 \
  -e "ELASTICSEARCH_HOSTS=https://elasticsearch:9200" \
  -e "ELASTICSEARCH_USERNAME=elastic" \
  -e "ELASTICSEARCH_PASSWORD=ypf12345" \
  -e "ELASTICSEARCH_SSL_VERIFICATIONMODE=none" \
  docker.elastic.co/kibana/kibana:8.18.3
4. 分词器安装
直接去 https://release.infinilabs.com/analysis-ik/stable/ 下载后,拷贝在关联的目录下即可,至于文件夹名称,不是很重要

验证安装
docker exec elasticsearch elasticsearch-plugin list
# 应返回: analysis-ik
 
二. 8.x版本--windows安装
1. 版本说明
ElasticSearch 8.18.3 【20250525发布】
Kibana 8.18.3
IK分词 8.18.3
2. ES安装
(1) es8.x版本中默认包含对应jdk环境,直接运行 elasticsearch.bat ,会在配置文件中生成一部分代码,如下图,然后关闭安全认证即可,改为false即可。

(2) 解决日志乱码问题

(3) 重新运行 elasticsearch.bat
3. Kibana安装
(1) 修改配置文件 kibana.yml ,如下
#指定Kibana服务器监听的端口号
server.port: 5601 
#指定Kibana服务器绑定的主机地址  
server.host: "0.0.0.0"  
#指定Kibana连接到的Elasticsearch实例的访问地址
elasticsearch.hosts: ["http://localhost:9200"]  
#将 Kibana 的界面语言设置为简体中文
i18n.locale: "zh-CN"   
(2) 直接运行 kibana.bat 即可
4. 分词器安装
直接拷贝到 plugins 即可。

!
- 作 者 : Yaopengfei(姚鹏飞)
 - 博客地址 : http://www.cnblogs.com/yaopengfei/
 - 声 明1 : 如有错误,欢迎讨论,请勿谩骂^_^。
 - 声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权利。
 
                    
                
                
            
        
浙公网安备 33010602011771号