我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Elasticsearch的安装使用是怎样的

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Elasticsearch的安装使用是怎样的

本篇文章给大家分享的是有关Elasticsearch的安装使用是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

导读ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。

Elastic

Elastic有一条完整的产品线及解决方案:Elasticsearch、Kibana、Logstash等,前面说的三个就是大家常说的ELK技术栈。

Elasticsearch的安装使用是怎样的

Elasticsearch

Elasticsearch官网:https://www.elastic.co/cn/products/elasticsearch

Elasticsearch的安装使用是怎样的

如上所述,Elasticsearch具备以下特点:

分布式,无需人工搭建集群(solr就需要人为配置,使用Zookeeper作为注册中心)

Restful风格,一切API都遵循Rest原则,容易上手

近实时搜索,数据更新在Elasticsearch中几乎是完全同步的。

版本

目前Elasticsearch最新的版本是6.3.1,我们就使用6.3.0

Elasticsearch的安装使用是怎样的

需要虚拟机JDK1.8及以上

安装和配置

为了模拟真实场景,我们将在linux下安装Elasticsearch。

新建一个用户leyou

出于安全考虑,elasticsearch默认不允许以root账号运行。

创建用户:

useradd leyou

设置密码:

passwd leyou

切换用户:

su - leyou

上传安装包,并解压

我们将安装包上传到:/home/leyou目录

解压缩:

tar -zxvf elasticsearch-6.2.4.tar.gz

删除压缩包:

rm -rf elasticsearch-6.2.4.tar.gz

我们把目录重命名:

mv elasticsearch-6.2.4/ elasticsearch

进入,查看目录结构:

Elasticsearch的安装使用是怎样的

修改配置

我们进入config目录:cd config

需要修改的配置文件有两个:

Elasticsearch的安装使用是怎样的

jvm.options

Elasticsearch基于Lucene的,而Lucene底层是Java实现,因此我们需要配置jvm参数。

编辑jvm.options:

vim jvm.options默认配置如下:-Xms1g-Xmx1g内存占用太多了,我们调小一些:-Xms512m-Xmx512melasticsearch.yml
vim elasticsearch.yml修改数据和日志目录:path.data: /home/leyou/elasticsearch/data # 数据目录位置path.logs: /home/leyou/elasticsearch/logs # 日志目录位置

我们把data和logs目录修改指向了elasticsearch的安装目录。但是这两个目录并不存在,因此我们需要创建出来。

进入elasticsearch的根目录,然后创建:

mkdir datamkdir logs

Elasticsearch的安装使用是怎样的

修改绑定的ip:

network.host: 0.0.0.0 # 绑定到0.0.0.0,允许任何ip来访问

默认只允许本机访问,修改为0.0.0.0后则可以远程访问

目前我们是做的单机安装,如果要做集群,只需要在这个配置文件中添加其它节点信息即可。

elasticsearch.yml的其它可配置信息:

属性名说明cluster.name 配置elasticsearch的集群名称,默认是elasticsearch。建议修改成一个有意义的名称。node.name 节点名,es会默认随机指定一个名字,建议指定一个有意义的名称,方便管理path.conf 设置配置文件的存储路径,tar或zip包安装默认在es根目录下的config文件夹,rpm安装默认在/etc/ elasticsearchpath.data 设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开path.logs 设置日志文件的存储路径,默认是es根目录下的logs文件夹path.plugins 设置插件的存放路径,默认是es根目录下的plugins文件夹bootstrap.memory_lock 设置为true可以锁住ES使用的内存,避免内存进行swapnetwork.host 设置bind_host和publish_host,设置为0.0.0.0允许外网访问http.port 设置对外服务的http端口,默认为9200。transport.tcp.port 集群结点之间通信端口discovery.zen.ping.timeout 设置ES自动发现节点连接超时的时间,默认为3秒,如果网络延迟高可设置大些discovery.zen.minimum_master_nodes 主结点数量的最少值 ,此值的公式为:(master_eligible_nodes / 2) + 1 ,比如:有3个符合要求的主结点,那么这里要设置为2

修改文件权限:

leyou 要own(拥有) elasticsearch 这个文件夹权限 -R 是递归的赋予权限

chown leyou:leyou elasticsearch/ -R

运行

进入elasticsearch/bin目录,可以看到下面的执行文件:

Elasticsearch的安装使用是怎样的

然后输入命令:

./elasticsearch

发现报错了,启动失败:

错误1:内核过低

Elasticsearch的安装使用是怎样的

我们使用的是CentOS6,其linux内核版本为2.6。而Elasticsearch的插件要求至少3.5以上版本。不过没关系,我们禁用这个插件即可。

修改elasticsearch.yml文件,在最下面添加如下配置:

bootstrap.system_call_filter: false

然后重启

错误2:文件权限不足

再次启动,又出错了:

Elasticsearch的安装使用是怎样的

[1]: max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]

我们用的是leyou用户,而不是root,所以文件权限不足。

首先用root用户登录。

然后修改配置文件:

vim /etc/security/limits.conf添加下面的内容:* soft nofile 65536* hard nofile 131072* soft nproc 4096* hard nproc 4096

错误3:线程数不够

刚才报错中,还有一行:

[1]: max number of threads [1024] for user [leyou] is too low, increase to at least [4096]

这是线程数不够。

继续修改配置:

vim /etc/security/limits.d/90-nproc.conf 修改下面的内容:* soft nproc 1024改为:* soft nproc 4096

错误4:进程虚拟内存

[3]: max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

vm.max_map_count:限制一个进程可以拥有的VMA(虚拟内存区域)的数量,继续修改配置文件, :

