需搭建服务器环境

操作系统

Host:port

node

1

CentOS 7.2.1511

11.1.11.127:9200

node1

2

CentOS 7.2.1511

11.1.11.128:9200

node2

3

CentOS 7.2.1511

11.1.11.129:9200

node3

Elasticsearch运行需要创建es用户

1 创建 elasticsearch 用户组

[root@localhost ~]# groupadd elasticsearch

2 创建用户 es 并设置密码为es
[root@localhost~]# useradd es

[root@localhost~]# passwd es

3 用户es 添加到 elasticsearch 用户组

[root@localhost ~]# usermod -G elasticsearch es

4 设置sudo权限

[root@localhost~]# visudo

#在root ALL=(ALL) ALL 一行下面

es ALL=(ALL) ALL

#添加es用户 如下:

es ALL=(ALL) ALL

#切换成es用户

[root@localhost~]# su es

安装Elasticsearch

针对三台服务器首先先进行Elasticsearch应用的安装,这里我们选择解压版的Elasticsearch,集群通过修改Elasticsearch的elasticsearch.yml配置文件可自动发现并加入集群。

5 下载elasticsearch安装包

[es@localhost root]$ cd /usr/local/

[es@localhost local]$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.1.tar.gz

[es@localhost local]$ tar -xvf elasticsearch-6.0.1.tar.gz

6 更改elasticsearch-6.0.1 文件夹以及内部文件的所属用户为es, 用户组组为elasticsearch,-R表示逐级

[es@localhost local]$ sudo chown -R es:elasticsearch elasticsearch-6.0.1

ElasticSearch 配置

[es@localhost elasticsearch-6.0.1]$ vim config/elasticsearch.yml

#搭建集群修改如下属性

cluster.name: my-application  #集群名,同一集群下多个服务共享一个cluster.name

node.name: node-1  #节点名,同一集群下每个服务的name,唯一

node.master: true  #是否为主节点,建议为true

node.data: true  #是否为数据节点,建议为true

path.data: /path/to/data  #数据存储目录,默认

path.logs: /path/to/logs  #log存储目录,默认

network.host: 11.1.11.127  #本机ip

http.port: 9200  #默认端口

discovery.zen.ping.unicast.hosts: ["11.1.11.128", "11.1.11.129"]  #设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。

discovery.zen.minimum_master_nodes: 2  # (集群总节点数量/2)+1

针对基础的集群搭建上述配置修改即可

关于elasticsearch.yml的详细配置可以参考https://www.cnblogs.com/liuchuanfeng/articles/7059268.html

#新建data和log数据存储目录

mkdir -pv /path/to/{data,logs}

chown -R elasticsearch es  /path/to

#修改sysctl.conf

vim /etc/sysctl.conf

#在配置文件最后面添加如下内容

vm.max_map_count=655360

#刷新sysctl.conf

sysctl -p

#修改文件/etc/security/limits.conf

vim /etc/security/limits.conf

#添加

* hard nofile 65536

* soft nofile 65536

* soft nproc 2048

* hard nproc 4096 

同理可配置其他集群节点,只需改动其他节点服务器的elasticsearch.yml文件并修改如下属性:

node.name: node-2/node-3 #节点名,需唯一。

network.host: 11.1.11.128/11.1.11.129  #本机ip

http.port: 9200  #默认端口。如果集群节点不在同一台服务器上,不需要修改

discovery.zen.ping.unicast.hosts: ["11.1.11.127", "11.1.11.129"] / ["11.1.11.127", "11.1.11.128"]  #可发现节点

ElasticSearch 集群启动

#切换es用户启动elasticsearch并且进入elasticsearch目录

su es && cd /usr/local/elasticsearch-6.0.1/bin/

#启动服务

./elasticsearch -d

#按如上步骤依次启动其他节点服务

#使用curl测试节点是否可以正常访问,集群节点是否加入

curl http://11.1.11.127:9200/_cat/nodes?v

