IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> elasticsearch 7 集群搭建 -> 正文阅读

[大数据]elasticsearch 7 集群搭建

先准备 集群环境和安装包,elasticsearch 的集群搭建很方便,不需要任何第三方的支持,只需要再配置文件里配置一些参数即可。

一、虚拟机的话先关防火墙

systemctl stop firewalld
systemctl disable firewalld

二、没有java 需要安装java (1.8版本或以上)

腾讯、阿里云服务器安装java全流程(yum安装java超简单详细版)_Swing_yue的博客-CSDN博客_服务器怎么安装java
参考:

https://blog.csdn.net/Swing_yue/article/details/121194673?spm=1001.2014.3001.5501

三、安装elasticsearch


下载安装包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.2.1-linux-x86_64.tar.gz


解压

tar -xzf elasticsearch-7.2.1-linux-x86_64.tar.gz -C /usr/local/


然后去到这个文件夹下

cd /usr/local/elasticsearch-7.2.1/


进入cofig目录修改elasticsearch.yml配置文件?

vim elasticsearch.yml?


#修改内容
?

#集群名称(此名称在任何节点的配置文件下都是一致的)
cluster.name: my-application
#节点名称(这里需要修改,第一个节点是 node-1,配置第二个节点的时候就是 node-2)
node.name: node-1
#是不是有资格主节点
node.master: true
#是否存储数据
node.data: true
#最?集群节点数
node.max_local_storage_nodes: 3
#?关地址
network.host: 0.0.0.0
#端?
http.port: 9200
#内部节点之间沟通端?
transport.tcp.port: 9300
#es7.x 之后新增的配置,写?候选主节点的设备地址,在开启服务后可以被选为主节点
# 部署在一个服务器用于测试的的伪分布式就用不同的端口,真分布式的话自行修改ip地址
discovery.seed_hosts: ["localhost:9300","localhost:9400","localhost:9500"]
#es7.x 之后新增的配置,初始化?个新的集群时需要此配置来选举master
cluster.initial_master_nodes: ["node-1", "node-2","node-3"]
#数据和存储路径
path.data: /usr/local/elasticsearch-7.2.1/data
path.logs: /usr/local/elasticsearch-7.2.1/logs


去掉前边的 # 然后修改内容就好。

特别是network.host: 0.0.0.0 配置,次配置为允许任何ip地址访问。

然后修改 jvm.options 配置文件

vim jvm.options


#因为是在虚拟机进行安装的ES,所以内存不是很大建议修改一下。若是生产环境不用修改
?

-Xms128m
-Xmx128m


ok

尝试启动

如果是root账号登录的话,是不能够启动的,elasticsearch有安全保护,这点很恶心。

需要用别的用户启动,如果没有或者不知道别的用户名密码就创建一个新的。

adduser test //创建一个账号为 test 的用户
passwd test //为test用户设置密码
//这里需要输入两遍密码,如果密码输入过于简单的时候,会提示密码简单,可以忽略继续设置
chown -R test /usr/local/elasticsearch-7.2.1/ //给test用户赋予操作此文件夹的权限
su test // 使用 test账户操作,如果是 su root 意为使用 root用户操作


然后进入bin目录下启动

sh elasticsearch //为直接执行
sh elasticsearch -d //为后台执行。


我们先直接运行,可以看到日志信息。

启动时提示建议更高版本,可以忽略,不影响正常启动和使用。

?第一次启动报错内存不够。

需要切换回root账户修改两个地方,如果是从root账户su 到其他的用户下,可以直接 exit回到 root用户。

vi /etc/security/limits.conf


//增加4个变量 然后 :wq 保存
?

* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096 

vim /etc/sysctl.conf


//增加1个变量然后 :wq 保存
?

vm.max_map_count = 262145


刷新配置:

source /etc/profile


然后用 test 用户再次启动

如果还是报错,用 reboot 命令重启一下,再次启动就好。

然后按照此种方法,重复做就好,如果需要三台服务,那就做三遍,需要注意的是,在修改elasticsearch.yml配置文件的时候,将#节点名称 node.name: node-1 改掉。如果是伪集群,还需要把端口改成不同的,比如?node-1 节点是9200,node-2节点就改成9201.

集群互相访问的端口可以改为9300,9400这样,至于该成什么干个人需要,不冲突就好。

另外一点就是discovery.seed_hosts要改成自己配置节点的ip地址和端口号。

需要注意:这个ip地址为节点之间相互沟通的端口transport.tcp.port: 9300

不是外部访问的端口http.port: 9200
discovery.seed_hosts: ["localhost:9300","localhost:9400","localhost:9500"]

cluster.initial_master_nodes 改为对应的节点名称。

cluster.initial_master_nodes: ["node-1", "node-2","node-3"]

三台集群启动完成后打开浏览器输?:

http://localhost:9200/_cat/health?v

,如果返回的node.total是3,代表集 群搭建成功

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-04-18 17:49:30  更:2022-04-18 17:51:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 2:50:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码