Ubuntu服务器如何安装配置Elasticsearch?elasticsearch安装配置教程

在Ubuntu服务器上安装Elasticsearch,核心在于配置Java环境、下载官方包、修改内存限制并开放端口,建议优先使用官方APT源以确保版本兼容性与安全性。

Elasticsearch作为分布式搜索和分析引擎,近年来在日志处理、全文检索及数据分析领域占据了重要地位,许多开发者在初次接触时,往往被其复杂的配置劝退,只要理清依赖关系和基础配置逻辑,整个过程并不繁琐,本文将结合Ubuntu系统的特性,提供一套经过验证的实操方案,帮助你在生产环境中快速搭建稳定可靠的ES集群节点。

绿联云DH2600/DX4600使用Docker安装Ubuntu教程-折腾篇五
加载中
绿联云DH2600/DX4600使用Docker安装Ubuntu教程-折腾篇五

Ubuntu服务器安装Elasticsearch前的环境准备

在动手安装之前,必须明确Elasticsearch对运行环境的硬性要求,它基于Java开发,且对系统资源有一定消耗,忽略这些前置条件,往往会导致服务启动失败或运行不稳定。

Java运行环境的安装与验证

Elasticsearch内置了JDK,但在某些特定场景下,或者为了便于统一管理,手动安装Java仍是常见做法,业内专家指出,使用OpenJDK 11或17是目前的最佳实践,二者均能完美支持最新版本的ES。

更新系统软件包列表,确保获取最新的软件索引。

sudo apt update
sudo apt upgrade

安装OpenJDK,以Ubuntu 22.04或24.04为例,推荐安装OpenJDK 17。

sudo apt install openjdk-17-jdk

安装完成后,通过以下命令验证Java版本,确保版本符合ES要求(通常要求Java 11+)。

java -version

如果输出显示版本为17.x.x,则环境准备就绪,若系统默认安装了旧版本,可通过update-alternatives命令切换默认版本。

系统内核参数优化

Elasticsearch重度依赖文件系统缓存,因此需要调整Linux内核参数以支持更大的文件描述符数量和虚拟内存映射,这是许多新手容易忽略的关键步骤,直接导致ES启动时报错“max file descriptors”。

编辑/etc/sysctl.conf文件,添加或修改以下配置:

fs.file-max=65535
vm.max_map_count=262144

保存后,执行命令使配置立即生效:

Ubuntu服务器如何安装配置Elasticsearch?elasticsearch安装配置教程

sudo sysctl -p

需调整用户级别的文件限制,编辑/etc/security/limits.conf,添加以下内容:

 soft nofile 65535
 hard nofile 65535
 soft nproc 4096
 hard nproc 4096

这些配置确保ES进程能够打开足够的文件句柄,避免在高并发查询时出现资源瓶颈。

Ubuntu服务器安装Elasticsearch的具体步骤

目前主流的安装方式包括APT源安装、Docker容器化部署以及二进制包安装,对于追求稳定性和长期维护的用户,使用官方APT源是首选方案,这种方式能自动处理依赖关系,并方便后续通过包管理器进行升级。

导入官方GPG密钥与添加源

为了验证下载包的完整性,首先需要导入Elasticsearch官方的GPG密钥。

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg

添加Elasticsearch的APT源,这一步决定了你安装的是哪个版本,建议根据业务需求选择稳定版本(Stable)。

echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list

注意:若需安装Elasticsearch 7.x,请将上述命令中的x替换为x,不同版本间的配置语法存在差异,务必保持一致。

安装与启动服务

更新包索引后,即可执行安装命令。

sudo apt update
sudo apt install elasticsearch

安装完成后,ES服务并未自动启动,使用systemctl命令启动并设置开机自启。

sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch

可以通过curl命令检查服务状态,若返回JSON格式的系统信息,说明安装成功。

curl -X GET "localhost:9200/"

核心配置文件修改与安全加固

默认配置仅适用于测试环境,在生产环境中,必须对elasticsearch.yml进行针对性调整,否则将面临内存溢出或安全泄露风险。

内存限制与堆大小调整

Ubuntu服务器如何安装配置Elasticsearch?elasticsearch安装配置教程

Elasticsearch的堆内存(Heap Size)直接影响其性能,官方建议将堆内存设置为物理内存的50%,但不超过31GB,这是因为JVM在超过31GB时,指针压缩失效,反而降低性能。

编辑/etc/elasticsearch/jvm.options文件,找到-Xms-Xmx参数。

-Xms4g
-Xmx4g