ElasticStack之Elasticsearch集群搭建的更多相关文章

  1. elasticsearch集群搭建实例

    elasticsearch集群搭建实例 下个月又开始搞搜索了,几个月没动这块还好没有落下. 晚上在自己虚拟机上搭建了一个简易搜索集群,分享一下. 操作系统环境: Red Hat 4.8.2-16 el ...

  2. 和我一起打造个简单搜索之ElasticSearch集群搭建

    我们所常见的电商搜索如京东,搜索页面都会提供各种各样的筛选条件,比如品牌.尺寸.适用季节.价格区间等,同时提供排序,比如价格排序,信誉排序,销量排序等,方便了用户去找到自己心里理想的商品. 站内搜索对 ...

  3. Elasticsearch集群搭建及使用Java客户端对数据存储和查询

    本次博文发两块,前部分是怎样搭建一个Elastic集群,后半部分是基于Java对数据进行写入和聚合统计. 一.Elastic集群搭建 1. 环境准备. 该集群环境基于VMware虚拟机.CentOS ...

  4. CentOS 7下ElasticSearch集群搭建案例

    最近在网上看到很多ElasticSearch集群的搭建方法,本人在这人使用Elasticsearch5.0.1版本,介绍如何搭建ElasticSearch集群并安装head插件和其他插件安装方法. 一 ...

  5. Es学习第十课,ElasticSearch集群搭建

    前面几课我们已经把ES的基本概念和查询了解了,大家知道ES的核心优势就是天生支持分布式,所以,这课我们专门讲讲怎么搭建实现ES的集群部署. ES分布式原理 1.es分布式概念 主分片(Primary ...

  6. Elasticsearch集群搭建

    现有两部机器:192.168.31.86,192.168.31.87   参考以往博文对Elasticsearch进行配置完成:http://www.cnblogs.com/zhongshengzhe ...

  7. elasticsearch 集群搭建及启动常见错误

    1.系统环境 三台服务器(最好是单数台,跟master选举方式有关),确保机器互相ping的通,且都需要装了jdk 8环境,机器IP和 elasticsearch 的节点名称如下: cluster n ...

  8. Elasticsearch集群搭建教程及生产环境配置

    Elasticsearch 是一个极其强大的搜索和分析引擎,其强大的部分在于能够对其进行扩展以获得更好的性能和稳定性. 本教程将提供有关如何设置 Elasticsearch 集群的一些信息,并将添加一 ...

  9. elasticsearch集群搭建报错: not enough master nodes discovered during pinging

    自己用一台 阿里云 服务器 搭建ES集群的时候,总是报上面的问题. 而且两个ES服务都是报同样的问题.自己的配置文件如下: es服务1配置文件 cluster.name: elasticsearch ...

随机推荐

  1. jquery 整理笔记(一)

    this:表示当前的上下文对象是一个html对象,可以调用html对象所拥有的属性,方法 $(this),代表的上下文对象是一个jquery的上下文对象,可以调用jquery的方法和属性值. each ...

  2. 2018.5.31 nRF905 test

    1 试电机:自动控制测试流程(Labview程序,加载扫描仪,自动测试夹具,测试数据保存) 2 USB RF收发器: 含S/N码发送读取功能(S/N:) The specific use please ...

  3. php-fpm进程内存泄漏

    线上服务器内存报警 线上web8G内存的服务器,内存几乎吃光,top查看,发现php-fpm进程每个都是几十M,php-fpm配置static, 一共150个 解决 排除过程中,其他机器相同配置都没有 ...

  4. leetcode 258. Add Digits(数论)

    Given a non-negative integer num, repeatedly add all its digits until the result has only one digit. ...

  5. Gym 100801B Black and White(构造)

    题意:给定X,Y,分别表示由'.'和'@'组成的连通块的个数. 思路:假如X<Y,我们用两部分来构造这个结果,第一部分由一个'.'连通块和Y-(X-1)割'@'连通块组成,第二个部分由X-1个' ...

  6. ACM学习历程—Hihocoder 1290 Demo Day(动态规划)

    http://hihocoder.com/problemset/problem/1290 这题是这次微软笔试的第三题,过的人比第一题少一点,这题一眼看过去就是动态规划,不过转移方程貌似不是很简单,调试 ...

  7. Send Code to evernote by my specify notebook

    #coding:utf-8 import sys sys.path.append("lib") import thrift.protocol.TBinaryProtocol as ...

  8. 杂项-JS:artTemplate.js

    ylbtech-杂项-JS:artTemplate.js artTemplate 是新一代 javascript 模板引擎,它采用预编译方式让性能有了质的飞跃,并且充分利用 javascript 引擎 ...

  9. Linux(C/C++)下的文件操作open、fopen与freopen via Boblim

    Linux(C/C++)下的文件操作open.fopen与freopen open是linux下的底层系统调用函数,fopen与freopen c/c++下的标准I/O库函数,带输入/输出缓冲. li ...

  10. SpringMvc之参数绑定注解详解之二

    2 consumes.produces 示例 cousumes的样例: 1 @Controller   2 @RequestMapping(value = "/pets", met ...