1. 安装

1.1:下载安装包

  1. wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.0-linux-x86_64.tar.gz

1.2:解压安装包

  1. #解压到自定义目录
  2. tar -zxvf elasticsearch-7.4.0-linux-x86_64.tar.gz -C /usr/local

image.png
Elasticsearch 7.x 目录结构如下:

  • bin :脚本文件,包括 ES 启动 & 安装插件等等
  • config : elasticsearch.yml(ES 配置文件)、jvm.options(JVM 配置文件)、日志配置文件等等
  • JDK : 内置的 JDK,JAVA_VERSION=”13”
  • lib : 类库
  • logs : 日志文件
  • modules : ES 所有模块,包括 X-pack 等
  • plugins : ES 已经安装的插件。默认没有插件

1.3:创建数据存储目录与日志存储目录

  1. # 创建数据存储目录
  2. mkdir -p /usr/local/elasticsearch-7.4.0/data
  3. # 创建日志存储目录
  4. mkdir -p /usr/local/elasticsearch-7.4.0/logs

1.4:修改配置

进入到es安装目录下的config文件夹中,修改elasticsearch.yml 文件

  1. #配置es的集群名称,同一个集群中的多个节点使用相同的标识(单机版可不配置)
  2. #如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
  3. cluster.name: my-es
  4. #节点名称
  5. node.name: node-1
  6. #初始化,master节点名
  7. cluster.initial_master_nodes: node-1
  8. #数据存储路径
  9. path.data: /usr/local/elasticsearch-7.4.0/data
  10. #日志存储路径
  11. path.logs: /usr/local/elasticsearch-7.4.0/logs
  12. #节点所绑定的IP地址,并且该节点会被通知到集群中的其他节点
  13. #通过指定相同网段的其他节点会加入该集群中 0.0.0.0任意IP都可以访问elasticsearch
  14. network.host: 0.0.0.0
  15. #对外提供服务的http端口,默认为9200
  16. http.port: 9200
  17. #设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
  18. discovery.seed_hosts: ["127.0.0.1:9200"]
  19. #ES默认开启了内存地址锁定,为了避免内存交换提高性能。但是Centos6不支持SecComp功能,启动会报错,所以需要将其设置为false
  20. bootstrap.memory_lock: false
  21. # 是否支持跨域
  22. http.cors.enabled: true
  23. # *表示支持所有域名
  24. http.cors.allow-origin: "*"

修改启动内存(可选配置)
切换到 config/
打开 vim jvm.options
image.png

2.启动与关闭

2.1 启动

启动要切换用户,root用户不行,没有用户要先创建用户再切换用户启动
切换到 elasticsearch-7.4.0/bin/ 目录下

  1. #-d参数表示以后台进程启动,默认情况下会在控制台输出日志
  2. ./elasticsearch -d

2.2 关闭

  1. # 查找ES进程
  2. ps -ef | grep elastic
  3. #杀掉ES进程
  4. kill -9 xxx(进程号)

2.3 验证是否成功

  1. 除了查看进程外还可以在浏览器输入 IP:9210
  2. 可以看到返回了一个JSON信息

image.png

3.开机启动设置

3.1 设置开机启动脚本

在/etc/init.d目录下新建elastisearch启动脚本文件

  1. vim /etc/init.d/elasticsearch

脚本加入如下内容

  1. #!/bin/bash
  2. #chkconfig: 2345 80 90
  3. #description: elasticsearch
  4. #processname: elasticsearch-7.4.0
  5. #服务名称
  6. export SERVER_NAME=elasticsearch
  7. #ES启动用户名
  8. export ES_USER=elastic
  9. #ES目录
  10. export ES_HOME=/zlb/elasticsearch
  11. function help() {
  12. echo "$0 |start|stop|restart|status|"
  13. }
  14. #查看服务状态
  15. function status(){
  16. count=`ps -ef | grep "$SERVER_NAME" | grep -v "$0\|grep\|su $ES_USER" | awk '{print $2}' | wc -l`
  17. if [ 0 == $count ];then
  18. echo "$SERVER_NAME not exists"
  19. else
  20. ps -ef | grep "$SERVER_NAME" | grep -v "$0\|grep\|su $ES_USER"
  21. fi
  22. }
  23. #启动服务
  24. function start(){
  25. #检查服务是否已经存在
  26. count=`ps -ef | grep "$SERVER_NAME" | grep -v "$0\|grep\|su $ES_USER" | awk '{print $2}' | wc -l`
  27. if [ $count \> 0 ];then
  28. echo "$SERVER_NAME exists run restart"
  29. stop;
  30. fi;
  31. cd "$ES_HOME"
  32. echo "ES HOME IN $ES_HOME"
  33. echo "$SERVER_NAME start begin ........."
  34. su - $ES_USER -c "$ES_HOME/bin/elasticsearch -d"
  35. sleep 1
  36. echo "$SERVER_NAME start end ......... home in $ES_HOME"
  37. }
  38. # 停止服务
  39. function stop(){
  40. count=`ps -ef | grep "$SERVER_NAME" | grep -v "$0\|grep\|su $ES_USER" | awk '{print $2}' | wc -l`
  41. if [ 0 == $count ];then
  42. echo "$SERVER_NAME not exists"
  43. else
  44. echo "$SERVER_NAME stop begin ........."
  45. threads=$(ps -ef | grep "$SERVER_NAME" | grep -v "$0\|grep\|su $ES_USER" | awk '{print $2 }')
  46. for id in $threads
  47. do
  48. kill -9 $id
  49. echo "kill success $id "
  50. done
  51. echo "$SERVER_NAME stop success ........."
  52. fi
  53. }
  54. # 重启服务
  55. function restart(){
  56. stop;
  57. sleep 1;
  58. start;
  59. }
  60. if [ "$1" == "" ]; then
  61. help
  62. elif [ "$1" == "stop" ];then
  63. stop
  64. elif [ "$1" == "start" ];then
  65. start
  66. elif [ "$1" == "restart" ];then
  67. restart
  68. elif [ "$1" == "status" ];then
  69. status
  70. else
  71. help
  72. fi

3.2 修改脚本权限

  1. # 为脚本赋可执行权限
  2. chmod 777 /etc/init.d/elasticsearch

3.3 添加到启动服务

  1. chkconfig --add elasticsearch

3.4 服务启动方式配置

  1. chkconfig --list //显示服务列表
  2. chkconfig elasticsearch on // 设置开机启动
  3. chkconfig elasticsearch off // 关闭开机启动

3.5 启动或关闭服务命令

  1. service elasticsearch status // 查看服务状态
  2. service elasticsearch start // 启动服务
  3. service elasticsearch stop // 关闭服务
  4. service elasticsearch restart // 重启服务