假设你的服务器拥有8GB内存,将两者均设置为4GB是合理的选择,修改后,重启ES服务使配置生效。

网络绑定与跨域设置

默认情况下,ES仅绑定localhost,外部无法访问,若需远程连接,需修改/etc/elasticsearch/elasticsearch.yml

network.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: ""

network.host设置为0.0.0允许所有IP访问。http.cors.enabled开启跨域支持,允许前端浏览器直接发起请求。http.cors.allow-origin设置为表示允许所有来源,生产环境中建议替换为具体的域名,以增强安全性。

身份认证与安全基础

随着网络安全意识提升,无密码访问已成为重大隐患,Elasticsearch 7.0+引入了X-Pack安全功能,虽然完整的安全套件需要商业许可,但基础的安全功能如SSL/TLS加密和内置用户管理,在基础版中可用。

启用安全功能需修改配置:

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

重启服务后,系统会提示设置内置用户密码,包括elastic超级管理员、kibana_systemlogstash_system等,务必妥善保管elastic用户的密码,它是后续所有操作的管理入口。

Ubuntu服务器安装Elasticsearch常见问题排查

在实际部署过程中,可能会遇到各种异常情况,以下是几种高频问题的解决方案。

服务启动失败,日志显示权限错误

ES严禁使用root用户运行,若手动启动报错,请检查文件所有者。

sudo chown -R elasticsearch:elasticsearch /var/lib/elasticsearch
sudo chown -R elasticsearch:elasticsearch /var/log/elasticsearch

Ubuntu服务器如何安装配置Elasticsearch?elasticsearch安装配置教程

确保数据目录和日志目录的所有者为elasticsearch用户。

内存溢出(OOM)导致服务崩溃

若服务器内存较小,ES可能因堆内存不足被系统杀死,此时需检查/var/log/elasticsearch/下的日志文件,寻找OutOfMemoryError关键字,解决方法是进一步减小jvm.options中的堆大小,或增加服务器物理内存。

外部无法连接9200端口

若配置无误但仍无法访问,需检查Ubuntu防火墙。

sudo ufw allow 9200/tcp
sudo ufw reload

确保防火墙放行了9200端口,若使用云服务商(如阿里云腾讯云),还需在安全组规则中添加入站规则。

Q&A:Ubuntu服务器安装Elasticsearch常见疑问

Ubuntu服务器安装Elasticsearch时,如何选择版本?

版本选择应基于业务需求与兼容性,若使用Kibana或Logstash,建议保持版本一致以避免兼容性问题,对于新部署,推荐选择最新的稳定版(如8.x),因其包含最新的安全补丁和性能优化,若现有应用依赖旧版API,则需降级至7.x或6.x,但需注意旧版本已停止官方安全更新。

Ubuntu服务器安装Elasticsearch后,如何监控运行状态?

可通过CURL命令查看集群健康状态,执行curl -X GET "localhost:9200/_cluster/health?pretty",若返回"status" : "green",表示集群健康,所有主分片和副本分片均正常,若为yellow,通常意味着副本分片未分配,可能是单节点集群的正常现象,若为red,则存在数据丢失风险,需立即检查日志,可安装Kibana作为可视化监控面板,直观展示节点负载、索引速率及查询性能。

Ubuntu服务器安装Elasticsearch是否必须购买商业许可?

Elasticsearch采用双许可模式,基础功能如搜索、聚合、索引创建等,在Basic许可下免费使用,无需付费,只有高级功能如基于角色的访问控制(RBAC)、细粒度字段级权限、机器学习及SQL查询等,才需要商业许可,对于大多数中小型企业的基础搜索和日志分析场景,免费版本已完全够用。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/409499.html

(0)
WordPress特色图片不显示怎么办?wp文章图片不显示怎么解决
上一篇 2026年6月22日 03:58
搜狗石破算法上线为何打击采集?搜狗搜索算法更新对SEO有什么影响
下一篇 2026年6月22日 04:01

