1.安装

1.1下载最新的 elasticsearch-6.5.4.tar.gz

1.2解压

tar -zxvf elasticsearch-6.5.4.tar.gz

1.3 创建用户

elastic默认不能在root用户下运行,所以需要专门的用户运行。

groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch
chown -R elsearch:elsearch elasticsearch-6.5.4.

1.4 运行

su elsearch

./bin/elasticsearch

2.配置

1.编辑配置文件 /etc/security/limits.conf

在最后增加

elsearch - nofile 65536

elsearch soft nproc 32768

elsearch hard nproc 65536

elsearch  为启动elasticsearch 的用户

可以使用 elsearch 用户登录 使用 ulimit -a 命令查看是否生效。

2.编辑/etc/sysctl.conf 文件

增加配置

vm.max_map_count=262144

并执行命令 sysctl -p

减少内存交换,紧急情况仍然允许交换。

vm.swappiness=1

3.在 elasticsearcm.yml 中配置

bootstrap.memory_lock: true

防止elastic的内存被交换出去。

配置完后可以通过

GET _nodes?filter_path=**.mlockall 检查是否成功。


3.配置集群

将 es 拷贝3份 ,分别为 es1,es2,es3

修改 conf 下的 elasticsearch.yml

es1

cluster.name: elastic
node.name: node-1

node.master:true

path.data: /redxun/elastic/es1/data
path.logs: /redxun/elastic/es1/logs
bootstrap.memory_lock: false
network.host: 202.10.79.170

network.publish_host: 202.10.79.170

http.port: 9201
transport.tcp.port: 9301
discovery.zen.ping.unicast.hosts: ["202.10.79.170:9201","202.10.79.170:9202","202.10.79.170:9203"]
discovery.zen.minimum_master_nodes: 2

es2

cluster.name: elastic
node.name: node-2

node.master:true
path.data: /redxun/elastic/es2/data
path.logs: /redxun/elastic/es2/logs
bootstrap.memory_lock: false

network.publish_host: 202.10.79.170
network.host: 202.10.79.170
http.port: 9202
transport.tcp.port: 9302
discovery.zen.ping.unicast.hosts: ["202.10.79.170:9201","202.10.79.170:9202","202.10.79.170:9203"]
discovery.zen.minimum_master_nodes: 2

es3

cluster.name: elastic
node.name: node-3

node.master:true
path.data: /redxun/elastic/es3/data
path.logs: /redxun/elastic/es3/logs
bootstrap.memory_lock: false

network.publish_host: 202.10.79.170
network.host: 202.10.79.170
http.port: 9203
transport.tcp.port: 9303
discovery.zen.ping.unicast.hosts: ["202.10.79.170:9201","202.10.79.170:9202","202.10.79.170:9203"]
discovery.zen.minimum_master_nodes: 2

需要注意的是 network.publish_host 必填。

4.配置JVM

编辑 es1/config/jvm.options

编辑

-Xms1g
-Xmx1g

内存的设置一般为系统内存的一半。

5.配置监控

下载 cerebro-0.8.1

https://github.com/lmenezes/cerebro

下载后配置:

编辑配置文件

application.conf

es = {
gzip = true
} # Authentication
auth = {
type: basic
settings: {
username = "admin"
password = "1234"
}
} hosts = [
{
host = "http://202.10.79.170:9201"
name = "my-application"
}
] http.port=8001
http.address=202.10.79.170

编辑完成后启动 cerebro

./bin/cerebro

创建索引

创建三个分配,一个副本。

索引分布

这里可以看到索引分布到了3个实例上,如果一台机器宕机,那么数据可以进行恢复。

6.安装中文分词器

下载

https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.4/elasticsearch-analysis-ik-6.5.4.zip

在es 的plugins目录创建一个ik目录

将文件解压到这个目录。

启动es

启动时可以看到日志

[2019-01-05T17:13:08,535][INFO ][o.e.p.PluginsService     ] [node-1] loaded plugin [analysis-ik]

表示 ik 安装成功。

测试中文分词,使用cerebro测试

7.防止脑裂

一般的做法在一个集群中设置3个MASTER节点,将discovery.zen.minimum_master_nodes 设置为2 就可以了。

 

集群配置参数

一般node.master 设置为3个

discovery.zen.ping.unicast.hosts 设置node.master的节点地址。

