elastic 集群安装
Elastic Search 安装和配置
1.下载
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.3.tar.gz
2.解压
tar -vxf elasticsearch-6.5.3.tar.gz
3.启动
cd /usr/elasticsearch-6.5.3/
4.开启端口
firewall-cmd --permanent --add-port=9200/tcp
sudo firewall-cmd --reload
5.启动
sh ./bin/elasticsearch
ElasticSearch后台启动命令
sh ./bin/elasticsearch -d
a.启动报错
java.lang.RuntimeException: can not run elasticsearch as root
这是出于系统安全考虑设置的条件。由于ElasticSearch可以接收用户输入的脚本并且执行,为了系统安全考虑,
建议创建一个单独的用户用来运行ElasticSearch
解决办法
1.创建elsearch用户组及elsearch用户
groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch
#chown -R [用户]:[所属组] 目录
chown -R elsearch:elsearch elasticsearch-6.5.3/
#切换账户
su elsearch
2.异常描述为不能以root权限运行Elasticsearch.解决办法是运行时加上参数: in/elasticsearch -Des.insecure.allow.root=true
3.修改bin/elasticsearch,加上ES_JAVA_OPTS属性:ES_JAVA_OPTS="-Des.insecure.allow.root=true"
b.外网不能访问
修改config/elasticsearch.yml 保证外网可以访问
添加 network.host: 0.0.0.0 表示所有用户可访问
c.max_map_count过小
错误“max virtual memory areas vm.max_map_count [65530]is too low, increase to at least [262144]”,max_map_count文件包含限制一个进程可以拥有的VMA(虚拟内存区域)的数量,系统默认是65530,修改成262144。解决方法是修改/etc/sysctl.conf配置文件,添加vm.max_map_count=262144
vi /etc/sysctl.conf
d. max file descriptors过小
错误“max file descriptors [65535] for elasticsearchprocess is too low, increase to at least [65536]”,maxfile descriptors为最大文件描述符,设置其大于65536即可。解决方法是修改/etc/security/limits.conf文件,添加“* - nofile 65536 * - memlock unlimited”,“*”表示给所有用户起作用
vi /etc/security/limits.conf
e. failed to obtain node locks
删除data目录下的数据
继承head插件
1.下载
wget https://github.com/mobz/elasticsearch-head/archive/master.zip
2.解压
yum install -y unzip zip
unzip master.zip
3.下载node.js
wget https://nodejs.org/dist/v10.14.2/node-v10.14.2-linux-x64.tar.xz
4.解压
tar -xvf node-v10.14.2-linux-x64.tar.xz
5.修改配置文件
修改 /etc/profile
export NODE_HOME=/usr/node-v10.14.2-linux-x64
export PATH=$PATH:$NODE_HOME/bin
export NODE_PATH=$NODE_HOME/lib/node_modules
刷新
source /etc/profile
6.执行
cd elasticsearch-head-master
npm install
安装过程中出现错误 phantomjs-prebuilt@2.1.14 install: `node install.js`
#忽略脚本继续进行安装
npm install phantomjs-prebuilt@2.1.14 --ignore-scripts
最终安装成功!成功后当前目录多了一个node_modules文件夹。。
7编辑
vi Gruntfile.js
修改es配置文件
cd /usr/elasticsearch-6.5.3/config
#Centos6不支持SecComp,而elasticsearch-6.1.2默认bootstrap.system_call_filter为true进行检测
bootstrap.system_call_filter: false
#允许跨域不然elasticsearch head不能访问
http.cors.enabled: true
http.cors.allow-origin: "*"
启动
cd /usr/elasticsearch-head-master
npm run start
cd /usr/elasticsearch-6.5.3/
su elsearch
sh ./bin/elasticsearch
配置 Elastic Search 集群
es 数据 #elasticsearch-cluster/elasticsearch-6.5.2/data
es 程序日志 #/usr/elasticsearch-cluster/elasticsearch-6.5.2/logs
es gc 日志 # /usr/elasticsearch-cluster/elasticsearch-6.5.2/logs
es heap dump 路径 # /usr/elasticsearch-cluster/elasticsearch-6.5.2/es_heap_dump
es java io 临时路径 # /usr/elasticsearch-cluster/elasticsearch-6.5.2/es_java_io
1、内存配置
-Xms400m
-Xmx400m
从节点1
cluster.name: es_cluster
node.name: slave1
node.master: true
node.master: true
http.port: 8200
transport.tcp.port: 9302
path.data: /usr/elasticsearch-cluster/elasticsearch-6.5.2/data
path.logs: /usr/elasticsearch-cluster/elasticsearch-6.5.2/logs
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]
discovery.zen.minimum_master_nodes: 2
discovery.zen.ping_timeout: 120s
client.transport.ping_timeout: 60s
从节点2
cluster.name: es_cluster
node.name: slave2
node.master: true
path.data: /usr/elasticsearch-cluster/elasticsearch-6.5.1/data
path.logs: /usr/elasticsearch-cluster/elasticsearch-6.5.1/logs
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]
http.port: 7200
transport.tcp.port: 9301
discovery.zen.minimum_master_nodes: 2
discovery.zen.ping_timeout: 120s
client.transport.ping_timeout: 60s
解释:
1.1:http.cors.enabled: true 允许跨域访问,为了配合elasticsearch-head可视化ES界面
http.cors.allow-origin: "*" 允许所有地址跨域访问
1.2:network.host: 0.0.0.0 此项配置为了主机能访问虚拟机
1.3:cluster.name: pionner 非常重要,配置集群名称,所有节点必须一样,否则节点发现不了集群
1.4:node.master: true 表名此节点允许成为主节点
node.name: slave1 节点名称
1.5:http.port: 8200 节点在web上发布端口号,默认是9200,由于单机多节点配置,建议指定一个
transport.tcp.port: 9301 节点通信端口,由于ES各节点之间互相访问,默认9300,单机多节点建议指定
1.6:discovery.zen.ping_timeout: 120s 设置集群中自动发现其他节点时ping的超时时间,默认3s,网络比较差可以提高此 值,以防止发现其他节点时出错,发生脑裂。
client.transport.ping_timeout: 60s
1.7: discovery.zen.minimum_master_nodes: 2 规则为n/2+1,告诉该节点,其他可以作为主节点的个数
1.8:discovery.zen.ping.unicast.hosts: ["192.168.0.110:9300","192.168.0.110:9302"] 其他节点的地址端口号,注意端口号为 节点通信端口,不要配置成web发布端口了
elastic 集群安装的更多相关文章
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十七)Elasticsearch-6.2.2集群安装,组件安装
1.集群安装es ES内部索引原理: <时间序列数据库的秘密(1)—— 介绍> <时间序列数据库的秘密 (2)——索引> <时间序列数据库的秘密(3)——加载和分布式计算 ...
- Centos7中ELK集群安装流程
Centos7中ELK集群安装流程 说明:三个版本必须相同,这里安装5.1版. 一.安装Elasticsearch5.1 hostnamectl set-hostname elk vim /e ...
- 【ELK】【docker】【elasticsearch】1. 使用Docker和Elasticsearch+ kibana 5.6.9 搭建全文本搜索引擎应用 集群,安装ik分词器
系列文章:[建议从第二章开始] [ELK][docker][elasticsearch]1. 使用Docker和Elasticsearch+ kibana 5.6.9 搭建全文本搜索引擎应用 集群,安 ...
- elasticsarch5.4集群安装
越来越多的企业已经采用ELK解决方案来对其公司产生的日志进行分析,笔者最近着手在生产环境部署自己的ELK stack,本文介绍ELK中elasticsearch5.2集群的实现. 一.环境准备 1.系 ...
- 批量搞机(二):分布式ELK平台、Elasticsearch介绍、Elasticsearch集群安装、ES 插件的安装与使用
一.分布式ELK平台 ELK的介绍: ELK 是什么? Sina.饿了么.携程.华为.美团.freewheel.畅捷通 .新浪微博.大讲台.魅族.IBM...... 这些公司都在使用 ELK!ELK! ...
- 【Oracle 集群】Oracle 11G RAC教程之集群安装(七)
Oracle 11G RAC集群安装(七) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总. ...
- kafka集群安装部署
kafka集群安装 使用的版本 系统:centos6.5 centos6.7 jdk:1.7.0_79 zookeeper:3.4.9 kafka:2.10-0.10.1.0 一.环境准备[只列,不具 ...
- CentOS下Hadoop-2.2.0集群安装配置
对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...
- Hadoop多节点集群安装配置
目录: 1.集群部署介绍 1.1 Hadoop简介 1.2 环境说明 1.3 环境配置 1.4 所需软件 2.SSH无密码验证配置 2.1 SSH基本原理和用法 2.2 配置Master无密码登录所有 ...
随机推荐
- 在IE中检查控件是否安装成功
步骤: 1.打开图片上传页面 2.打开IE加载项 3.在加载项中可以看到加载的控件 4.点击详细信息,查看文件名称和文件位置
- (转)使用Jquery+EasyUI进行框架项目开发案例讲解之一---员工管理源码分享
原文地址:http://www.cnblogs.com/huyong/archive/2013/09/24/3334848.html 使用Jquery+EasyUI 进行框架项目开发案例讲解之一 员工 ...
- 如何恢复VS2013代码实时校验功能
VS2013在某一天突然无法进行实时代码校验了,只有在编译的时候,错误列表才显示语法错误 怎么来解决这个问题呢?试试环境重置吧. 首先:打开工具菜单,选择“导入和导出设置”. 其次:可以先导出选定 ...
- Windows下配置Visualsvn Server时需要注意的几点事项
1配置用户组与用户 用户组的权限高于用户的权限, 如果一个用户只有只读权限,同时被加入了拥有写权限的用户组中,此用户可以执行写操作. 2在Pre-commit hook下增加 强制添加注释的钩子脚本 ...
- android和.net webservice中的DES加密算法
也是看了一堆的例子,本身并不会写加密算法,好在只要会用就行了,我们把在app中使用的参数加密,然后在.net端的webservice中进行解密,本身并没有什么问题,但是android下和.net下的d ...
- ping包,支持ip录入
@echo off ::等待用户输入需要监控IP set /p ip=Input the IP required to monitor: echo executing...... :start ech ...
- 多态的作用-游戏编程展示------新标准c++程序设计
游戏软件的开发最能体现面向对象设计方法的优势.游戏中的人物.道具.建筑物.场景等都是很直观的对象,游戏运行的过程就是这些对象相互作用的过程.每个对象都有自己的属性和方法,不同对象也可能有共同的属性和方 ...
- k8s学习笔记(一)
你将学到什么 如何部署k8s集群 网络拓扑 主机名 网络地址 角色 study 92.0.0.50(内网) 192.168.203.250/19(外网) Master fnode 92.0.0.16( ...
- jquery $.each()循环退出
$.each()循环跳出,应该用return 来返回 在each代码块内不能使用break和continue,要实现break和continue的功能的话,要使用其它的方式:break----用ret ...
- JavaScript定位导航滚动2
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...