Centos7 安装elasticsearch 7.9.1 踩坑过程及解决办法

5个最常见的问题:

[1]: initial heap size [2147483648] not equal to maximum heap size [4294967296]; this can cause resize pauses
[2]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[4]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts,discovery.seed_providers, cluster.initial_master_nodes] must be configured

以及以root身份允许es会报:

org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root 

 

我的虚拟机地址为192.168.100.83

官网下载最新版本:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.1-linux-x86_64.tar.gz  

解压到目录 /usr/local/ 

修改配置文件:/usr/local/elasticsearch-7.9.1/config/jvm.options 这里修改jvm占用内存 

-Xms4g
-Xmx4g

注意这两个参数要相同才行(对应:initial heap size [2147483648] not equal to maximum heap size [4294967296]; this can cause resize pauses


修改配置文件: /usr/local/elasticsearch-7.9.1/config/elasticsearch.yml 修改es相关配置

cluster.name: my-es  # 集群名 随意指定 同个集群的不同节点需要使用相同集群名 不同节点名

node.name: node-83  # 节点名

#path.data: /data/tip/es/data #es数据存放路径 
#path.logs: /data/tip/es/logs #es日志存放路径

network.host: 192.168.100.83 #es使用的IP地址 默认本机

#http.port: 9200 #es使用的端口号 默认9200

cluster.initial_master_nodes: ["node-83"] #值为上面配置的node.name  配置文件中的discover项里的几个配置需要至少配置一个 如果多个节点 则以数组形式将各个节点名写入即可

对应问题4: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts,discovery.seed_providers, cluster.initial_master_nodes] must be configured

# 设置是否可以通过正则或者_all删除或者关闭索引库,默认true表示必须需要显式指定索引库名称
# 生产环境建议设置为true,删除索引库的时候必须显式指定,否则可能会误删索引库中的索引库。

#action.destructive_requires_name: true

 

es不允许以root用户启动 需要使用其他用户才行

adduser es

passwd es #为新用户设置密码

es需要增大系统默认的文件打开数和用户可支配内存数

vim /etc/security/limits.conf   

文件末尾追加  (es为启动elasticsearch的用户名)

对应问题2 max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]

es soft nofile 65535
es hard nofile 65537

 

vim /etc/sysctl.conf

文件末尾追加

vm.max_map_count=655360

对应问题3 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

 

su es #切换至新用户

在elasticsearch目录下执行:

./bin/elasticsearch -d

查看日志:

tailf ./logs/{cluster.name}.log 看到started字样 说明启动成功

访问 192.168.100.83:9200 

 

安装成功

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 要在CentOS 7上安装Elasticsearch,您可以按照以下步骤进行操作: 1. 首先,确保您的系统已更新并安装了Java 8或更高版本。您可以使用以下命令来更新软件包并安装Java: ``` sudo yum update sudo yum install java-1.8.0-openjdk ``` 2. 接下来,您需要添加Elasticsearch GPG密钥和存储库。使用以下命令导入GPG密钥: ``` sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch ``` 3. 然后,您需要为Elasticsearch创建一个Yum存储库文件。创建一个名为“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 ``` 4. 保存并退出文件,然后运行以下命令以更新存储库: ``` sudo yum makecache ``` 5. 最后,安装Elasticsearch: ``` sudo yum install elasticsearch ``` 6. 安装完成后,您可以使用以下命令启动Elasticsearch服务: ``` sudo systemctl start elasticsearch ``` 7. 您还可以使用以下命令检查服务状态: ``` sudo systemctl status elasticsearch ``` 现在,您已经成功在CentOS 7上安装并启动了Elasticsearch。 ### 回答2: Elasticsearch是一种流行的搜索引擎,可以在大型数据集的基础上提供带有分析功能的全文搜索。在本文中,我们将讨论如何在CentOS 7服务器上安装Elasticsearch。 步骤1:安装Java 要运行Elasticsearch,您需要JDK。按照以下步骤安装Java: 首先,更新存储库: sudo yum update -y 然后,安装Java: sudo yum install java-1.8.0-openjdk-devel 安装完成后,可以验证Java是否安装成功: java -version 步骤2:添加Elasticsearch存储库 为了安装最新版本的Elasticsearch,您需要添加官方Elasticsearch仓库。在CentOS 7上执行以下命令: wget https://artifacts.elastic.co/GPG-KEY-elasticsearch sudo rpm --import GPG-KEY-elasticsearch sudo vi /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 保存并关闭文件。 步骤3:安装Elasticsearch 现在已将Elasticsearch仓库添加到系统中。使用以下命令安装Elasticsearch: sudo yum install elasticsearch 安装完成后,启动Elasticsearch并将其设置为服务: sudo systemctl start elasticsearch sudo systemctl enable elasticsearch 通过以下URL检查Elasticsearch是否正在运行:http://localhost:9200/ 现在,您可以使用Elasticsearch进行全文搜索和分析。 总结 在本文中,我们已经讨论了如何在CentOS 7服务器上安装Elasticsearch。您首先需要安装Java,添加Elasticsearch存储库,然后安装Elasticsearch并将其设置为服务。安装完成后,您可以在服务器上使用Elasticsearch进行全文搜索和分析。 ### 回答3: CentOS7是一种比较流行的Linux操作系统,安装elasticsearch是将其变成一种强大的搜索引擎的必要步骤。以下是基本的步骤: 1. 在CentOS7中,安装Java环境。确保Java环境的版本为8。 sudo yum install java-1.8.0-openjdk-devel 2. 从Elasticsearch官网下载elasticsearch。 curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.0-x86_64.rpm 3. 使用以下命令安装elasticsearch。 sudo rpm -ivh elasticsearch-7.8.0-x86_64.rpm 4. 启动Elasticsearch服务 sudo systemctl start elasticsearch 5. 配置elasticsearch服务自动启动 sudo systemctl enable elasticsearch 6. 检查elasticsearch是否在运行中 curl -X GET "localhost:9200" 7. 配置防火墙允许外部访问 sudo firewall-cmd --zone=public --add-port=9200/tcp --permanent sudo firewall-cmd --reload 8. 通过浏览器访问elasticsearch 在浏览器中输入:http://localhost:9200,如果返回类似于以下内容,则说明elasticsearch安装成功。 { "name" : "your_hostname", "cluster_name" : "elasticsearch", "cluster_uuid" : "sample_uuid", "version" : { "number" : "7.8.0", "build_flavor" : "default", "build_type" : "rpm", "build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65", "build_date" : "2020-06-14T19:35:50.234439Z", "build_snapshot" : false, "lucene_version" : "8.5.1", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "You Know, for Search" } 通过以上步骤,您可以成功安装elasticsearch并开始使用该搜索引擎提供的强大功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值