下载ES
- 这里下载8.1.2 Linux x86_64版本,大小491M。
- ES7以后需要jdk11.0+。8.0版本更新最大的亮点就是默认开启安全配置,并极大简化了开启安全需要的工作量,可以这么说:7.x开启安全需要N步复杂的步骤比如CA、证书签发、yml添加多个配置等等,8.x只需要一步即可。
安装
将压缩包上传到Linux机器。
注意📢📢📢:解压路径不要在root目录下,因为elasticsearch8不允许使用root角色启动。使用普通用户解压。
解压
- 这里下载的
elasticsearch-8.1.2-linux-x86_64.tar.gz
,使用普通用户进行解压
# 解压 bigdata@redis01:/usr/local$ sudo tar -zxvf elasticsearch-8.1.2-linux-x86_64.tar.gz # 重命名 bigdata@redis01:/usr/local$ sudo mv elasticsearch-8.1.2 es
查看一下ES目录
授权
切换到
/usr/local/es/bin
目录下,启动es报错,原因是普通用户没有权限。bigdata@redis01:/usr/local/es/bin$ ./elasticsearch could not find java in bundled JDK at /usr/local/es/jdk/bin/java
解决:对该es目录进行授权
bigdata@redis01:/usr/local$ sudo chown -R bigdata:root /usr/local/es
启动
再次启动
bigdata@redis01:/usr/local/es/bin$ ./elasticsearch # 加上-d 后台启动 bigdata@redis01:/usr/local/es/bin$ ./elasticsearch -d
启动,查看重要的信息(第一次不建议使用 -d,可以先查看一下启动信息)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ✅ Elasticsearch security features have been automatically configured! ✅ Authentication is enabled and cluster connections are encrypted. ℹ️ Password for the elastic user (reset with `bin/elasticsearch-reset-password -u elastic`): ploAnh62q5xDnp0SCajo ℹ️ HTTP CA certificate SHA-256 fingerprint: c5c123c04d0676c6de1bbc23fe80f8a2fa5276f91e32b879a770f3b6a2917667 ℹ️ Configure Kibana to use this cluster: • Run Kibana and click the configuration link in the terminal when Kibana starts. • Copy the following enrollment token and paste it into Kibana in your browser (valid for the next 30 minutes): eyJ2ZXIiOiI4LjEuMiIsImFkciI6WyIxOTIuMTY4LjkyLjE0NTo5MjAwIl0sImZnciI6ImM1YzEyM2MwNGQwNjc2YzZkZTFiYmMyM2ZlODBmOGEyZmE1Mjc2ZjkxZTMyYjg3OWE3NzBmM2I2YTI5MTc2Nj ciLCJrZXkiOiJKSWJqSUlBQnBBaWxoRk5FbEVHVTpQNF9UdFRqeFRqR0JYbnFUWVljVktnIn0= ℹ️ Configure other nodes to join this cluster: • On this node: ⁃ Create an enrollment token with `bin/elasticsearch-create-enrollment-token -s node`. ⁃ Uncomment the transport.host setting at the end of config/elasticsearch.yml. ⁃ Restart Elasticsearch. • On other nodes: ⁃ Start Elasticsearch with `bin/elasticsearch --enrollment-token <token>`, using the enrollment token that you generated. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ES8在启动的时候就会打开安全功能,默认只能本地访问9200。
信息解释
✅ Elasticsearch security features have been automatically configured! 翻译:Elasticsearch安全功能已自动配置! ✅ Authentication is enabled and cluster connections are encrypted. 翻译:身份验证已启用,群集连接已加密
重要:原始密码和如何重置密码
ℹ️ Password for the elastic user (reset with `bin/elasticsearch-reset-password -u elastic`): 9M+Y=dogrtQ0HCWKL6dX 翻译: 生成用户:elastic,密码:9M+Y=dogrtQ0HCWKL6dX, 重置使用:bin/elasticsearch-reset-password -u elastic
ℹ️ HTTP CA certificate SHA-256 fingerprint: 0070e57eda1abdd6639adfb87429b8d62dd2f64a4a6e77d0063692a3985b533c 翻译: HTTP CA证书SHA-256的值为:0070xxxxx533c
重要:如何让Kibana加入集群
ℹ️ Configure Kibana to use this cluster: • Run Kibana and click the configuration link in the terminal when Kibana starts. • Copy the following enrollment token and paste it into Kibana in your browser (valid for the next 30 minutes): eyJ2ZXIiOiI4LjAuMSIsImFkciI6WyIxOTIuMTY4LjE5OS4yMDE6OTIwMCJdLCJmZ3IiOiIwMDcwZTU3ZWRhMWFiZGQ2NjM5YWRmYjg3NDI5YjhkNjJkZDJmNjRhNGE2ZTc3ZDAwNjM2OTJhMzk4NWI1MzNjIiwia2V5IjoiWmMzTFUzOEJuajFiQnY0U1NlbTA6ZTFwQkh4N1lTWWV5WGJpczh4c3o1dyJ9 翻译: 配置Kibana以使用此群集: •运行Kibana并在Kibana启动时单击终端中的配置链接。 •复制以下注册令牌并将其粘贴到浏览器中的Kibana中(在接下来的30分钟内有效) PS:如果token失效 ./elasticsearch-create-enrollment-token -s kibana -- url "https://192.168.92.145:9200"
重要:如何加入让新的node节点假如集群
ℹ️ Configure other nodes to join this cluster: • Copy the following enrollment token and start new Elasticsearch nodes with `bin/elasticsearch --enrollment-token <token>` (valid for the next 30 minutes): eyJ2ZXIiOiI4LjAuMSIsImFkciI6WyIxOTIuMTY4LjE5OS4yMDE6OTIwMCJdLCJmZ3IiOiIwMDcwZTU3ZWRhMWFiZGQ2NjM5YWRmYjg3NDI5YjhkNjJkZDJmNjRhNGE2ZTc3ZDAwNjM2OTJhMzk4NWI1MzNjIiwia2V5IjoiWnMzTFUzOEJuajFiQnY0U1Nlbmc6MjA1cERCeUdURTY5TnBicm83ekNzUSJ9 If you're running in Docker, copy the enrollment token and run: `docker run -e "ENROLLMENT_TOKEN=<token>" docker.elastic.co/elasticsearch/elasticsearch:8.0.1` 翻译: 配置其他节点以加入此群集: •复制以下注册令牌并使用“bin/elasticsearch --enrollment-token <token>”启动新的Elasticsearch节点(在接下来的30分钟内有效) docker的话: docker run -e "ENROLLMENT_TOKEN=<token>" docker.elastic.co/elasticsearch/elasticsearch:8.0.1 PS:如果token过期 [esuser@node1 bin]$ ./elasticsearch-create-enrollment-token -s node
查看
1. jps查看
如果安装了jps,可以直接使用jps查看
2. 进程查看
也可以查看进程,验证ES是否启动成功
bigdata@redis01:/usr/local/es/bin$ ps -ef|grep elasticsearch # 或者 bigdata@redis01:/usr/local/es/bin$ ps aux|grep elasticsearch
3. 使用curl查看
使用curl查看,报错
bigdata@redis01:~$ curl http://localhost:9300 curl: (52) Empty reply from server
解决:8.0版本默认开启安全配置,找到config目录下的
elasticsearch.yml
文件,修改配置:# Enable security features 将true改为false xpack.security.enabled: false
再次启动查看
# 加上-d 后台启动 bigdata@redis01:/usr/local/es/bin$ ./elasticsearch -d # 使用curl查看 bigdata@redis01:~$ curl 127.0.0.1:9200
在浏览器中访问
关闭
- 界面启动,使用
Ctrl+C
停止
- 后台启动,使用kill命令停止,进程号就是上面查询到
# 这几种都可以查询到进程号 bigdata@redis01:/usr/local/es/bin$ ps -ef|grep elasticsearch bigdata@redis01:/usr/local/es/bin$ ps aux|grep elasticsearch bigdata@redis01:/usr/local/es/bin$ jps # 关闭进程 bigdata@redis01:/usr/local/es/bin$ kill -9 64091