centos 上如何安装 elasticsearch
elasticsearch 是一款基于 java 开发的开源搜索引擎,因此需要安装 java 运行环境才能正常运行。
具体来说,elasticsearch 是基于 apache lucene 构建的分布式搜索引擎,它使用 java 实现了底层的数据存储、索引和搜索等核心功能,提供了强大的全文搜索和实时数据分析能力。因此,要在服务器上运行 elasticsearch,必须先安装 java 运行环境。
需要注意的是,不同版本的 elasticsearch 对 java 的要求可能不同,因此在安装 elasticsearch 之前,应该先查看 elasticsearch 的官方文档,了解所需的 java 版本和配置要求。同时,建议使用 oracle jdk 或 openjdk 等官方提供的 java 实现,以确保 elasticsearch 的稳定性和性能。
前期准备
1. 安装java:
elasticsearch需要java 8或更高版本。我们可以使用以下命令安装java 8:
$ sudo yum install java-1.8.0-openjdk -y
2. 配置java环境变量:
我们需要在系统环境变量中配置java路径,以便 elasticsearch 能够找到java。在 /etc/profile 文件中添加以下内容:
export java_home=/usr/lib/jvm/java-1.8.0-openjdk
export path=$path:$java_home/bin
3. 配置内核参数:
在centos上,elasticsearch需要一些内核参数的调整以实现最佳性能。可以通过编辑 /etc/sysctl.conf 文件来配置内核参数:
$ sudo vim /etc/sysctl.conf
添加以下内容:
vm.max_map_count=262144
fs.file-max=65536
然后保存文件并执行以下命令以使更改生效:
$ sudo sysctl -p
4. 验证java和内核参数的配置:
我们可以使用以下命令验证java是否已正确安装:
$ java -version
如果返回java版本,则java已成功安装。
我们可以使用以下命令验证内核参数是否已正确配置:
$ sudo sysctl -a | grep vm.max_map_count
$ sudo sysctl -a | grep fs.file-max
如果返回与我们在 /etc/sysctl.conf 文件中设置的值相同的值,则内核参数已成功配置。
这些步骤将确保 elasticsearch 在 centos 上正常运行并实现最佳性能。
安装 elasticsearch
1. 添加elasticsearch仓库:
使用以下命令下载并安装elasticsearch的公共密钥:
$ sudo rpm --import https://artifacts.elastic.co/gpg-key-elasticsearch
然后使用以下命令添加elasticsearch仓库:
$ sudo vim /etc/yum.repos.d/elasticsearch.repo
在文件中添加以下内容:
[elasticsearch-7.x]
name=elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/gpg-key-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
2. 安装elasticsearch:
使用以下命令安装elasticsearch:
$ sudo yum install elasticsearch -y
3. 编辑elasticsearch配置文件:
编辑 /etc/elasticsearch/elasticsearch.yml 文件,设置以下参数:
cluster.name:
node.name:
network.host:
其中,
为我们的集群名称,
为我们的节点名称,
为ag捕鱼王app官网的服务器ip地址。
4. 启动elasticsearch服务并启用开机启动:
使用以下命令启动elasticsearch服务:
$ sudo systemctl enable elasticsearch
$ sudo systemctl start elasticsearch
5. 验证elasticsearch是否已正确安装:
我们可以使用以下命令验证elasticsearch是否已正确安装:
$ curl -x get "http://localhost:9200/"
如果返回以下类似的输出,则elasticsearch已成功安装:
{
"name" : "your_node_name",
"cluster_name" : "your_cluster_name",
"cluster_uuid" : "sdfslc9xqtydyp_kbz50ta",
"version" : {
"number" : "7.11.2",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "3e5a16cfec50876d20ea77b075070932c6464c7d",
"build_date" : "2021-03-06t05:54:38.141101z",
"build_snapshot" : false,
"lucene_version" : "8.8.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "you know, for search"
}
启动 elasticsearch 错误
安装完成,在启动 elasticsearch 时我们可能会遇到报错 job for elasticsearch.service failed because a fatal signal was delivered to the control process
这个错误可能是因为 elasticsearch 在启动时占用了太多的内存,导致 linux 系统向 elasticsearch 进程发送了一个致命信号,使其停止运行。
我们可以尝试通过以下方式来解决这个问题:
1. 分配更多内存给 elasticsearch
可以尝试将 elasticsearch jvm 堆内存限制增加到一个更高的值,以便 elasticsearch 可以使用更多的内存。可以编辑 elasticsearch 的配置文件 /etc/elasticsearch/jvm.options ,找到以下两个参数:
-xms1g
-xmx1g
将其改为较大的值,例如:
-xms4g
-xmx4g
这将把 elasticsearch 的最小和最大堆内存限制都设置为 4gb。修改后需要重启 elasticsearch。
2. 降低 elasticsearch 的资源使用
如果我们的系统资源有限,或者我们无法为 elasticsearch 分配更多的内存,则可以尝试通过以下方法来减少 elasticsearch 对系统资源的使用:
- 禁用未使用的插件
- 压缩和归档旧的 elasticsearch 日志文件
- 删除旧的 elasticsearch 索引
- 调整索引设置,以便 elasticsearch 使用较少的内存和磁盘空间
3. 检查系统资源使用情况
可以使用 top
或 htop
命令查看系统资源的使用情况,以确定是否存在任何资源瓶颈。
如果以上方法仍然不能解决问题,请检查 elasticsearch 日志文件中的其他错误信息,从而获取更多有价值的内容。
转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处
本文地址:
相关文章
解决 linux bash 中的 nodemon 命令未找到错误
发布时间:2024/03/14 浏览次数:223 分类:操作系统
-
本文介绍如何解决 linux bash 中的 nodemon command not found 错误。
解决 linux bash 中的 make command not found 错误
发布时间:2024/03/14 浏览次数:246 分类:操作系统
-
本文介绍如何解决 linux bash 中的 make command not found 错误。
解决 linux bash 中 syntax error near unexpected token newline 错误
发布时间:2024/03/14 浏览次数:408 分类:操作系统
-
本文介绍如何解决 linux bash 中 syntax error near unexpected token newline 错误。
使用 powershell 将文件从 windows 复制到 linux
发布时间:2024/02/08 浏览次数:571 分类:编程语言
-
本教程将教你使用 powershell 将文件从 windows 复制到 linux。
等效于 linux ls 的 powershell 命令
发布时间:2024/02/07 浏览次数:206 分类:编程语言
-
本教程将为 linux ls 命令介绍不同的 powershell 等效命令。