ElasticSearch简介

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

Elasticsearch具备以下特点:

  • 分布式,无需人工搭建集群(solr就需要人为配置,使用Zookeeper作为注册中心)
  • Restful风格,一切API都遵循Rest原则,容易上手
  • 近实时搜索,数据更新在Elasticsearch中几乎是完全同步的。

1.elasticsearch5.x

1.1安装Java环境

yum -y search java
yum -y install java-1.8.0-openjdk*

1.2安装ElasticSearch

  • 创建安装源文件
vi /etc/yum.repos.d/elasticsearch.repo
  • 文件内容
[elasticsearch-5.x]
name=Elasticsearch repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
  • 开始安装
yum install elasticsearch-5.0.1

我这里安装的时候选择了elasticsearch的版本为5.0.1,主要是analysis-ik中文分词插件更新慢,必须要跟elasticsearch的版本匹配,不然会有问题

  • 启动elasticsearch服务
service elasticsearch start
  • 测试elasticsearch是否安装成功
curl -X GET http://127.0.0.1:9200/

2.elasticsearch-analysis-ik

中文分词插件安装

  • 下载5.0.1的版本,放到服务器上,也可以用git下载
    github: https://github.com/medcl/elasticsearch-analysis-ik/tree/v5.0.1
  • 解压之后,使用maven打包
unzip elasticsearch-analysis-ik-5.0.1.zip
cd elasticsearch-analysis-ik-5.0.1
mvn package
  • 如果没有找到mvn的命令
wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
yum -y install apache-maven
  • 安装ik分词器
mkdir /usr/share/elasticsearch/plugins/ik
cp target/releases/elasticsearch-analysis-ik-5.0.1.zip /usr/share/elasticsearch/plugins/ik
unzip /usr/share/elasticsearch/plugins/ik/elasticsearch-analysis-ik-5.0.1.zip
  • 重启elasticsearch
service elasticsearch restart

3.常见问题

3.1新建用户

  • 出于安全考虑,elasticsearch默认不允许以root账号运行。
  • 创建用户
useradd es
  • 设置密码
passwd es
  • 切换用户
su - es

3.2jvm.options

  • Elasticsearch基于Lucene的,而Lucene底层是java实现,因此我们需要配置jvm参数。
  • 编辑jvm.options:
vim jvm.options
  • 默认配置如下:
-Xms1g
-Xmx1g
  • 内存占用太多了,我们调小一些:
-Xms512m
-Xmx512m

3.3 elasticsearch.yml

vim elasticsearch.yml
  • 修改数据和日志目录:
path.data: /home/leyou/elasticsearch/data # 数据目录位置
path.logs: /home/leyou/elasticsearch/logs # 日志目录位置
  • 我们把data和logs目录修改指向了elasticsearch的安装目录。但是这两个目录并不存在,因此我们需要创建出来。

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

mkdir data
mkdir logs
  • 修改绑定的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/ elasticsearch
path.data 设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开
path.logs 设置日志文件的存储路径,默认是es根目录下的logs文件夹
path.plugins 设置插件的存放路径,默认是es根目录下的plugins文件夹
bootstrap.memory_lock 设置为true可以锁住ES使用的内存,避免内存进行swap
network.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

3.4错误:内核过低

  • 修改elasticsearch.yml文件,在最下面添加如下配置,然后重启
bootstrap.system_call_filter: false

