常用知识点问答

目录

ELK 的工作原理

ELK优化

ELK组件

Zabbix工作原理

redis主从复制流程

集群模式的原理

集群怎么工作的

redis主从复制、哨兵模式、集群模式的区别

redis集群端口号16379;26379哨兵端口号;redis6379


ELK 的工作原理

  • 在所有需要收集日志的服务器上部署 Logstash;或者先将日志进行集中化管理在日志服务器上,在日志服务器上部署 Logstash。
  • Logstash 收集日志,将日志格式化并输出到 Elasticsearch 群集中。
  • Elasticsearch 对格式化后的数据进行索引和存储。
  • Kibana 从 ES 群集中查询数据生成图表,并进行前端数据的展示。

ELK优化

logstash优化:

  • 加大服务器内存和JVM堆内存
  • 用多实例做负载均衡
  • 使用filebeat替代logstash采集日志数据

elasticsearch优化:

  • 对索引进行优化:优化fsync,适当加大刷盘间隔时间
  • 优化write线程池配置,减少拒绝任务的情况
  • 锁定内存,不让ES使用swap
  • 适当的减少索引的分片数、副本数

ELK组件

Logstash

  • 负责采集日志数据,通过插件模块对日志数据进行过滤、格式化处理,再输出给ElasticSearch
  • 支持多实例部署,由input、filter、output插件模块组成

ElasticSearch

  • 负责对日志数据进行分片、存储,并创建索引,方便全文检索
  • 集群化部署,节点分三种类型:master/data/client;通过设置相同的集群名称cluster.name,并使用Zen Discovery发现模块实现单播列表中的节点发现

Kibana

  • 用于接入ElasticSearch的数据源,将日志数据进行图形化展示,方便用户通过浏览器查看、搜索、分析日志

Filebeat

  • 用于替代Logstash采集日志数据,优点:比Logstash更轻量,资源消耗更少

Fluentd

  • 也是Logstash的一种替代方案,可用于替代Logstash采集日志数据和过滤转换等功能,常用于收集K8S环境中的容器日志

Kafka/Redis

  • 作为消息队列MQ,实现流量销峰、缓冲、应用解耦等功能

Zabbix工作原理

  • zabbix agent 等代理端会定期采集被监控主机的指标数据并发送给 zabbix server,zabbix server 接收数据后会存储带 zabbix database 中,管理员可基于 zabbix web 在浏览器页面查看监控数据的图像

redis主从复制流程

  • 首次同步:当从节点要进行主从复制时,它会发送一个SYNC命令给主节点。主节点收到SYNC命令后,会执行BGSAVE命令来生成RDB快照文件,并在生成期间使用缓冲区记录所有写操作。
  • 快照传输:当主节点完成BGSAVE命令并且快照文件准备好后,将快照文件传输给从节点。主节点将快照文件发送给从节点,并且在发送过程中,主节点会继续将新的写操作缓冲到内存中。
  • 追赶复制:当从节点收到快照文件后,会加载快照文件并应用到自己的数据集中。一旦快照文件被加载,从节点会向主节点发送一个PSYNC命令,以便获取缓冲区中未发送的写操作。
  • 增量复制:主节点收到PSYNC命令后,会将缓冲区中未发送的写操作发送给从节点,从节点会执行这些写操作,保证与主节点的数据一致性。此时,从节点已经追赶上了主节点的状态。
  • 同步:从节点会继续监听主节点的命令,并及时执行主节点的写操作,以保持与主节点的数据同步。主节点会定期将自己的操作发送给从节点,以便从节点保持最新的数据状态.

集群模式的原理

  • 集群有多组节点,每组节点负责一部分哈希,
  • 读写数据时,先针对key根据crc16的算法得出一个结果,然后把结果对 16384 取余。通过这个值去找到对应的哈希槽的节点,进行数据读写。
  • 集群每组节点内做主从复制,当主节点宕机的时候,就会启用从节点。主节点负责读写请求和集群信息的维护:从节点负责主节点数据和状态信息的复制

集群怎么工作的

  • 先用crc16算法对键进行计算。得到一个数字,然后对这个数字除以16384取余数,得到键的hash槽,自动跳转到hash槽所在的节点进行数据的操作

redis主从复制、哨兵模式、集群模式的区别

  • 主从复制可以实现数据的备份,读的负载均衡,但是无法自动故障恢复,哨兵可以实现主节点故障的自动恢复;哨兵无法解决写的负载均衡,而集群模式可以解决(集群是多个组,可以相互跳转进行负载均衡的写入);为什么能解决单机存储的问题,集群通过数据分片的方式,将数据分散存储在各个节点充分利用每个节点的空间

redis集群端口号16379;26379哨兵端口号;redis6379

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值