elasticsearch集群安装
介绍
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
初始化配置
内核参数相关配置
cat /etc/security/limits.conf 设置完需要重新登录生效
* soft nofile 65536
* hard nofile 65536
cat /etc/sysctl.conf
vm.max_map_count = 655360
sysctl -p
1.安装jDK
下载略 可以上oracle官网下载 我这里使用的是JDK8
配置/etc/profile,我这里jdk地址为/usr/local/jdk1.8.0_211/
JAVA_HOME=/usr/local/jdk1.8.0_211/
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
2.安装elasticsearch
wget http://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.1.0-x86_64.rpm
rpm -ivh elasticsearch-7.1.0-x86_64.rpm
3.配置elasticsearch
/etc/elasticsearch/elasticsearch.yml
#集群名称
cluster.name: my-application
#节点名称
node.name: node-3
#是否有资格成为主节点
node.master: true
#是否是数据节点
node.data: true
#数据和日志路径,更改路径后需要授权该路径的用户和组为elasticsearch
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
#节点IP
network.host: 192.168.57.7
#节点端口
http.port: 9200
#集群地址设置,配置之后集群之间主机可以自动发现
discovery.zen.ping.unicast.hosts: ['192.168.57.3','192.168.57.4','192.168.57.7']
#节点数目相关配置,为了防止脑裂 这个数据位节点总数/2+1,
discovery.zen.minimum_master_nodes: 2
#配置几个节点回复集群可以正常工作,数目和上面一样
gateway.recover_after_nodes: 2
#head插件相关配置
http.cors.enabled: true
http.cors.allow-origin: "*"
启动es
systemctl start elasticsearch
4.安装elasticsearch-head插件
安装node
下载地址 http://nodejs.org/en/download/
tar xvf node-v10.15.3-linux-x64.tar.xz -C /opt/
配置/etc/profile
export NODEJS_HOME=/opt/node-v10.15.3-linux-x64
export PATH=$PATH:$JAVA_HOME/bin:$NODEJS_HOME/bin
执行以下命令加载node
source /etc/profile
node -v 查看版本 是否安装成功
下载elasticsearch-head
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head/
npm install -g cnpm --registry=http://registry.npm.taobao.org
cnpm install
修改Gruntfile.js
connect: {
server: {
options: {
hostname: '0.0.0.0', #增加这一行,可以监听本地IP
port: 9100,
base: '.',
keepalive: true
}
}
}
vim _site/app.js
找到如下代码
this.base_uri = this.config.base_uri this.prefs.get("app-base_uri") "http://localhost:9200";
更改为
this.base_uri = this.config.base_uri this.prefs.get("app-base_uri") "http://192.168.57.3:9200"; #你其中一台es主机的IP地址
启动
npm run start
elasticsearch集群安装
http://www.jcwit.com/article/165/