Bootstrap

elasticsearch7.9安装[单集群单节点、开启权限认证]



前言

默认配置:已经装配了Jdk8或以上的版本

下载



官网

到官网下载:https://www.elastic.co/cn/downloads/elasticsearch

截止到撰写本文的时候,es已更到7.9版本了,更新得是真勤快,几个月前本人还在用着7.6,当时最新版本的就是7.6。

img

一般来说,服务器都用的linux系列的,比如ubuntu、cenos等,所以下载这个版本。

img




下载链接

直接附上下载链接:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.3-linux-x86_64.tar.gz





国内gitee镜像(源码版)

到官网下载可能网速比较慢,可以到码云下载镜像,速度很快。

elasticsearch码云镜像:https://gitee.com/mirrors/elasticsearch

选择对应的版本,并点击“x个发行版”,就可进入到下载列表。

img





img





解压

下载后进行解压

tar -xzvf elasticsearch-7.9.3-linux-x86_64.tar.gz

img

解压后,有以下目录。

img





配置文件

img

编辑文件config/elasticsearch.yml。



以下配置文件是基于单集群单节点的配置,如果需要配置成多集群(分布式)的话,可以去官网查阅具体配置。

cluster.name: cluster1
cluster.initial_master_nodes: ["node-1"] #初始化master节点

node.name: node-1 #节点名字
network.host: 0.0.0.0 #生产配置为127.0.0.1,测试可以为其他地址
http.port: 9200 #端口

http.cors.enabled: true  #开启跨域
http.cors.allow-origin: "*" #开启跨域





启动

开放文件夹权限

添加一个叫elasticsearch的用户,专门用来启动es。

#添加用户
adduser elasticsearch

#设置密码
passwd elasticsearch
chown -R 777 elasticsearch-7.9.3

切换普通用户

因为es不运行让root用户启动,所以需要先创建一个普通用户,然后切换过去再启动。

su elasticsearch

启动命令

进入到es目录下,运行bin/elasticsearch (or bin\elasticsearch.bat on Windows)

img





开启权限

第一步

切换到elastsearch的目录下,使用下列命令生成证书

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

img



注意,要让新生成的证书文件能够被普通用户读取到,即,需要重新更改一次权限。

chown -R 777 elasticsearch-7.9.3



第二步

打开config/elasticsearch.yaml,在尾部添加下面的配置代码:

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

img




第三步

启动elasticsearch服务,可以看到,此时登录需要输入账号密码了,但此时还没有创建用户,接下来需要创建一些角色和用户。

img




第四步

保持es服务运行的状态下,新打开一个终端,使用cd命令切换到elasticsearch目录。使用

elasticsearch-setup-passwords interactive

bin/elasticsearch-setup-passwords auto 

生成用户和密码。

两者的区别是,前者是自己来指定每个用户的密码,而后者auto是自动生成随机的密码。

img

img



执行完上一步操作后,无需重启服务,直接访问服务器的9200端口,并输入账号密码,可以看到已经实现了登陆和权限功能了。

(tip:elastic是超级用户,拥有所有权限)

img




尝试插入一条数据。

img

查询数据。

img




与elasticsearch交互的工具

Kibana

是ELK体系中的K,是官方给出的用来与es交互的服务。

kibana配置比较简单,只需要指定好es的服务地址,详情可查阅官网。

https://www.elastic.co/cn/elastic-stack

img

img

img




Elasticsearch Head

chrome浏览器插件,也可作为npm项目搭建在服务器上。

img




Elasticvue

chrome浏览器插件

img

常用插件

elasticsearch-ik

最流行的分词插件

安装

./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.9.3/elasticsearch-analysis-ik-7.9.3.zip



pinyin

pinyin插件能够将文档和查询条件在汉字和拼音间转换

安装

./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-pinyin/releases/download/v7.9.3/elasticsearch-analysis-pinyin-7.9.3.zip




参考文章

下面这篇文章收录了配置过程中各种bug的解决方法,遇到失败的情况可以参考一下。

单节点安装Elasticsearch

;