需搭建服务器环境
操作系统 |
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集群搭建的更多相关文章
-
elasticsearch集群搭建实例
elasticsearch集群搭建实例 下个月又开始搞搜索了,几个月没动这块还好没有落下. 晚上在自己虚拟机上搭建了一个简易搜索集群,分享一下. 操作系统环境: Red Hat 4.8.2-16 el ...
-
和我一起打造个简单搜索之ElasticSearch集群搭建
我们所常见的电商搜索如京东,搜索页面都会提供各种各样的筛选条件,比如品牌.尺寸.适用季节.价格区间等,同时提供排序,比如价格排序,信誉排序,销量排序等,方便了用户去找到自己心里理想的商品. 站内搜索对 ...
-
Elasticsearch集群搭建及使用Java客户端对数据存储和查询
本次博文发两块,前部分是怎样搭建一个Elastic集群,后半部分是基于Java对数据进行写入和聚合统计. 一.Elastic集群搭建 1. 环境准备. 该集群环境基于VMware虚拟机.CentOS ...
-
CentOS 7下ElasticSearch集群搭建案例
最近在网上看到很多ElasticSearch集群的搭建方法,本人在这人使用Elasticsearch5.0.1版本,介绍如何搭建ElasticSearch集群并安装head插件和其他插件安装方法. 一 ...
-
Es学习第十课,ElasticSearch集群搭建
前面几课我们已经把ES的基本概念和查询了解了,大家知道ES的核心优势就是天生支持分布式,所以,这课我们专门讲讲怎么搭建实现ES的集群部署. ES分布式原理 1.es分布式概念 主分片(Primary ...
-
Elasticsearch集群搭建
现有两部机器:192.168.31.86,192.168.31.87 参考以往博文对Elasticsearch进行配置完成:http://www.cnblogs.com/zhongshengzhe ...
-
elasticsearch 集群搭建及启动常见错误
1.系统环境 三台服务器(最好是单数台,跟master选举方式有关),确保机器互相ping的通,且都需要装了jdk 8环境,机器IP和 elasticsearch 的节点名称如下: cluster n ...
-
Elasticsearch集群搭建教程及生产环境配置
Elasticsearch 是一个极其强大的搜索和分析引擎,其强大的部分在于能够对其进行扩展以获得更好的性能和稳定性. 本教程将提供有关如何设置 Elasticsearch 集群的一些信息,并将添加一 ...
-
elasticsearch集群搭建报错: not enough master nodes discovered during pinging
自己用一台 阿里云 服务器 搭建ES集群的时候,总是报上面的问题. 而且两个ES服务都是报同样的问题.自己的配置文件如下: es服务1配置文件 cluster.name: elasticsearch ...
随机推荐
-
据说,每一个 iOSer 都想要一张 Swift 大会门票
据说,每一个 iOSer 都想要一张中国首届 Swift 开发者大会的门票: 那么,福利来了-- fir.im 作为中国首届 Swift 大会的唯一钻石赞助商,有最后 2 张价值 600 多的门票(已 ...
-
android 基础控件(EditView、SeekBar等)的属性及使用方法
android提供了大量的UI控件,本文将介绍TextView.ImageView.Button.EditView.ProgressBar.SeekBar.ScrollView.WebView ...
-
mysql的统计函数
一:统计函数 MySQL提供5个统计函数来对对数据进行统计.分别是实现对记录进行统计数,计算和,计算平均数,计算最大值和计算最小值. 1. 统计数据记录条数 可以有两种方式: COUNT(*)使用方式 ...
-
filter by date in Sphinx
Indexing: include the date column in the sql_query of source. Also set the date as sql_attr_unit PHP ...
-
【死磕Java并发】-----Java内存模型之happend-before
在上篇博客([死磕Java并发]-–深入分析volatile的实现原理)LZ提到过由于存在线程本地内存和主内存的原因,再加上重排序,会导致多线程环境下存在可见性的问题.那么我们正确使用同步.锁的情况下 ...
-
【整合】input标签JS改变Value事件处理方法
某人需要在时间控件给文本框赋值时,触发事件函数.实现的效果: 1.文本框支持手工输入,通过用户输入修改值,手工输入结束后触发事件.阻塞在于失去焦点后才触发(输入过程中不触发事件) 2.通过JS方法修改 ...
-
汇编指令-str存储指令(4)
str -(Store Register)存储指令 格式:str{条件} 源寄存器,<存储器地址>将源寄存器中数据存到存储器地址中. 实例1: str r1,[r2] ...
-
java虚拟机 jvm 出入java栈 栈空间内存分配
java栈空间是一块线程私有的内存空间,java堆和程序数据密切相关,那么java栈就是和线程执行密切相关.线程最基本的执行行为就是函数的调用.每次函数调用其实是通过java栈传递数据的. 数据结构中 ...
-
Android移动后端服务(BAAS)快速搭建后台服务器之Bmob-android学习之旅(75)
个人移动开发者的最头疼的问题,就是App的网络后台,包含数据库等,国外目前有比较成熟的解决方案,但是限制于墙的问题,推荐国内的解决方案,比较出名的是Bmob和AVOS cloud和Atom等,这一次我 ...
-
MATLAB多项式运算
序言 none 正文 1. 多项式的表示 在Matlab中,多项式用一个行向量表示, 行向量的元素值为多项式系数按幂次的降序排列, 如p(x)=x3-2x-5用P=[1,0,-2,-5]表示. 2. ...