环境&软件包
阿里云centos8.1
docker
Elasticsearch7.2.0
Elasticsearch-analysis-ik-7.2.0
Kibana7.2.0
安装docker
##安装依赖
yum install -y yum-utils
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
##安装docker
yum install docker-ce -y
##启动docker服务
systemctl start docker
systemctl enable docker
##docker 检验
docker version
安装es
- ElasticSearch 和 Kibana版本需对应安装,版本不一致可能会出现问题
#安装版本:7.2.0
#拉取镜像
docker pull elasticsearch:7.2.0
#启动镜像
docker run -d -p 9200:9200 -p 9300:9300 --name es -e "discovery.type=single-node" elasticsearch:7.2.0
参数说明:
-d : 后台运行,返回容器id
-p 9200:9200 : 将虚拟机9200端口映射到 ElasticSearch 的9200端口(web通信默认使用9200端口)
-p 9300:9300 : 将虚拟机9300端口映射到 ElasticSearch 的9300端口(分布式情况下,各个节点之间通信默 认使用9300端口)
--name elasticsearch : 为容器起一个名字为 es
elasticsearch:7.2.0 : ElasticSearch 镜像名称
配置允许跨域:
#进入es容器内容
docker exec -it es /bin/bash
#修改es配置文件
vi /usr/share/elasticsearch/config/elasticsearch.yml
#添加以下配置
http.cors.enabled: true
http.cors.allow-origin: "*"
安装es中文分词器
#下载对应版本IK分词器,本次安装Elasticsearch为7.2.0,下载elasticsearch-analysis-ik-7.2.0.zip,到本机目录
#进入本机ik存储目录:~/soft/ik
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.2.0/elasticsearch-analysis-ik-7.2.0.zip
#解压到ik文件夹
unzip elasticsearch-analysis-ik/releases -d ./ik/
#将本机ik文件夹导入docker es容器中
docker cp ./ik es:/usr/share/elasticsearch/plugins/
#重启es
docker restart es
#校验es
curl localhost:9200
#检查ik分词器
#ik自 v5.0.0 起移除名为 ik 的analyzer和tokenizer,请分别使用 ik_smart 和 ik_max_word(默认)
curl -XGET "http://localhost:9200/_analyze" -H 'Content-Type: application/json' -d'{"text":"这是一个标题MN","tokenizer": "ik_max_word"}'
安装kibana 7.2.0
docker pull kibana:7.2.0
docker run --name kibana -d --link es:elasticsearch -p 5601:5601 kibana:7.2.0
kibana汉化
docker exec -it kibana /bin/bash
#最后一行添加 i18n.locale: "zh-CN"
vi /usr/share/kibana/conf/kibana.yml
#添加以下内容
i18n.locale: "zh-CN"
#重启kibana
docker restart kibana
注意事项
- 公网IP访问kibana和es需在阿里云安全组入口开放5601和9200端口