01.ES安装
# 01.安装Docker
# 1.1 yum安装docker
[root@k8s-master ~]# yum -y install wget
[root@k8s-master ~]# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
[root@k8s-master ~]# yum -y install docker-ce
[root@k8s-master ~]# systemctl enable docker && systemctl start docker
1
2
3
4
2
3
4
- 配置镜像下载加速器:
[root@k8s-master ~]# cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
}
EOF
[root@k8s-master ~]# systemctl restart docker
[root@k8s-master ~]# docker info
1
2
3
4
5
6
7
2
3
4
5
6
7
# 1.2 添加阿里云YUM软件源
[root@k8s-master ~]# cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 02.docker安装ES
# 2.1 docker安装es
- docker安装es
[root@k8s-node2 ~]# docker pull elasticsearch:7.2.0
[root@k8s-node2 ~]# docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -d elasticsearch:7.2.0
1
2
2
- 修改配置,解决跨域访问问题
- 首先进入到容器中,然后
进入到指定目录修改elasticsearch.yml文件
- 首先进入到容器中,然后
[root@k8s-node2 ~]# docker pull elasticsearch:7.2.0
[root@k8s-node2 ~]# docker exec -it elasticsearch /bin/bash
[root@de5bba3e2d81 elasticsearch]# cd /usr/share/elasticsearch/config/
[root@de5bba3e2d81 elasticsearch]# vi elasticsearch.yml
# 追加一下内容,解决跨域问题
http.cors.enabled: true
http.cors.allow-origin: "*"
[root@de5bba3e2d81 elasticsearch]# exit
[root@k8s-node2 ~]# docker restart elasticsearch
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 2.2 安装ik分词器
es自带的分词器对中文分词不是很友好,所以我们下载开源的IK分词器来解决这个问题。
首先进入到plugins目录中下载分词器,下载完成后然后解压,再重启es即可。
注意:elasticsearch的版本和ik分词器的版本需要保持一致,不然在重启的时候会失败。
[root@k8s-node2 ~]# cd /usr/share/elasticsearch/plugins/
[root@de5bba3e2d81 elasticsearch]# elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.2.0/elasticsearch-analysis-ik-7.2.0.zip
[root@de5bba3e2d81 elasticsearch]# exit
[root@k8s-node2 ~]# docker restart elasticsearch # 然后可以在kibana界面的dev tools中验证是否安装成功;
1
2
3
4
2
3
4
# 2.3 安装kibana
[root@k8s-node2 ~]# docker pull kibana:7.2.0
[root@k8s-node2 ~]# docker run --name kibana --link=elasticsearch:test -p 5601:5601 -d kibana:7.2.0
[root@k8s-node2 ~]# docker start kibana
1
2
3
2
3
- 访问网址
- 访问ES: http://192.168.56.66:9200/
- 访问kibana:http://192.168.56.66:5601/
# 03.mac m1安装ES
# 1、docker安装es
- docker安装es
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.13.1
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -d elasticsearch:7.13.1
1
2
2
- 修改配置,解决跨域访问问题
- 首先进入到容器中,然后
进入到指定目录修改elasticsearch.yml文件
- 首先进入到容器中,然后
[root@k8s-node2 ~]# docker exec -it elasticsearch /bin/bash
[root@de5bba3e2d81 elasticsearch]# cd /usr/share/elasticsearch/config/
[root@de5bba3e2d81 elasticsearch]# vi elasticsearch.yml
# 追加一下内容,解决跨域问题
http.cors.enabled: true
http.cors.allow-origin: "*"
[root@de5bba3e2d81 elasticsearch]# exit
[root@k8s-node2 ~]# docker restart elasticsearch
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 2、安装kibana
docker pull kibana:7.13.1
docker run --name kibana --link=elasticsearch:test -p 5601:5601 -d kibana:7.13.1
docker start kibana
1
2
3
2
3
- 访问网址
- 访问ES: http://127.0.0.1:9200/
- 访问kibana:http://127.0.0.1:5601/
# 04.Linux安装ES
# 1、ES安装说明
- ES 5,安装需要 JDK 8 以上
- ES 6.5,安装需要 JDK 11 以上
- ES 7.2.1,内置了 JDK 12
下载地址:https://www.elastic.co/cn/downloads/elasticsearch
# 2、下载elasticsearch
[root@k8s-node2 opt]# mkdir /opt/software
[root@k8s-node2 opt]# cd /opt/software/
[root@k8s-node2 aaa]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.12.0-linux-x86_64.tar.gz
[root@k8s-node2 software]# tar -xvf elasticsearch-7.12.0-linux-x86_64.tar.gz
[root@k8s-node2 elasticsearch-7.12.0]# cd /opt/software/elasticsearch-7.12.0
bin # 脚本文件,包括 ES 启动 & 安装插件等等
config # elasticsearch.yml(ES 配置文件)、jvm.options(JVM 配置文件)、日志配置文件等等
jdk # 内置的 JDK,JAVA_VERSION="12.0.1"
lib # 类库
logs # 日志文件
modules # ES 所有模块,包括 X-pack 等
plugins # ES 已经安装的插件。默认没有插件
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# 3、启动用户
[root@k8s-node2 elasticsearch-7.12.0]# groupadd elasticsearch
[root@k8s-node2 elasticsearch-7.12.0]# useradd -g elasticsearch elasticsearch
[root@k8s-node2 elasticsearch-7.12.0]# chown -R elasticsearch:elasticsearch ../elasticsearch-7.12.0
[root@k8s-node2 elasticsearch-7.12.0]# su elasticsearch
[elasticsearch@k8s-node2 elasticsearch-7.12.0]$ ./bin/elasticsearch
1
2
3
4
5
2
3
4
5
- 打开一个新终端测试访问
[root@k8s-node2 ~]# curl "127.0.0.1:9200"
{
"name" : "k8s-node2",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "956FguX1QkSc4vulArZm0w",
"version" : {
"number" : "7.12.0",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "78722783c38caa25a70982b5b042074cde5d3b3a",
"build_date" : "2021-03-18T06:17:15.410153305Z",
"build_snapshot" : false,
"lucene_version" : "8.8.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 4、elasticsearch.yml基本配置
- 常用配置文件
[root@k8s-node2 elasticsearch-7.12.0]# vim config/elasticsearch.yml
cluster.name: elasticsearch
# 配置的集群名称,默认是elasticsearch
node.name: "Franz Kafka"
# 当前配置所在机器的节点名,最好设置当前机器的ip地址
network.host: 192.168.0.1
# 监听地址,这个参数是用来同时设置bind_host和publish_host上面两个参数。
path.data: /path/to/data
# 设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开
path.logs: /path/to/logs
# 设置日志文件的存储路径,默认是es根目录下的logs文件夹
http.port: 9200
# 设置对外服务的http端口,默认为9200。
transport.tcp.port: 9300
# 设置节点之间交互的tcp端口,默认是9300
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 5、jvm.options配置优化
[root@k8s-node2 elasticsearch-7.12.0]# vim config/jvm.options
1
1) 环境配置
[root@k8s-node2]# sudo swapoff -a
# 禁用swapping,开启服务器虚拟内存交换功能会对es产生致命的打击
1
2
2
2)vm.options
- jvm.options主要是进行内存相关配置,官方建议分配给es的内存不要超出系统内存的50%,
- 预留一半给Lucene,因为Lucene会缓存segment数据提升检索性能;
- 内存配置不要超过32g,如果你的服务器内存没有远远超过64g,那么不建议将es的jvm内存设置为32g
- 因为超过32g后每个jvm对象指针的长度会翻倍,导致内存与cpu的开销增大
-Xms10g
-Xmx10g
1
2
2
# 05.win10 安装 ES
# 1、win10安装Java JDK
# 1、下载 java jdk
# 2、系统变量新增JAVA_HOME
- 系统变量里面新增JAVA_HOME,设置值为java sdk 根目录
# 3、path路径添加环境变量
# 2、下载安装elasticsearch
# 1、下载elasticsearch
# 2、启动elasticsearch
- 解压到
C:\esdir\
就可以直接运行 - 运行命令如下
C:\esdir\elasticsearch-7.9.0\bin> cd C:\esdir\elasticsearch-7.9.0\bin
C:\esdir\elasticsearch-7.9.0\bin> elasticsearch.bat
1
2
2
- 输入 http://localhost:9200/ 出来如下界面
# 3、安装配置中文分词工具
默 认 情 况 ElasticSearch 只 适 用 于 英 文 分 词 , 如 果 要 做 中 文 分 词 的 话 我 们 要 安 装 elasticsearch-analysis-ik 插件。
**官方文档:**https://github.com/medcl/elasticsearch-analysis-ik
官方提供了两种安装中文分词工具的方法,由于第二种可能因为版本问题会安装失败,所以接下来我们用第一种方式给大家安装。
1、下载中文分词工具
2、在分词工具根目录创建 plugins/ik 文件
3、把分词工具包的内容复制到 plugins/ik 文件里面
- 4、修改配置文件的版本(如下图)
- 安装完成中文分词插件后,重新启动 ElasticSearch
# 4、安装可视化工具Kibana
# 1、下载 .zipwindows文件
安装方法:https://www.elastic.co/guide/cn/kibana/current/windows.html
下载路径:https://artifacts.elastic.co/downloads/kibana/kibana-7.9.0-windows-x86_64.zip
# 2、解压启动
解压到并启动
C:\Users\Lenovo>cd C:\esdir\kibana-7.9.0-windows-x86_64\bin
C:\esdir\kibana-7.9.0-windows-x86_64\bin>kibana.bat
1
2
2
# 3、访问
- http://localhost:5601/
# 5、启动es和kibana命令
启动ES
:http://localhost:9200/
cd C:\esdir\elasticsearch-7.9.0\bin
elasticsearch.bat
1
2
2
启动kibana
: http://localhost:5601/
cd C:\esdir\kibana-7.9.0-windows-x86_64\bin
kibana.bat
1
2
2
上次更新: 2024/3/20 16:09:51