REDIS的集群模式:
- 主从模式:redis高可用的基础,哨兵和集群都是建立在此基础之上
特点 :
主从模式和数据库的主从模式(工作模式)是一样的,主负责写入,然后把写入到数据同步到从,从节点只能读不能写 -------- read only
缺点 :
不能做高可用的切换,主节点出现故障,没有替换的主节点
高可用的设备数量一般都是奇数台
- 哨兵模式:在主从模式的基础之上,引入了故障切换的模式
哨兵模式也是一个分布式的集群结构,对主从结构当中的每台服务器仅监控,当出现故障时,通过投票的机制选择一个新的master,被选举出的新的master会将所有的从节点重新连接到自己,从节点会自动同步到主,自动变成只读模式
在配置哨兵模式第一次的时候,我们是人工的定义好主从的
sentinel monitor mymaster 1092.168.31.21 6379 2
#人工定义主的服务器
2的含义:当主节点发生故障,必须要有两个从节点同意,才能进行主节点的故障迁移
sentinel down-after-milliseconds mymaster 30000
判断服务器宕机的时间周期是30000毫秒 --------- 30秒
sentinel failover-timeout mymaster 18000
故障节点的最大超时时间 180000 -------- 18秒
- class集群
redis-cluster:集群是由多个节点组成,redis的数据分布在节点中,集群当中的每个节点又分主和从
主负责写,从负责读
0-16383个hash的槽位:
-
A ········· 0-5460
hash ······key············> test1 =1 test2 =2 test3 =3 -
B ········· 5461-10922
-
C ········· 10923-16383
cluster-replicas 1
#表示每个主节点对应一个从节点。
root@redis1:-# redis-cli -h 192.168.233.7 -p 6379
#是连接到Redis服务器的命令
192.168.233.7:6379> set test10 10
#是尝试在Redis中设置键值对的命令
(error) MOVED 9248 192.168.233.14:6379
#是一个错误信息,表示键已经被移动到另一个节点(192.168.233.14:6379)
redis的集群模式,只是满足高可用,不能实现数据同步
对数据同步要求很高的场景,选择redis的主从和哨兵模式
重点:
-
redis的数据类型
-
redis的数据操作 ------ 增删改查
-
持久化类型AOF和RDB
-
redis的集群
-
主从和哨兵*
-
集群:按照hash的槽位来分配读写的主节点,集群创建完成之后,两两配对,自动实现主从模式
ELK + FILEBEAT + KAFKA:
ELK:统一日志收集系统
ELASTICSEARCH:分布式全文索引引擎的非关系型数据库,用来存储所有的日志信息,主和从,最少需要2台设备
LOGSTASH:动态的从各种指定的数据源,获取数据,而且对数据进行过滤,分析,按照统一的格式发送到es
KIBANA:把es的数据进行展示,进行客户端可以理解的操作,汇总,分析和搜索数据的平台
物理服务器的架构:
8核 16G/32G ----------- cpu和内存
16核 /32G
硬盘:500G 机械硬盘
1T 固态
品牌:华为、ibm
echo 3 > /proc/sys/vm/drop_caches(清理缓存)
input {
file{
path=>"/var/log/syslog"
type=>"system"
start_position=>"beginning"
}
}
logstash -f system.conf --path.data /opt/test1 &
-f file
从指定文件开始收集
--path.data /opt/test1 每启动一个logstash 就会有一个数据文件,默认都在/var/log/logstash
logstash:logstash是一个重量级的工具,占用很大的内存空间
只能收集本机的服务,没有办法远程发送