本地虚拟机搭建ES集群
一、环境说明
1、物理机信息(主要):
内存:8G
系统/主频:Win7(旗舰版)64位/3.70GHZ
2、虚拟机信息:
VMware Workstation 14 Pro
下载地址: 链接:https://pan.baidu.com/s/1X4RtZdQxL6HWGH1pAYyBhg 提取码:26iv
3、镜像信息:
CentOS-7-x86_64-DVD-1804.iso
下载地址:http://ftp.sjtu.edu.cn/centos/7/isos/x86_64/
4、ElasticSearch:
版本:elasticsearch-6.5.3.tar.gz
下载地址:https://www.elastic.co/downloads/elasticsearch
二、安装步骤
1、安装VMware/系统镜像
具体安装步骤参考:https://blog.csdn.net/alan_gaohaodong/article/details/79867052
说明:
<> 为后期操作方便建议将"GONME桌面"安装上
<> 如果在内网环境安装,建议全量安装(即"开发工具"、"安全性工具"、"传统X Windows系统的兼容性"、"调试工具"等安装上)
<> 本次需要3个ES节点,故需要创建3个虚拟机 2、配置通信网络(root用户登录操作)
最终目标:物理机与3个虚拟机之间互相ping通、3个虚拟机之间互相ping通
<> 设置网络连接模式为 NAT
<> 设置IP(实际环境文件名:ifcfg-eth0 文件示例)
vi /etc/sysconfig/network-scripts/ifcfg-ens33
生效:重启系统 命令:reboot
假设配置的三台虚拟机地址分别为:192.168.1.1 192.168.1.2 192.168.1.3
<> 设置主机名
vi /etc/hostname 新增如下内容
如果当前主机IP为192.168.1.1,则新增es1
如果当前主机IP为192.168.1.2,则新增es2
如果当前主机IP为192.168.1.3,则新增es3
<> 配置主机名、IP映射关系
vi /etc/hosts 新增如下内容
192.168.1.1 es1
192.168.1.2 es2
192.168.1.3 es3
<> 开放端口(9200:与ES通信的http端口 5601:与kibana通信的http端口)
查询端口是否开放:firewall-cmd --query-port=9200/tcp
开放9200端口:firewall-cmd --zone=public --add-port=9200/tcp --permanent
生效:firewall-cmd --relaod
解决问题:通过curl或者浏览器不能访问ES(集群)节点 3、虚拟机系统配置
说明:a、3个虚拟机都需要配置 b、以root用户登录操作
<> limits.conf
vi /etc/security/limits.conf 新增如下内容
* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096
避免问题: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
<> 20-nproc.conf
vi /etc/security/limits.d/20-nproc.conf 修改
* soft nproc 4096
* hard nproc 4096
避免问题: max number of threads [3764] for user [xx] is too low, increase to at least [4096];
<> sysctl.conf
vi /etc/sysctl.conf 新增如下内容
vm.max_map_count = 655360
执行操作,更新生效:sysctl -p
避免问题:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
<> 关闭防火墙
查看防火墙状态:firewall-cmd --state
关闭防火墙:systemctl stop firewalld.service
参考:https://blog.csdn.net/qq_34077993/article/details/82889558
避免问题:org.elasticsearch.discovery.MasterNotDiscoveredException: waited for [30s] 4、创建用户
说明:a、3个虚拟机都需要配置 b、以root用户登录操作
创建用户组:groupadd es
创建用户: useradd es -g es
更改密码: passwd es 5、创建安装包、数据、日志存放目录
说明:a、3个虚拟机都需要配置 b、以root用户登录操作
<> 创建软件包存放位置,如
mkdir /app/es
<> 创建数据存放目录,如
mkdir /app/es/data
<> 创建日志存放目录,如
mkdir /app/es/log
说明: <> <> 可以一起创建
命令:mkdir /app/es/data /app/es/log
<> 为上述目录赋es用户相关权限
chown -R es:es /app 6、上传、解压软件包(elasticsearch-6.5.3.tar.gz)至上述目录(es用户操作)
解压elasticsearch-6.5.3.tar.gz
cd /app/es/
tar -zxvf elasticsearch-6.5.3.tar.gz elasticsearch-6.5.3 7、配置elasticsearch.yml(es用户操作)
<> 进入elasticsearch解压后的目录
cd /app/es/elasticsearch-6.5.3/config
vi elasticsearch.yml
编辑内容 参见附件:
说明:
a、改一个节点的elasticsearch.yml,其他节点可直接远程复制,只用修改节点名称、节点IP2个地方即可
b、远程复制命令:scp -r 用户名@主机名:源文件路径 源文件存放路径
<> 主要配置项说明
cluster.name: 集群名(一个集群所有节点的集群名称必须一致)
node.name: 节点名(不同节点,名称不能一致)
node.master: 主节点(true:是 false:不是)
node.data: 存储数据(true:存储 false:不存储)
node.ingest: 参与选举(true:参与 false:不参与)
path.data: 数据存放路径
path.logs: 日志存放路径
bootstrap.memory_lock: 避免内存交换(需设置为false),参考:https://elasticsearch.cn/article/149
bootstrap.system_call_filter: Centos6不支持SecComp---需设置为false,如果为CentOS7则可设置为true
network.host: 节点ip
http.port: 节点端口
transport.tcp.port: 节点之间通信端口
http.cors.enabled: 跨域访问(一般为true)
http.cors.allow-origin: 跨域访问(一般为"*")
discovery.zen.ping.unicast.hosts: 主节点:节点通信端口 数组形式呈现 示例["192.168.1.1:9300","192.168.1.2:9300"]
注意:示例中 192.168.1.1和192.168.1.2 两个节点node.master、node.ingest这两个属性都得为true
discovery.zen.minimum_master_nodes: 设置最小主节点个数,一般为:(master_node_count+1)/2 说明:master_node_count:设置node.master=true的节点个数
8、启动ES集群(es用户操作)
<> 进入es1(节点1)elasticsearch解压目录bin路径下,示例:
cd /app/es/elasticsearch-6.5.3/bin
<> 启动
./elasticsearch &
<> 启动另外两个节点
三、验证
<>方式一:浏览器
http://192.168.1.1:9200/_cat/nodes?v
示例:
<>方式二:安装ElasticSearch-Head.crx查看
示例:
![]()
参考:
https://elasticsearch.cn/article/6152
https://blog.csdn.net/gamer_gyt/article/details/59077189
https://blog.csdn.net/qq_22211217/article/details/80740873 (centos7下部署elasticsearch常见错误)
https://www.cnblogs.com/zhi-leaf/p/8484337.html (ES启动常见错误)
https://blog.csdn.net/wanderstarrysky/article/details/52924434
https://blog.csdn.net/zx110503/article/details/78787483 (端口开放)
本地虚拟机搭建ES集群的更多相关文章
- virtualbox 虚拟3台虚拟机搭建hadoop集群
用了这么久的hadoop,只会使用streaming接口跑任务,各种调优还不熟练,自定义inputformat , outputformat, partitioner 还不会写,于是干脆从头开始,自己 ...
- Kubernetes 搭建 ES 集群(存储使用 cephfs)
一.集群规划 使用 cephfs 实现分布式存储和数据持久化 ES 集群的 master 节点至少需要三个,防止脑裂. 由于 master 在配置过程中需要保证主机名固定和唯一,所以搭建 master ...
- Kubernetes 搭建 ES 集群(存储使用 local pv)
一.集群规划 由于当前环境中没有分布式存储,所以只能使用本地 PV 的方式来实现数据持久化. ES 集群的 master 节点至少需要三个,防止脑裂. 由于 master 在配置过程中需要保证主机名固 ...
- 虚拟机搭建Hadoop集群
安装包准备 操作系统:ubuntu-16.04.3-desktop-amd64.iso 软件包:VirtualBox 安装包:hadoop-3.0.0.tar.gz,jdk-8u161-linux-x ...
- 搭建ES集群
服务版本选择 TEG的ctsdb当前最高版本采用的是es的6.4.3版本,为了日后与ctsdb衔接方便,部署开源版es时也采用该版本.6.4.3版本的es依赖的jdk版本要求在8u181以上,测试环境 ...
- ELK搭建<一>:搭建ES集群
1.首先进入官网下载ES,如果下载最新之前的版本 点击past releases就行了. 2.解压后进入config修改配置文件elasticsearch.yml #集群名称 cluster.name ...
- Docker搭建ES集群
Spring Boot连接ES,spring-boot-starter-data-elasticsearch. 必须为集群方式!否则报错! 报错: None of the configured nod ...
- 在本地模拟搭建zookeeper集群环境实例
先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.org/doc/r3.4.6/zookeeperOver.html Get ...
- Mac上使用虚拟机搭建Hadoop集群
一. mini安装一台centos到虚拟机上 安装过程参考这篇博客http://www.linuxdown.net/install/setup/2015/0906/4053.html 二. 修改网络配 ...
随机推荐
- try catch和if else
当错误发生时,当事情出问题时,JavaScript 引擎通常会停止,并生成一个错误消息.描述这种情况的技术术语是:JavaScript 将抛出一个错误. try 语句允许我们定义在执行时进行错误测试的 ...
- js中substr、substring、indexOf、lastIndexOf的用法
substr substr(start,length)表示从start位置开始,截取length长度的字符串 var str="imgs/header_2.jpg"; consol ...
- opencv python:ROI 与 泛洪填充
提取ROI区域,处理然后放回去: 泛洪填充 测试代码:显示一张图像,鼠标点击之后,会从该点开始进行填充,显示填充后的结果图像 注:二值图像的填充需要使用选项:cv2.FLOODFILL_MASK_ON ...
- POJ 3987 Computer Virus on Planet Pandora (AC自动机优化)
题意 问一个字符串中包含多少种模式串,该字符串的反向串包含也算. 思路 解析一下字符串,简单. 建自动机的时候,通过fail指针建立trie图.这样跑图的时候不再跳fail指针,相当于就是放弃了fai ...
- 【渗透测试】Squirrelmail远程代码执行漏洞+修复方案
最近网上有点不太平,爆出各种漏洞,等下会把近期的漏洞复现一下,发出来.安全圈的前辈总是默默的奉献,在这里晚辈们只能站在巨人的肩膀上,跟紧前辈们的步伐,走下去. -------------------- ...
- 小程序云函数调用webservice接口
https://www.jianshu.com/p/2692e56251ac 小程序最近新出来了云开发能力,主要依赖了node.js(运行在服务器上的js),可以让我们在没有服务器的情况下,使用云开发 ...
- Manacher算法--O(n)回文子串算法
转自:http://blog.csdn.net/ggggiqnypgjg/article/details/6645824 O(n)回文子串算法 注:转载的这篇文章,我发现下面那个源代码有点bug... ...
- 2016-2017学年第三次测试赛 问题 F: 签到题
问题 F: 签到题 时间限制: 1 Sec 内存限制: 128 MB提交: 80 解决: 28 提交统计讨论版 题目描述 在计算机网络考试中, 黑帅男神看到一个将IP网络分类的题, 精通C++的他 ...
- lc 0222
目录 ✅ 191. 位1的个数 描述 解答 cpp py ✅ 107. 二叉树的层次遍历 II 描述 解答 c todo 观赏 0222 py ✅ 806. 写字符串需要的行数 描述 解答 cpp j ...
- 运营商如何关闭2G、3G网络?这事儿得从小灵通说起
5G时代即将全面开启,主流声音是对未来的无限畅想--5G将带来翻天覆地的变化.不过凡事都有利弊两面性,5G作为新生事物固然大有可为,但不可避免地会对旧事物造成巨大冲击.除了会影响很多跟不上潮流发展的行 ...
<>方式二:安装ElasticSearch-Head.crx查看