首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
ELK介绍
ELK-单机部署Elasticsearch
ELK-部署Elasticsearch集群
ELK数据管理工具ES-Head部署
ELK数据管理工具ES-Head应用
ELK-数据管理
ELK-Logstash日志收集
ELK-beats数据采集
ELK-kibana数据展示
ELK收集nginx access_log日志
ELK-收集mysql slow 日志
当前位置:
首页>>
技术小册>>
构建可视化数据分析系统-ELK
小册名称:构建可视化数据分析系统-ELK
单节点的ES需要在处理大量数据的时候需要消耗大量内存和CPU资源,数据量大到一定程度就会产生处理瓶颈,甚至会出现宕机。为了解决单节点ES的处理能力的瓶颈及单节点故障问题,我们考虑使用ES集群。 ## 一、ES集群的优点: 优化数据处理能力:通过多台ES共同处理数据,提升处理能力,节省时间。 容错能力增强:解决了ES单点故障问题,让架构更稳定。 数据安全:分布式数据存储,数据更安全 **实验部署准备** 两台ES机器:node1、node2 同步时间:chrony 静态IP:192.168.98.201 192.168.98.202 关闭防火墙、selinux 配置ES yum源 ``` 准备工作参考https://www.zutuanxue.com/home/4/52_138 - ELK学习准备 ``` ## 二、集群部署 部署步骤: 1. node1、node2安装jdk、Elasticsearch软件包 2. node1、node2设置配置文件配置集群 3. 启动ES验证集群 ### 2.1、软件包安装 ``` 软件包安装,机器node1 node2 以node1为例 jdk安装通过rpm软件包 [root@node1 ~]# rpm -ivh jdk-13.0.2_linux-x64_bin.rpm Elasticsearch安装通过rpm软件包 [root@node1 ~]# rpm -ivh elasticsearch-7.6.0-x86_64.rpm ``` ### 2.2、node1、node2设置配置文件配置集群 ``` 配置文件修改 [root@node1 ~]# egrep -v "(^#|^$)" /etc/elasticsearch/elasticsearch.yml cluster.name: zutuanxue_elk 集群名称,所有节点必须一样 node.name: node1 节点名称 #node.master: true 定义为主 path.data: /var/lib/elasticsearch 数据路径 path.logs: /var/log/elasticsearch 日志路径 network.host: 0.0.0.0 监听地址 http.port: 9200 监听端口 discovery.seed_hosts: ["node1", "node2"] 可扫描监控的主机 cluster.initial_master_nodes: ["node1", "node2"] 开启服务的时候谁可以竞选为主[第一次启动集群] node2配置文件 [root@node2 elasticsearch]# egrep -v "(^#|^$)" /etc/elasticsearch/elasticsearch.yml cluster.name: zutuanxue_elk node.name: node2 path.data: /var/lib/elasticsearch path.logs: /var/log/elasticsearch network.host: 192.168.98.202 discovery.seed_hosts: ["node1", "node2"] cluster.initial_master_nodes: ["node1", "node2"] 拓展 当您想要与其他主机上的节点组成群集时,你必须使用 discovery.seed_hosts 来提供群集中可以成为master ,可能存在并且可以连接到的其他节点的列表,使得 discovery process 能够发现节点)。此设置通常应包含群集中所有可以成为master节点的地址。需要注意的是,IPv6主机必须放在括号内。此设置的默认值为127.0.0.1,[::1]。 cluster.initial_master_nodes 当你第一次启动全新的Elasticsearch集群时,会有一个集群引导(cluster bootstrapping)步骤,这个步骤会确定一个在第一次选举中投票被计数的、并且可以成为master节点的集合。 cluster.initial_master_nodes参数说明:es7 引用了 [Bootstrapping a cluster](https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-discovery-bootstrap-cluster.html) 后,首次启动Elasticsearch集群需要在集群中的一个或多个符合主节点的节点上显式定义初始的符合主节点的节点集。这称为群集自举,这仅在群集首次启动时才需要。 ``` ### 2.3 启动ES验证集群 ``` 启动ES [root@node1 ~]# systemctl restart elasticsearch [root@node2 ~]# systemctl restart elasticsearch 确保服务正常启动:端口正常打开 ``` ### 2.4 集群测试 web站点测试方法:http://192.168.98.201:9200/_cluster/health?pretty ![](/uploads/images/20231231/bee207eae6d71e3a4b6b130e1feb66dc.png) ``` 页面输出介绍 { "cluster_name" : "zutuanxue_elk", #集群名称 "status" : "green", #集群状态 "timed_out" : false, #超时设置 "number_of_nodes" : 2, #集群节点数量 "number_of_data_nodes" : 2, #集群数据节点数量 "active_primary_shards" : 0, "active_shards" : 0, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 0, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 100.0 } ```
上一篇:
ELK-单机部署Elasticsearch
下一篇:
ELK数据管理工具ES-Head部署
该分类下的相关小册推荐:
Linux内核技术实战
高并发系统设计核心
Docker容器实战部署
RocketMQ入门与实践
虚拟化之KVM实战
Linux零基础到云服务
高并发架构实战
从零开始学微服务
Redis入门到实战
Web安全攻防实战(下)
Web安全攻防实战(上)
Linux云计算网站集群架构之存储篇