discovery.zen.minimum_master_nodes 设置为2

建议使用api进行设置。

内存数量量比:

搜索类每个节点存储数据最多496g

日志数据可以为31*48 1500g左右。

Elastic serarch 安装的更多相关文章

  1. Elastic Search 安装和配置

    目标 部署一个单节点的ElasticSearch集群 依赖 java环境 $java -version java version "1.8.0_161" Java(TM) SE R ...

  2. elastic search安装与本地测试

    elastic search安装与本地测试 elastic search是一个全文搜索引擎 教程: 综合:http://www.ruanyifeng.com/blog/2017/08/elastics ...

  3. SQL数据同步到ELK(二)- Elastic Search 安装

    开篇废话 没错,前面扯了一堆SQL SERVER,其实我连Elastic Search根本没动手玩过(是不是与时代有点脱节了?),那今天我就准备尝试安装一个ELK的简单集群出来(这个集群是使用我的小米 ...

  4. ELASTIC SEARCH 安装

    elastic search 2017年3月18日 安装&使用 环境 表 1 环境信息 Centos cat /etc/issue CentOS release 6.8 (Final) cat ...

  5. Elastic Stack 安装

    Elastic Stack 是一套支持数据采集.存储.分析.并可视化全面的分析工具,简称 ELK(Elasticsearch,Logstash,Kibana)的缩写. 安装Elastic Stack ...

  6. Elastic Search安装-windows

    转载自:https://blog.csdn.net/linkkb/article/details/82805145 其中稍作修改 ElasticSearch介绍 ES是一个基于Lucene的分布式全文 ...

  7. elastic stack安装运行(docker)

    https://www.docker.elastic.co 注:目前阿里云为7.4 elasticsearch 参考https://www.elastic.co/guide/en/elasticsea ...

  8. elastic插件安装

    https://blog.csdn.net/dwyane__wade/article/details/80191131 参考这篇博文,唯一不同是,下面这一步可以不用,直接启动就行

  9. elastic 集群安装

    Elastic Search 安装和配置 1.下载 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6. ...

随机推荐

  1. ES6之Promise对象

    创建Promise对象 function getHtml(url) { return new Promise((resolve, reject) => { let xhr = new XMLHt ...

  2. VCSA 6.5, 初始化设置root密码失败can't set root password 或 安装时卡在80%

    是因为下载的非官方的包密码过期了,如果是Windows引导安装: 安装完虚拟机的时候就马上执行下面步骤,修改密码有效期即可. 重启vcsa,在引导界面(photon的图形界面)里按e编辑启动项 在co ...

  3. Redis 与Spring-data-redis 整合后封装的工具类

    此工具类方法是使用了redis 与spring 整合后,才可以使用的工具类,将 spring-data-redis 一些我们开发中常用的方法进行了封装,方便我们日常开发中进行调用: package c ...

  4. Java_13.1.1 字符串的应用

    1获取一个字符串中,另一个字符串出现的次数 思想:      1. indexOf到字符串中到第一次出现的索引      2. 找到的索引+被找字符串长度,截取字符串       3. 计数器++ p ...

  5. YII2开启路由配置后,新加的模块无法访问

    最近使用YII2,自定义创建了一个自定义模块users,位置为app\modules\users. 'modules' => [ 'users' => [ 'class' => 'a ...

  6. go语言中的数组

    package main; import ( "fmt" ) func main() { //声明一个数组 var a [3]int; a = [3]int{1, 2, 3}; / ...

  7. 递归函数 day17

    一 递归函数 n = 1 金老板 38+2 =40n = 2 alex n+2= 金老板 36+2 = 38n = 3 wusir n+2 = alex wusir 36 def age(n): #n ...

  8. [转载]linux awk命令详解

    简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再 ...

  9. CH6901 骑士放置

    原题链接 和棋盘覆盖(题解)差不多.. 同样对格子染色,显然日字的对角格子是不同色,直接在对应节点连边,然后就是二分图最大独立集问题. #include<cstdio> #include& ...

  10. 在iOS 8及以后使用UIAlertController 等各种弹出警告通知

    原文转自:在iOS 8中使用UIAlertController 感谢作者分享,自我学习之用 iOS 8的新特性之一就是让接口更有适应性.更灵活,因此许多视图控制器的实现方式发生了巨大的变化.全新的UI ...