文章目录前言一、下载elasticsearch二、将tar包放到服务器三、解压tar包四、更改配置文件五、添加启动用户六、用elasticserch用户启动6.1 报错6.2 报错6.3 解决问题16.4 解决问题26.5 再次用elasticserch用户启动6.6 windows浏览器打开七、设置开机自动启动7.1 创建启动脚本7.2 在脚本中添加以下内容7.3 赋予脚本执行权限7.4 创建 Systemd 服务单元文件7.5 重新加载 Systemd 配置7.6 启动服务并使其在开机时自启7.7 检查服务状态总结前言在Linux系统中安装elasticsearch。一、下载elasticsearch下载地址https://www.elastic.co/cn/downloads/past-releases#elasticsearch二、将tar包放到服务器三、解压tar包四、更改配置文件vim/opt/elasticsearch/elasticsearch-8.15.1/config/elasticsearch.yml更改为cluster.name: bztc-elasticsearch node.name: bztc-es-node-1 path.data: /opt/elasticsearch/data path.logs: /opt/elasticsearch/logs network.host:0.0.0.0 http.port:9200cluster.initial_master_nodes:[bztc-es-node-1]五、添加启动用户此时启动es会报错因为不能用root用户启动。添加一个elasticserch用户#添加用户sudouseraddelasticsearch#设置用户elasticsearch的密码sudopasswdelasticsearch#将文件夹赋权给elasticsearchsudochown-Relasticsearch /opt/elasticsearch六、用elasticserch用户启动cd/opt/elasticsearch/elasticsearch-8.15.1/bin ./elasticsearch6.1 报错[elasticsearches9 bin]$ ./elasticsearch warning: ignoringJAVA_HOME/opt/jdk-21.0.9;using bundled JDK ERROR: Elasticsearch diedwhilestarting up, withexitcode137调整 JVM 堆内存大小Elasticsearch 默认堆内存为 1GB但可能会根据系统内存自动调整。建议手动设置# 编辑 JVM 配置文件vi/opt/elasticsearch/config/jvm.options# 添加或修改以下参数根据实际内存调整# 设置初始堆内存-Xms512m# 设置最大堆内存-Xmx512m内存配置建议系统总内存 2GB设置 -Xms512m -Xmx512m系统总内存 4GB设置 -Xms1g -Xmx1g系统总内存 8GB设置 -Xms2g -Xmx2g注意堆内存不要超过系统内存的 50%留一半给操作系统和文件系统缓存6.2 报错[2024-09-23T17:15:13,906][ERROR][o.e.b.Elasticsearch][bztc-es-node-1]nodevalidation exception[2]bootstrap checks failed. You must address the points describedinthe following[2]lines before starting Elasticsearch. Formoreinformation see[https://www.elastic.co/guide/en/elasticsearch/reference/8.15/bootstrap-checks.html]bootstrap check failure[1]of[2]: max virtual memory areas vm.max_map_count[65530]is too low, increase to at least[262144];formoreinformation see[https://www.elastic.co/guide/en/elasticsearch/reference/8.15/_maximum_map_count_check.html]bootstrap check failure[2]of[2]: Transport SSL must be enabledifsecurity is enabled. Pleaseset[xpack.security.transport.ssl.enabled]to[true]or disable security by setting[xpack.security.enabled]to[false];formoreinformation see[https://www.elastic.co/guide/en/elasticsearch/reference/8.15/bootstrap-checks-xpack.html#bootstrap-checks-tls]6.3 解决问题1max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]sudovim/etc/sysctl.conf#在sysctl.conf末尾添加vm.max_map_count262144#保存并退出文件然后运行以下命令使更改生效sudosysctl-p6.4 解决问题2Transport SSL must be enabled if security is enabled. Please set [xpack.security.transport.ssl.enabled] to [true] or disable security by setting [xpack.security.enabled] to [false]vim/opt/elasticsearch/elasticsearch-8.15.1/config/elasticsearch.yml#在末尾添加xpack.security.enabled: false#保存文件6.5 再次用elasticserch用户启动cd/opt/elasticsearch/elasticsearch-8.15.1/bin ./elasticsearch启动成功没有报错后打开新的命令窗口执行curllocalhost:9200执行完出现以下内容{name:bztc-es-node-1,cluster_name:bztc-elasticsearch,cluster_uuid:wecEbx33T5Sdv-UzTIpcNg,version:{number:8.15.1,build_flavor:default,build_type:tar,build_hash:253e8544a65ad44581194068936f2a5d57c2c051,build_date:2024-09-02T22:04:47.310170297Z,build_snapshot:false,lucene_version:9.11.1,minimum_wire_compatibility_version:7.17.0,minimum_index_compatibility_version:7.0.0},tagline:You Know, for Search}6.6 windows浏览器打开浏览器地址栏输入http://10.211.55.120:9200会出现如果服务器里curl localhost:9200能打印内容而浏览器不行则检查服务器防火墙是否关闭或者配置文件里的network.host是否配置的0.0.0.0七、设置开机自动启动7.1 创建启动脚本创建一个脚本文件。sudovim/opt/elasticsearch/start.sh7.2 在脚本中添加以下内容#!/bin/bashcd/opt/elasticsearch/elasticsearch-8.15.1/bin./elasticsearch7.3 赋予脚本执行权限sudochmodx /opt/elasticsearch/start.sh7.4 创建 Systemd 服务单元文件sudonano/etc/systemd/system/bztcES.service在bztcES.service添加以下内容[Unit]DescriptionElasticsearch ServiceAfternetwork.target[Service]TypesimpleUserelasticsearchExecStart/opt/elasticsearch/start.shRestarton-failureRestartSec60[Install]WantedBymulti-user.target7.5 重新加载 Systemd 配置sudosystemctl daemon-reload7.6 启动服务并使其在开机时自启sudosystemctl start bztcES.servicesudosystemctlenablebztcES.service7.7 检查服务状态sudosystemctl status bztcES.service总结在Linux系统中安装elasticsearch。