ElasticSearch在linux上安装部署_es在liunx服务器上安装_鱼香Ross的博客-程序员宅基地

技术标签: java  elasticsearch  linux  后端  搜索引擎  

一.安装准备工作

安装参考文档:

ELK官网:https://www.elastic.co/

ELK官网文档:https://www.elastic.co/guide/index.html

ELK中文手册:https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html

ELK中文社区:https://elasticsearch.cn/

ELK-API :https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/transport-client.html

(1)、下载安装包

访问elasticSearch官网地址 https://www.elastic.co/

下载指定版本的安装包:elasticsearch-6.1.1.tar.gz

(2)、规划安装目录

/export/servers/

(3)、上传安装包到指定目录

通过FTP工具上传安装包到指定目录

(4)、解压安装包

tar -zxvf elasticsearch-6.1.1.tar.gz -C /export/servers

(5)、重命名安装目录

mv elasticsearch-6.1.1 elasticsearch

(6)、修改配置文件

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

扩展:

YML文件格式是YAML (YAML Aint Markup Language)编写的文件格式,YAML是一种直观的能够被电脑识别的的数据数据序列化格式,并且容易被人类阅读,容易和脚本语言交互的。

它的基本语法规则如下。

§ 大小写敏感

§ 使用缩进表示层级关系

§ 缩进时不允许使用Tab键,只允许使用空格。

§ 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可

#表示注释,从这个字符一直到行尾,都会被解析器忽略

修改的主要内容:

#配置es的集群名称,默认是elasticsearch,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。

cluster.name: my-es

#节点名称

node.name: node-1

#设置索引数据的存储路径

path.data: /export/servers/data

#设置日志的存储路径

path.logs: /export/servers/logs

#设置当前的ip地址,通过指定相同网段的其他节点会加入该集群中

network.host: 192.168.216.121

#设置对外服务的http端口

http.port: 9200

#设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点

discovery.zen.ping.unicast.hosts: [“node-1”]

二.解决启动时报错

(1)、在root用户下启动时报错

因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户。

具体操作如下:

useradd es

passwd es

再输入两次密码(自定义)

mkdir -p /export/servers/data

mkdir -p /export/servers/logs

chown -R es:es /export/servers/elasticsearch

chown -R es:es/export/servers/data

chown -R es:es/export/servers/logs

然后使用es用户启动

切换es用户命令:su es

cd /export/servers/elasticsearch

启动集群命令:bin/elasticsearch

(2)、在es用户下启动时报错

原因:Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。

详见 :https://github.com/elastic/elasticsearch/issues/22899

解决方案:

在elasticsearch.yml中新增配置bootstrap.system_call_filter,设为false。

