Redis高可用
redis的docker部署以及主从集群等配置
InterestingFigure
Salted fish in hand, I have the world.
展开
-
docker启动的时候提示WARNING: IPv4 forwarding is disabled. Networking will not work.
前言在启动docker的时候提示警告 WARNING: IPv4 forwarding is disabled. Networking will not work.# docker run --name eduweb -dp 8801:8080 eduWARNING: IPv4 forwarding is disabled. Networking will not work.设置sy...原创 2019-12-27 14:50:36 · 369 阅读 · 0 评论 -
Docker搭建Redis集群(Redis Cluster)
概述集群搭建准备:至少6个节点才能构成高可用的集群。集群也实现了自动的故障转移。配置文件路径:Redis集群配置文件前提无论是在redis-server 5.x版本,还是老的ruby创建集群的方式, 在create cluster的环节是不能配置redis密码的,如果设置了密码,redis-cli --cluster create会报用户认证失败的错误解决方法:在搭建集群时去除所有r...原创 2019-12-27 09:57:47 · 230 阅读 · 0 评论 -
sentinel不能监测到slave
我把从节点的密码设置的和主节点的不一样,而且sentinel.conf的sentinel auth-pass mymaster abc123密码是主节点的密码,导致哨兵一直让从节点主观下线。但是主从还是可以使用。只是哨兵检测到的从节点是下线状态。我把从节点的密码和主节点的密码还有哨兵配置的密码写成一样就好了。...原创 2019-12-26 18:16:28 · 1571 阅读 · 1 评论 -
Redis主从配置
通过 info replication 命令可以看到复制的一些参数信息从数据库配置 1) slaveof < masterip > < masterport > slave实例需要配置该项, 指向master的( ip, port ) 。 2) masterauth <master-password> 如果master实例启用了密码保护, 则...原创 2019-11-28 14:35:43 · 226 阅读 · 0 评论 -
Redis高可用-哨兵-Sentinel
主从复制没有实现高可用,当主机 Master 宕机以后, 我们需要人工解决切换, 比如使用 slaveof no one 。高可用侧重备份机器, 利用集群中系统的冗余, 当系统中某台机器发生损坏的时候, 其他后备的机器可以迅速的接替它来启动服务。哨兵机制的原理及实现Redis Sentinel 一个分布式架构, 其中包含若干个 Sentinel 节点和 Redis 数据节点,每个 Sent...原创 2019-11-28 16:43:15 · 224 阅读 · 0 评论 -
Redis持久化
持久化的功能Redis是内存数据库, 数据都是存储在内存中, 为了避免进程退出导致数据的永久丢失, 需要定期将Redis中的数据以某种形式(数据或命令)从内存保存到硬盘。当下次Redis重启时, 利用持久化文件实现数据恢复。除此之外, 为了进行灾难备份, 可以将持久化文件拷贝到一个远程位置。Redis持久化分为RDB持久化和AOF持久化, 前者将当前数据保存到硬盘, 后者则是将每次执行的写...原创 2019-11-28 15:34:38 · 100 阅读 · 0 评论 -
7.Redis集群(Redis Cluster)
xxx原创 2019-11-04 15:25:08 · 86 阅读 · 0 评论 -
6.Redis-哨兵机制
xxx原创 2019-11-04 15:24:23 · 111 阅读 · 0 评论 -
5.Redis优化及配置
Redis所有的数据都在内存中,而内存又是非常宝贵的资源。常用的内存优化方案有如下几部分: 一. 配置优化 二. 缩减键值对象 三. 命令处理 四. 缓存淘汰方案...原创 2019-11-04 15:22:26 · 300 阅读 · 0 评论 -
4. Redis持久化
概述Redis持久化 分为RDB持久化和AOF持久化,前者将当前数据保存到硬盘,后者则是将每次执行的写命令保存到硬盘。RDBRDB是一种快照存储持久化方式,具体就是将Redis某一时刻的内存数据保存到硬盘的文件当中,默认保存的文件名为dump.rdb,而在Redis服务器启动时,会 重新加载dump.rdb文件的数据到内存当中恢复数据。 触发 RDB 持久化过程分为手动触发和自动触发。RD...原创 2019-11-04 15:22:00 · 141 阅读 · 0 评论 -
3.Redis主从复制的一些概念
主要事项如果没有设置密码需要关闭保护模式才能被外部访问,如果Redis设置了密码(requirepass)则不需要修改保护模式protected-mode no主从复制的作用数据冗余、故障恢复:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复。读写分离、负载均衡:可以用于实现读写分离,主库写、从库读,读写...原创 2019-11-04 14:56:13 · 276 阅读 · 0 评论 -
3.Redis使用docker-compose编排的最终docker-compose.yaml文件
docker-compose.yaml这里编排了两个redis,在使用之前,我们配置了两个目录:/usr/local/redis/master/usr/local/redis/slave其中/usr/local/redis/master下新建子目录存放redis.conf:/usr/local/redis/master/config/redis.conf/usr/loca...原创 2019-11-04 13:02:27 · 997 阅读 · 2 评论 -
2.Redis使用docker-compose进行主从配置
先把我之前的docker删掉docker rm name/id查看运行的容器docker ps docker ps -q(-q是只查看ID)查看所有容器docker ps -a docker ps -a -q(-q是只查看ID)删除全部容器的命令docker stop $(docker ps -q) 关闭所有运行中的容器docker rm $(docker ps -a -q) ...原创 2019-11-04 12:42:11 · 403 阅读 · 0 评论 -
1.Redis在Docker中运行
镜像选择https://hub.docker.com/_/redis查看最新的docker镜像是版本5+的,对应的配置文件和之前版本的有所区别,需要特别注意下。准备好宿主机的目录为什么要准备宿主机的目录,主要是为了防止容器自身出现问题导致数据丢失,另外也可以在外部访问数据。在外部给他准备了三个目录/usr/local/redis/master/config 挂载到容器内的 /etc/r...原创 2019-11-04 11:00:55 · 239 阅读 · 0 评论