相关推荐

  • 网站打开慢是服务器带宽不够吗?如何提升网站加载速度

    网站打开速度慢是一个多因素综合作用的结果,服务器带宽不足只是其中之一,甚至往往不是最主要的原因,根据长期的技术运维经验与数据分析,服务器资源瓶颈(如CPU、内存)、网站程序代码效率低下、数据库查询缓慢以及前端页面资源未优化,通常是导致网站加载迟滞的“四大元凶”,单纯增加带宽若未触及这些核心痛点,往往无法显著改善……

    2026年3月4日
    17200
  • 宝塔面板开启SSL后无法访问如何解决?ssl证书配置失败原因

    宝塔面板开启SSL后无法访问,核心原因通常是端口未放行、证书配置错误或浏览器缓存冲突,请优先检查防火墙设置并强制刷新页面,当你在宝塔面板中点击“启用SSL”后,网站从HTTP跳转到HTTPS却显示“无法连接”或“此网站无法提供安全连接”时,焦虑感往往比技术排查更让人头疼,这种情况在中小站长群体中极为常见,尤其是……

    2026年6月26日
    2100
  • html怎么设置字体颜色?html css修改字体颜色

    `,响应式设计与暗黑模式适配随着移动端流量占比持续攀升,静态的颜色设置已无法满足现代需求,用户可能在明亮的阳光下查看网页,也可能在深夜开启暗黑模式,媒体查询的应用利用CSS媒体查询,我们可以根据设备特性动态调整颜色,@media (prefers-color-scheme: dark) { body { bac……

    2026年6月4日
    4000
  • 服务器带宽费用怎么算最便宜?带宽收费标准价格表

    想要实现服务器带宽费用最低化,核心结论在于:摒弃“固定带宽包年”的传统思维,转而采用“按量计费+带宽峰值计费混合模式”,并配合CDN流量分流与智能压缩技术,可节省30%至60%的运营成本, 降低带宽成本并非单纯寻找低价服务商,而是通过精细化的流量管理架构,将无效流量拦截在服务器之外,将有效流量以最经济的计费方式……

    2026年3月3日
    14600
  • 广州ECS云服务器500错误代码怎么解决?原因分析与修复方法

    广州ECS云服务器出现500错误代码,本质上是服务器端内部故障的综合体现,意味着Web服务器遇到了意外情况,无法完成用户的请求处理,解决这一问题的核心逻辑在于:快速定位错误源头、精准分析日志信息、采取针对性的修复措施,并建立长效的监控预防机制, 这不仅要求运维人员具备扎实的技术功底,更需要依托高质量的云服务基础……

    2026年3月31日
    10000
  • html怎么换图片?html替换图片代码怎么写

    在HTML中更换图片,最直接的方法是修改<img>标签的src属性值为新图片的路径,若需动态切换则需配合JavaScript操作DOM元素,网页开发中,图片展示是构建视觉体验的核心环节,无论是静态页面的更新,还是动态交互中的素材替换,掌握图片替换的逻辑都是前端开发者的基本功,很多时候,初学者容易混淆……

    2026年6月11日
    4500
  • 广州FPGA服务器访问错误原因,广州FPGA服务器为什么无法访问

    广州FPGA服务器访问错误的核心原因通常归结为硬件兼容性故障、驱动程序冲突、散热系统失效以及网络配置异常这四大维度,其中硬件层面的时序违例与电源稳定性问题是导致服务器宕机或无法访问的最常见诱因,解决此类问题需遵循从物理层到应用层的排查逻辑,结合专业的硬件诊断工具与环境监控手段,快速定位故障点并进行针对性修复……

    2026年3月29日
    12500
  • 香港服务器走什么线路快?香港服务器用什么线路速度最快?

    香港服务器访问速度最快的线路,首推CN2 GIA(全球互联网接入)线路,其次是CN2 GT线路,再次是优化后的BGP多线线路,对于追求极致速度和稳定性的企业级用户而言,CN2 GIA线路是目前连接中国大陆与香港之间的“黄金通道”,其低延迟、高稳定性的特性,能够完美解决跨境业务访问卡顿、丢包等痛点, 为什么线路决……

    2026年3月4日
    10600
  • Ubuntu如何安装TeamViewer Ubuntu安装TeamViewer教程

    在Ubuntu上安装TeamViewer最直接的方式是通过官方提供的.deb包进行本地安装,或者使用终端命令直接获取,这种方式能确保软件与系统内核完美兼容,且无需复杂的依赖配置即可实现远程桌面控制,对于许多Linux用户而言,远程管理服务器或协助亲友解决电脑问题已成为日常刚需,Ubuntu作为最受欢迎的桌面Li……

    2026年6月20日
    3110
  • 上海服务器租用包月包年报价为什么不同?,包月包年哪个划算

    上海服务器租用包月与包年报价差异的核心在于成本分摊周期和服务承诺,包年通常可获得更大折扣,但实际选择需结合业务稳定性和资金规划,上海服务器租用包月报价和包年价格差在哪?成本结构决定基础定价服务器租用的报价由机房资源、带宽、IP地址及运维服务构成,包月方案中,服务商需要承担短期资源空置的风险,比如机柜预留、带宽闲……

    2026年8月11日
    500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注