linux下部署Elasticsearch6.8.1版本的集群
一、准备工作
安装包的下载:elasticsearch-6.8.1.tar.gz
集群服务器:A B
一、单节点elasticsearch的安装部署
a、进入es的下载目录home:解压tar包
tar -zxvf elasticsearch-6.8.1.tar.gz
b、将解压后的目录名elasticsearch-6.8.1 修改为elasticsearch:
cd /home
进入elasticsearch的config目录下,修改elasticsearch.yml:修改配置文件的IP、端口信息
cd elasticsearch/config
node.name: node-163
node.master: true
node.data: true
path.logs: /home/elastic/logs
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
network.host: 10.68.120.163
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
详细截图如下:

c、添加用户,因为启动es需要单独创建用户:
useradd elastic -g elastic -p elasticsearch
chown -R elastic.elastic elasticsearch/ (递归修改权限)
chmod 777 elasticsearch/ bin/
su elastic (切换用户)
d、进入 elasticsearch 的bin目录下执行 ./elasticsearch 。如果日志中没有ERROR标志的错误,说明启动成功,./bin/elasticsearch -d (-d为在后台启动,不加-d时可以看到启动过程,出现started时启动完成)
e、验证是否成功。关闭防火墙(systemctl stop firewalld),然后在浏览器中访问192.168.80.129:9200 ,或者 curl 192.168.80.129:9200,如下所示启动成功

三、elasticsearch集群的安装部署
a、主节点:
进入到es目录下,解压3份elasticsearch安装包,分别改名es-master,es-slave1。主节点目录结构:

修改主节点的配置文件:修改es-master/config下的elasticsearch.yml 如下格式:此时主节点默认的端口号为9200.
http.cors.enabled: true
http.cors.allow-origin: "*"
cluster.name: kainan(和其他几个节点的名字一样)
node.name: master
node.master: true
network.host: 主节点的IP地址
详细截图如下:

b、子节点:子节点目录结构:

修改子节点的配置文件:修改es-slave1/config下的elasticsearch.yml 如下格式:此时子节点默认的端口号为8200,如果手动配置,冒号后面要加空格
cluster.name: kainan(与主节点相同)
node.name: slave1
network.host: 子节点IP地址
http.port: 8200
discovery.zen.ping.unicast.hosts: ["主节点IP地址"]
详细截图如下:

如果存在多个节点配置安装目录结构与节点1相同即可。
c、给文件夹赋权限
添加用户:
groupadd elastic
adduser -g elastic -d /home/elastic elastic
chown :chown 777 elasticsearch/ bin/
chmod:chown -R elastic.elastic elastic
当主节点与子节点修改完用户权限后即可启动es。
d、启动es。切换elastic用户,先启动master,再启动slave1等子节点服务器
切换用户:su elastic
进入es的安装目录的bin目录下执行:./elasticsearch -d
四、elasticsearch集群的安装部署的常见报错
问题1:[2018-08-07T11:35:38,130][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-001] uncaught exception in thread [main]

原因:elasticsearch不支持root用户登录,新增用户并切换到其他用户启动es服务。
问题2:[2018-11-16T13:53:00,839][WARN ][o.e.b.JNANatives ] unable to install syscall filter: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk bootstrap checks failed
解决版本:一般在配置文件中新增:bootstrap.system_call_filter: false
问题3:2020-06-08 09:50:26,077 main ERROR RollingFileManager (/home/elastic/es-master/logs/note1.log) java.io.FileNotFoundException: /home/elastic/es-master/logs/note1.log (Permission denied) java.io.FileNotFoundException: /home/elastic/es-master/logs/note1.log (Permission denied)
原因:一般由于提示文件的权限不足导致,需要给提示文件修改用户组。
问题4:uncaught exception in thread [main]

原因:发现了另一个 elasticsearch 服务,ps -ef |grep elasticsearch 虽然不清楚是如何启动的,kill 掉即可:

linux下部署Elasticsearch6.8.1版本的集群的更多相关文章
- 解决linux下部署科大讯飞时的版本过低问题
在将项目部 署到阿里云服务器之后,需要将科大讯飞SDK下的libmsc64.so依赖库文件上传至/usr/java/jdk1.8.0_121/jre/lib/amd64路径下 在Windo ...
- 【k8s学习笔记】使用 kubeadm 部署 v1.18.5 版本 Kubernetes集群
说明 本文系搭建kubernetes v1.18.5 集群笔记,使用三台虚拟机作为 CentOS 测试机,安装kubeadm.kubelet.kubectl均使用yum安装,网络组件选用的是 flan ...
- linux下实现redis共享session的tomcat集群
为了实现主域名与子域名的下不同的产品间一次登录,到处访问的效果,因此采用rediss实现tomcat的集群效果.基于redis能够异步讲缓存内容固化到磁盘上,从而当服务器意外重启后,仍然能够让sess ...
- 二进制部署1.23.4版本k8s集群-5-部署Master节点服务
1.安装Docker 在21.22.200三台机器上安装Docker.安装命令: 在21.22.200三台主机上部署Docker. ~]# curl -fsSL https://get.docker. ...
- linux下一个apache+tomcat负载均衡和集群
先说一下我的环境 一个ubuntu虚拟机, 一个apache2.2示例 两tomcat1.7示例 1.安装apacheserver sudo apt-get install apache2 假设要重新 ...
- linux下安装 zookeeper-3.4.9并搭建集群环境
本文主要记录作者在实践过程中实现在centos7环境下安装zookeeper并搭建集群的详细步骤,关于zookeeper本文将不做详细介绍,安装步骤详情如下: 前提准备:3台linux服务器(因为zo ...
- Linux下Apache与Tomcat的完全分布式集群配置(负载均衡)
最近公司要给客户提供一套集群方案,项目组采用了Apache和Tomcat的集群配置,用于实现负载均衡的实现. 由于以前没有接触过Apache,因此有些手生,另外在网上搜寻了很多有关这方面的集群文章,但 ...
- 二进制部署1.23.4版本k8s集群-6-部署Node节点服务
本例中Master节点和Node节点部署在同一台主机上. 1 部署kubelet 1.1 集群规划 主机名 角色 IP CFZX55-21.host.com kubelet 10.211.55.21 ...
- 二进制部署1.23.4版本k8s集群-1-系统安装及环境准备
1. 致谢 这篇文章参考了老男孩王导的视频,在此表示感谢和致敬! 2. 安装CentOS操作系统 系统镜像:CentOS-7-x86_64-DVD-2009.iso 安装过程略. 3. 环境准备 3. ...
随机推荐
- Pikachu-php反序列化、XXE、SSRF模块
一.PHP反序列化 理解这个漏洞需要明白php中的两个函数,serialize(),unserialize() 1)序列化serialize()序列化说通俗点就是把一个对象变成可以传输的字符串,比如下 ...
- HttpClient调用doGet、doPost、JSON传参及获得返回值
调用 doPost:map传参 Map<String,Object> map = new HashMap<>(); map.put("test"," ...
- canvas——绘制解锁图案
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 读《深入理解java虚拟机》小结
之所以学习 jvm ,是因为在学习多线程相关知识时,对 volatile 关键字理解的不够透彻,总有种似懂非懂的感觉.于是通过在网上各种资料的查阅,最终将 volatile 和 jvm 联系上了,本身 ...
- Ubuntu 16.04 + python3 源码 安装+使用labelImg最新版
安装 sudo apt-get update sudo apt-get upgrade sudo apt install python3-pip git clone https://github.co ...
- python--接口自动化经常用到的pytest框架
pytest常用的方法和原理 1.pytest的原理 pytest插件基于pluggy模块:pluggy有三个重要概念:HookspecMarker(用来定义hook函数),HookimplMarke ...
- Android Jetpack基本架构之ViewModel+LiveData+DataBinding入门
前提:导入所有依赖,开启DataBinding app的build.gradle android { defaultConfig { ... dataBinding { enabled true } ...
- BUUCTF-[CISCN2019 总决赛 Day2 Web1]Easyweb
BUUCTF-[CISCN2019 总决赛 Day2 Web1]Easyweb 就给了一个这个... 先打上robots.txt看看 发现有源码备份,但不是index.php.bak... 看源码发现 ...
- Ajax重构
Ajax重构简介 Ajax的实现主要依赖于XMLHttpRequest对象,但是在调用其进行异步数据传输时,由于XMLHttpRequest对象的实例在处理事件完成后就会被销毁,所以如果不对该对象进行 ...
- css 边框添加三角形指向,简单粗暴,易学易懂
构建一个 div , class 随便命名 css 部分 class 名字 { position: relative; // 相对定位是重点 } class名字:before,class名字:afte ...