elasticsearch5安装和elasticsearch-analysis-ik中文分词插件安装相关推荐

  1. Elasticsearch:IK 中文分词器

    Elasticsearch 内置的分词器对中文不友好,只会一个字一个字的分,无法形成词语,比如: POST /_analyze {"text": "我爱北京天安门&quo ...

  2. Elasticsearch(四) - IK中文分词器

    es对中文分词不给力,所以要用ik分词器. 下载和es对应版本的ik # cd /usr/local/elasticsearch-6.5.3/plugins # mkdir ik # cd ik/ # ...

  3. elasticsearch-analysis-ik中文分词插件安装及配置Ik自定义词典+拼音分词

    在Elasticsearch中默认的分词器对中文的支持不好,会分隔成一个一个的汉字.而IK分词器对中文的支持比较好,主要有两种模式"ik_smart"和"ik_max_w ...

  4. ElasticSearch的IK中文分词器

    目录 概述 一.安装下载 二.设置es使用ik分词器 三.效果对比 四.ik分词器自定义字典 五.ik分词器自定义字典的配置 概述 本文主要介绍了 ik 分词器在es中的一些配置以及原理,包括 下载安 ...

  5. Elasticsearch配置ik中文分词器自定义词库

    1.IK配置文件 在config目录下: IKAnalyzer.cfg.xml:配置自定义词库 main.dic:分词器自带的词库,索引会按照里面的词创建 quantifier.dic:存放计量单位词 ...

  6. elasticsearch-analysis-ik-1.10.0中文分词插件安装

    2019独角兽企业重金招聘Python工程师标准>>> 版本说明 根据ik官网提示,elasticsearch2.4.0需要使用elasticsearch-analysis-ik-1 ...

  7. ik中文分词器安装以及简单新增词典操作

    ik分词器地址 https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.1/elasticsearch-an ...

  8. springboot elasticsearch vue ik中文分词器 实现百度/京东全文搜索

    背景:实现和百度搜索一样效果的,全文搜索引擎支持关键词高亮显示 文章目录 1. 企业级搜索引擎解决方案 2. 创建索引规则 3. 数据拉取 4. 搜索高亮 5. 自定义词库 6. 效果图 7. 开源源 ...

  9. 使用Docker快速安装部署ES和Kibana并配置IK中文分词器以及自定义分词拓展词库

    使用Docker快速安装部署ES和Kibana的前提:首先需要确保已经安装了Docker环境 如果没有安装Docker的话,可以参考上一篇的内容:Linux上安装Docker 有了Docker环境后, ...

最新文章

  1. VisualStudio 合并代码文件
  2. epoll示例(边沿触发)
  3. CubieBoard 简单入门
  4. nginx利用referer指令实现防盗链配置
  5. 【Deep Learning】深度学习中的函数类型
  6. 简单的了解一下AQS吧
  7. IOS_改变UITextField placeHolder颜色、字体
  8. 武汉大学计算机控制考试卷子,武汉大学计算机学院微机接口0809试题及答案.doc...
  9. linux caffe ssd安装错误,ubuntu16.04安装caffe以及各种问题汇总
  10. 《Android Studio开发实战 从零基础到App上线》源码运行问题解答
  11. 1046. 划拳(15)-PAT乙级真题
  12. java 内省 反射_理解Java的反射与内省及其区别
  13. Windows7配置docker配置registry-mirrors国内镜像地址,运行hello-world
  14. 文件上传到服务器出错(Permission denied)
  15. 【Mac SSH】SSH连接工具finalShell推荐
  16. WIN10 64位系统MATLAB R2018b第一次安装libsvm
  17. educoder数据结构与算法 图 第2关:实现图的深度优先遍历
  18. MacOS系统安装fish,替代bash
  19. 腕能助手android9,篮球教学助手安卓版
  20. 经典 | 单片机常用外围电路设计

热门文章

  1. 2.scala控制结构、函数、异常处理
  2. C# SHA1散列算法
  3. 【easyui】treegrid逐级加载源码
  4. 【转载】C# double和decimal数据类型以截断的方式保留指定的小数位数
  5. DB2数据库报 [SQL0805N Package NULLID.SQLLD003 was not found.]
  6. 对新手的忠告:拒绝创意,回归基础
  7. linux修复uefi启动文件,uefi-gpt-linux修复grub rescue
  8. java佳沃维洛奇,新品速递:JAVA 双雄耀世登场
  9. linux 添加banner,OpenWrt:Linux下生成banner
  10. linux 播放器系统,在Linux上安装和使用开源视频播放器MPlayer