全文检索工具elasticsearch:第二章:安装配置

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 全文检索工具elasticsearch:第二章:安装配置

1.确认Java已经正确安装

   java -version

2.rpm安装

安装包下载

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

https://www.elastic.co/downloads/past-releases/elasticsearch-5-6-4

拷贝elasticsearch-5.6.4.rpm到/opt目录下

   rpm -ivh elasticsearch-5.6.4.rpm

注册并启动服务


CentOS6.8 通过chkconfig --list可以查看


CentOS7.x 可以通过systemctl list-unit-files|grep elasticsearch

3.编辑ElasticSearch的服务文件

启动之前为elasticsearch配置jdk

vim /etc/sysconfig/elasticsearch 中修改JAVA_HOME路径的路径

 指定JAVA_HOME位置

       8 # Elasticsearch Java path

       9 #JAVA_HOME=

       10 JAVA_HOME=/opt/jdk1.8.0_121



4.启动ElasticSearch服务并设置为开机自动启动

   systemctl start elasticsearch.service

   systemctl enable elasticsearch.service

  如果只是启动elasticsearch:


5.查看进程

   ps -ef|grep elasticsearch|grep -v grep

   或者ps -ef | grep elastic


通过进程信息得知以下文件位置:

   日志文件:/var/log/elasticsearch/elasticsearch.log

   数据文件:/var/lib/elasticsearch

   核心配置文件:/etc/elasticsearch/elasticsearch.yml

   pid文件:/var/run/elasticsearch/elasticsearch.pid

6.修改核心配置文件vim /etc/elasticsearch/elasticsearch.yml

   [1]规则

       每行必须顶格,前面不能有空格

       “:”后面必须有一个空格

   [2]配置


       集群名称,同一集群名称必须相同

       cluster.name: my-es


       单个节点名称  

       node.name: node-1


       把bootstrap自检程序关掉

       bootstrap.memory_lock: false

       bootstrap.system_call_filter: false


       网络部分  改为当前的ip地址  ,端口号保持默认9200就行

       network.host: 192.168.70.129


       自发现配置:新节点向集群报到的主机名

       discovery.zen.ping.unicast.hosts: ["rich"]

7.修改Linux默认配置


为什么要修改linux配置?


默认elasticsearch是单机访问模式,就是只能自己访问自己。


但是我们之后一定会设置成允许应用服务器通过网络方式访问。这时,elasticsearch就会因为嫌弃单机版的低端默认配置而报错,甚至无法启动。


所以我们在这里就要把服务器的一些限制打开,能支持更多并发。


   原因:解除默认配置对服务器性能的束缚。

   [1]设置系统允许ElasticSearch打开的最大文件数为65536

       vim /etc/security/limits.conf

       在文件末尾追加如下内容,注意*不能省略:

       * soft nofile 65536

       * hard nofile 131072

       * soft nproc 2048

       * hard nproc 65536

       相关错误信息:max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536] elasticsearch

   [2]允许最大进程数修该成2048(CentOS7不必修改)

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

       修改如下内容:

       * soft nproc 1024

       修改为

       * soft nproc 2048

       相关问题:max number of threads [1024] for user [judy2] likely too low, increase to at least [2048]

   [3]一个进程可以拥有的虚拟内存区域的数量(CentOS7不必修改)

       sysctl -w vm.max_map_count=262144


修改占用资源:


vim /etc/elasticsearch/jvm.options

# Xms128m

# Xmx128m

-Xms128m

-Xmx128m



8.重启Linux

   reboot

9.测试

[root@rich ~]# curl http://192.168.0.100:9200
    {
      "name" : "node-1",
      "cluster_name" : "javawxid",
      "cluster_uuid" : "Mv3lptVXTzCodm2JDH_4mA",
      "version" : {
        "number" : "5.6.4",
        "build_hash" : "8bbedf5",
        "build_date" : "2017-10-31T18:55:38.105Z",
        "build_snapshot" : false,
        "lucene_version" : "6.6.1"
      },
      "tagline" : "You Know, for Search"
    }

或者直接浏览器访问http://192.168.0.100:9200



如果启动未成功


如果启动未成功,请去查看相关日志


vim  /var/log/elasticsearch/my-es.log


10.安装kibana

   [1]解压tar -zxvf kibana-5.6.4-linux-x86_64.tar.gz

   [2]进入config目录


      编辑kibana.yml文件:vim  kibana.yml

       server.host:  "0.0.0.0"

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

[3]执行bin目录下的kibana程序

     cd /opt/kibana-5.6.4-linux-x86_64/bin

      ./kibana ,然后ctrl+c退出,执行ps -ef

  [4]使用浏览器访问http://192.168.70.129:5601

ip不同是因为图是之前的,现在又截了一部分



相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
5月前
|
运维 监控 Java
探索Elasticsearch在Java环境下的全文检索应用实践
【6月更文挑战第30天】在大数据背景下,Elasticsearch作为分布式搜索分析引擎,因其扩展性和易用性备受青睐。本文指导在Java环境中集成Elasticsearch,涉及安装配置、使用RestHighLevelClient连接、索引与文档操作,如创建索引、插入文档及全文检索查询。此外,还讨论了高级查询、性能优化和故障排查,帮助开发者高效处理非结构化数据全文检索。
169 0
|
3月前
|
JSON 自然语言处理 Java
ElasticSearch 实现分词全文检索 - 搜素关键字自动补全(Completion Suggest)
ElasticSearch 实现分词全文检索 - 搜素关键字自动补全(Completion Suggest)
93 1
|
3月前
|
自然语言处理 Java 关系型数据库
ElasticSearch 实现分词全文检索 - 聚合查询 cardinality
ElasticSearch 实现分词全文检索 - 聚合查询 cardinality
119 1
|
3月前
|
自然语言处理 Java 索引
ElasticSearch 实现分词全文检索 - delete-by-query
ElasticSearch 实现分词全文检索 - delete-by-query
25 1
|
3月前
|
自然语言处理 索引
ElasticSearch 实现分词全文检索 - 测试数据准备
ElasticSearch 实现分词全文检索 - 测试数据准备
52 1
|
3月前
|
自然语言处理 索引
ElasticSearch 实现分词全文检索 - Restful基本操作
ElasticSearch 实现分词全文检索 - Restful基本操作
30 0
ElasticSearch 实现分词全文检索 - Restful基本操作
|
3月前
|
自然语言处理 Java 关系型数据库
ElasticSearch 实现分词全文检索 - SpringBoot 完整实现 Demo 附源码【完结篇】
ElasticSearch 实现分词全文检索 - SpringBoot 完整实现 Demo 附源码【完结篇】
52 0
|
3月前
|
存储 自然语言处理 Java
ElasticSearch 实现分词全文检索 - 经纬度定位商家距离查询
ElasticSearch 实现分词全文检索 - 经纬度定位商家距离查询
30 0
|
3月前
|
自然语言处理 Java
ElasticSearch 实现分词全文检索 - 高亮查询
ElasticSearch 实现分词全文检索 - 高亮查询
64 0
|
3月前
|
缓存 自然语言处理 Java
ElasticSearch 实现分词全文检索 - filter查询
ElasticSearch 实现分词全文检索 - filter查询
46 0