bootstrap.system_call_filter: false

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9UOIaaY7-1660618119178)(//img-blog.csdn.net/20180317135439383?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTYxNTQ5NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)]

(3)、在es用户下启动继续报错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8FMHydQe-1660618119181)(//img-blog.csdn.net/20180317135637687?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTYxNTQ5NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)]

第一个问题的原因:

原因:无法创建本地文件问题,用户最大可创建文件数太小

解决方案:切换到root用户,编辑limits.conf配置文件, 添加类似如下内容:

vi /etc/security/limits.conf

添加如下内容: 注意*不要去掉了

* soft nofile 65536

* hard nofile 131072

备注:* 代表Linux所有用户名称(比如 hadoop)

需要保存、退出、重新登录才可生效。

第二个错误的原因:

原因:无法创建本地线程问题,用户最大可创建线程数太小

解决方案:切换到root用户,进入limits.d目录下,修改90-nproc.conf 配置文件。

vi /etc/security/limits.d/90-nproc.conf

找到如下内容:

* soft nproc 1024

#修改为

* soft nproc 4096

第三个错误的原因:

原因:最大虚拟内存太小

每次启动机器都手动执行下。

root用户执行命令:

执行命令:sysctl -w vm.max_map_count=262144

查看修改结果命令:sysctl -a|grep vm.max_map_count 看是否已经修改

永久性修改策略:

echo “vm.max_map_count=262144” >> /etc/sysctl.conf

三.测试

切换到es用户执行:

看到这个界面证明已经成功了,可以用浏览器访问192.168.216.121:9200查看,会下载一个json文件打开如下:

z

至此Elasticsearch就安装完成了,当然这只是一台机器,如果有需要还可以搭成集群.

.

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_54853503/article/details/126361434

智能推荐

An internal error occurred during: "Launching 项目名 on MyEclipse Tomcat ". java.lang.NullPointerExcept-程序员宅基地

用myeclipse10打开和运行tomcat部署项目都出现这个问题,网上研究后发现问题解决方法为

青龙面板服务异常,请手动执行ql check检查服务状态_pm2 logs panel_JeffIsOk的博客-程序员宅基地

最近玩了个青龙面板,但是突然出现"服务异常,请手动执行ql check检查服务状态"看了网上很多方式。ql checkql update重新安装等等,都不行,很纳闷;于是去看日志发现是缺少了module依赖,Cannot find module '/home/deploy/node_modules/pm2/lib/ProcessContainerFork.js'因为pm2环境发生了变化,所以删掉它就可以了直接执行命令:rm -rf ~/.pm2搞定,成功进入界面_pm2 logs panel

陈怡暖:美元及股指走跌,金银受益小幅收涨-程序员宅基地

陈怡暖:美元及股指走跌,金银受益小幅收涨    陈怡暖:现任中瀚集团首席分析师,毕业于西南财经大学金融系,国外进修金融专业两年,五年从业经验,知名财经频道分析解说师,各大财经网站专业撰稿人,擅长中短线操作,致力于打造华中地区最诚信分析师,客户提供优质的服务,为每一位投资者提供最专业的贵金属走势分析及业务咨询。我们相互关心、相互信任、相互爱护、相互促进、共同学习、共同成长、实现共赢。百度陈怡

TFS2010团队协作环境部署(转载)-程序员宅基地

http://www.cnblogs.com/xupeng/archive/2011/05/03/DeploymentVSTS2010.html (非常详细) http://www.cnblogs.com/romance/archive/2011/07/07/2100233.html http://blog.csdn.net/wph_1129/article/details/5999016 ...

实验2-2-1 计算分段函数[1] (10 分)_Starbright.的博客-程序员宅基地

本题目要求计算下列分段函数f(x)的值:公式输入格式:输入在一行中给出实数x。输出格式:在一行中按“f(x) = result”的格式输出,其中x与result都保留一位小数。输入样例1:10结尾无空行输出样例1:f(10.0) = 0.1结尾无空行输入样例2:0输出样例2:f(0.0) = 0.0代码如下:#include<stdio.h>int main(void){ double x, y; scanf("%lf",&x);

贪心算法----正整数分解问题 和相同,乘积最大-程序员宅基地

转载自cxm_hy的博客,网址:http://www.cnblogs.com/cxmhy/p/4491009.html?utm_source=tuicool&utm_medium=referral一、问题描述设n是一个正整数。现在要求将n分解为若干个自然数之和,且使这些自然数的乘积最大。本文将这个大问题分解为两个小问题:(1)这些自然数是互不相同的(2)这些自然数可以是

随便推点

Python全栈(四)高级编程技巧之2.类与对象深度问题与解决技巧-程序员宅基地

类与对象深度问题与解决技巧主要包括六部分:如何派生内置不可变类型并修改其实例化行为;如何为创建大量实例节省内存,应用于游戏等;with语句用于上下文管理,contextlib简化上下文管理器;如何创建可管理的对象属性,是操作更简便同时保证安全性;在类中增加方法让类支持比较操作;通过弱引用在环状数据结构中管理内存。

flink_SQL 开发_flink定义字段别名-程序员宅基地

文章目录1.背景2. Flink SQL 常用算子2.1 SELECT2. WHERE3. DISTINCT4. GROUP BY5. UNION 和 UNION ALL6. JOIN7. Group Window1.背景2. Flink SQL 常用算子2.1 SELECTSELECT 用于从 DataSet/DataStream 中选择数据,用于筛选出某些列。示例:SELECT * FROM Table;// 取出表中的所有列 SELECT name,age FROM Table;_flink定义字段别名

Django框架之ORM基本实现原理_django的orm-程序员宅基地

Django的ORM来源:django中内嵌了ORM框架,不需要直接面向数据库编程,而是定义模型类,通过模型类和对象完成数据表的增删改查操作。Django连接数据库MySQL:使用MySQL数据库首先需要安装驱动程序。(pip install PyMySQL 调用时为 import pymysql)Django默认导入的mysql的驱动程序是MySQLdb,然而MySQLdb对于py3支持..._django的orm

14岁女孩寒夜蹭网上课看哭众人:不吃读书的苦,就要吃生活的苦-程序员宅基地

转自国馆官方 别抱怨读书苦,那是你看世界的路。 最近,网上一张照片看哭无数人。 在河南洛宁,一名14岁女孩因疫情期间要上网课,家里又没有网络,只好每天到村支部蹭网学习。 照片里,女孩端坐在昏暗的灯光下刻苦用功,父亲则默默蹲坐在角落陪伴女儿。 村支书说:“我是教师出身,一看到孩子认真学习,心里就很感动。” 为了营造良好的学习环境,..._跋山涉水上学路观后感

varchar和text说不清的那些事_tinytext还是varchar-程序员宅基地

作者:吴炳锡 来源:http://wubx.net/ 联系方式: wubingxi#163.com 转载请注明作/译者和出处,并且不能用于商业用途,违者必究.最近有几个同学问我varchar和text有啥别吗,这个问题,以前说真的也没太多的整理,以前遇到text在设计中就是尽可能的拆到另一个表中,保持主表尽量的瘦小,可以让innodb bp缓存更多的数据。今天借次机会系统整理一下,主要从存..._tinytext还是varchar

leetcode编程C++之1773. 统计匹配检索规则的物品数量_編程如何獲取物品數量-程序员宅基地

leetcode编程C++之1773. 统计匹配检索规则的物品数量;给你一个数组 items ,其中 items[i] = [typei, colori, namei] ,描述第 i 件物品的类型、颜色以及名称。ruleKey == “color” 且 ruleValue == colori。ruleKey == “type” 且 ruleValue == typei。ruleKey == “name” 且 ruleValue == namei_編程如何獲取物品數量

推荐文章

热门文章

相关标签