本地虚拟机搭建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 二. 修改网络配 ...
随机推荐
- oracle导入失败,超出长度
oracle导入失败,超出长度 出现ORA-12899,是字符集引起的,中文在UTF-8中占3个字节,ZHS16GBK中占2个字节,而源dmp文件字符集是ZHS16GBK库里倒出来的数据,现在要导入到 ...
- 【笔记7-部署发布】从0开始 独立完成企业级Java电商网站开发(服务端)
阿里云服务 购买 连接 购买域名 域名备案 域名解析 源配置步骤 资源地址 http://learning.happymmall.com/ 配置阿里云的yum源 1.备份 mv /etc/yum.re ...
- Linux 一些有用的能力
编程能力 Linux产生于一群真正的黑客.尽管人们习惯于认为Linus是Linux的缔造者,在linux包含的数以千计的文件中,也有一个名为Credits的文件记录了主要的Linux Hacker们的 ...
- linux克隆多台虚拟机后网络无法识别更无法连接上网的解决方法
本人近期学习LINUX,想克隆多台CENTOS来练习在LINUX下安装软件,配置环境.因为对系统不是很熟悉,就想保持一个纯净版本,如果系统玩坏了就删除再重新克隆一个继续配置,以节省时间.后来发现,克隆 ...
- 吴裕雄--天生自然Numpy库学习笔记:NumPy 数组属性
NumPy 数组的维数称为秩(rank),秩就是轴的数量,即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(di ...
- CSS的精灵技术
- iOS 10.3 以上系统实现应用内评分及开发者回复评论
在 iOS 10.3 之前,如果你要给一个应用评分,那么你需要打开 App Store,搜索应用,找到评论,点击撰写评论,然后评分.整个评分流程非常繁琐,还要忍受漫长的页面加载,导致很少有用户愿意主动 ...
- N-tier architecture N层架构 (转)
下面的内容既有我的理解,也有翻译的内容,翻译的书名为: <<Expert C# 2008 Business Objects >>http://www.douban.com/su ...
- Vue系列(六)之常用指令v-model
v-model 基本使用 修饰符 .trim .number .lazy 前面讲到的插值,其实都是单向绑定,数据变-->视图变.有些元素可以与用户交互,比如input,select等,那么我们希 ...
- day5-1继承
继承: Constructor属性和prototype属性的关系: 创建了自定义的构造函数之后,其原型对象默认会取得constructor属性:当调用构造函数创建一个新实例后,该实例的内部将包含一个指 ...
<>方式二:安装ElasticSearch-Head.crx查看