vim /etc/sysctl.conf 添加下面内容:vm.max_map_count=655360然后执行命令:sysctl -p

重启终端窗口

所有错误修改完毕,一定要重启你的 Xshell终端,否则配置无效。

启动

再次启动,终于成功了!

Elasticsearch的安装使用是怎样的

可以看到绑定了两个端口:

9300:集群节点间通讯接口

9200:客户端访问接口

我们在浏览器中访问:http://192.168.56.101:9200

Elasticsearch的安装使用是怎样的

安装kibana

1.什么是Kibana?

Elasticsearch的安装使用是怎样的

Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图表,如柱形图,线状图,饼图等。

而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。

安装

因为Kibana依赖于node,我们的虚拟机没有安装node,而window中安装过。所以我们选择在window下使用kibana。

最新版本与elasticsearch保持一致,也是6.3.0

Elasticsearch的安装使用是怎样的

解压到特定目录即可

配置运行

进入安装目录下的config目录,修改kibana.yml文件:

修改elasticsearch服务器的地址:

elasticsearch.url: "http://192.168.56.101:9200"

运行

进入安装目录下的bin目录:

Elasticsearch的安装使用是怎样的

双击运行:

Elasticsearch的安装使用是怎样的

发现kibana的监听端口是5601

我们访问:http://127.0.0.1:5601

Elasticsearch的安装使用是怎样的

控制台

选择左侧的DevTools菜单,即可进入控制台页面:

Elasticsearch的安装使用是怎样的

在页面右侧,我们就可以输入请求,访问Elasticsearch了。

Elasticsearch的安装使用是怎样的

安装ik分词器

Lucene的IK分词器早在2012年已经没有维护了,现在我们要使用的是在其基础上维护升级的版本,并且开发为ElasticSearch的集成插件了,与Elasticsearch一起维护升级,版本也保持一致,最新版本:6.3.0

安装

上传资料中的zip包,解压到Elasticsearch目录的plugins目录中:

Elasticsearch的安装使用是怎样的

使用unzip命令解压:

unzip elasticsearch-analysis-ik-6.3.0.zip -d ik-analyzer

然后重启elasticsearch:

Elasticsearch的安装使用是怎样的

测试

大家先不管语法,我们先测试一波。

在kibana控制台输入下面的请求:

POST _analyze{  "analyzer": "ik_max_word",  "text":     "我是中国人"}

运行得到结果:

{  "tokens": [    {      "token": "我",      "start_offset": 0,      "end_offset": 1,      "type": "CN_CHAR",      "position": 0    },    {      "token": "是",      "start_offset": 1,      "end_offset": 2,      "type": "CN_CHAR",      "position": 1    },    {      "token": "中国人",      "start_offset": 2,      "end_offset": 5,      "type": "CN_WORD",      "position": 2    },    {      "token": "中国",      "start_offset": 2,      "end_offset": 4,      "type": "CN_WORD",      "position": 3    },    {      "token": "国人",      "start_offset": 3,      "end_offset": 5,      "type": "CN_WORD",      "position": 4    }  ]}

以上就是Elasticsearch的安装使用是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Elasticsearch的安装使用是怎样的

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Elasticsearch的安装使用是怎样的

本篇文章给大家分享的是有关Elasticsearch的安装使用是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。导读ElasticSearch是一个基于Lucene的搜索服
2023-06-04

ElasticSearch使用过程是怎样的

ElasticSearch使用过程是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。这里介绍ElasticSearch的必备知识:从入门、索引管理到映射详解
2023-06-15

如何安装和使用Elasticsearch工具cerebro的

本篇内容主要讲解“如何安装和使用Elasticsearch工具cerebro的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何安装和使用Elasticsearch工具cerebro的”吧!Ce
2023-06-07

VisualStudio2010的安装是怎么样的

今天就跟大家聊聊有关VisualStudio2010的安装是怎么样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。VisualStudio2010安装软件链接如下:链接: https
2023-06-21

kylin怎样安装使用

这篇文章给大家分享的是有关kylin怎样安装使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 环境我选的kylin版本是1.5.4,因为买了一本叫《Apache kylin权威指南》,书中以1.5.x为蓝本,为
2023-06-02

怎么使用docker安装elasticsearch和head插件

本文小编为大家详细介绍“怎么使用docker安装elasticsearch和head插件”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用docker安装elasticsearch和head插件”文章能帮助大家解决疑惑,下面跟着小编的
2023-06-30

关于ROS2安装与docker环境使用是怎样的

本篇文章为大家展示了关于ROS2安装与docker环境使用是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。为什么要用dockerdocker是一个容器,可以用他来装载镜像。我可以把我的基础环境
2023-06-21

5G基站是怎样安装的

今天为大家介绍一下5G基站是怎么安装的
2023-06-05

PHP原理和安装是怎样的

PHP原理和安装是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。PHP 是免费的,并且使用非常广泛。同时,对于像微软 ASP 这样的竞争者来说,PHP 无疑是另一种高
2023-06-04

Centos6.6安装过程是怎么样的

这篇文章将为大家详细讲解有关Centos6.6安装过程是怎么样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、选择install or update an existing system
2023-06-06

CentOS 6.3安装教程是怎样的

本篇文章为大家展示了CentOS 6.3安装教程是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  附:CentOS 6.3下载地址  32位:http://mirror.centos.org
2023-06-10

CentOS NTFS安装支持挂载与使用方法是怎样的

本篇文章为大家展示了CentOS NTFS安装支持挂载与使用方法是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。CentOS 5默认是不支持挂载CentOS NTFS,因此我们需要安装Cent
2023-06-16

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录