在同一台机器上配置哨兵模式, 可用于测试开发场景 下载redis wget https://github.com/redis/redis/archive/5.0.10.tar.gz 解压到三个文件夹, redis-1, redis -2, redis-3 进行 make 编译, 参考这里 在本机上配置哨兵模式, 重点是使用不同的端口 redis服务 redis端口 哨兵端口 主从 redis-1 6379 26379 主节点 redis /redis-2/src/redis-server ./redis-2/redis.conf > /dev/null 2>&1 & ./redis-3/src/redis-server . /redis-2/src/redis-sentinel ./redis-2/sentinel.conf ./redis-3/src/redis-sentinel . /redis-2/src/redis-cli -a 10010 shutdown .
RESTARTS AGE redis-0 1/1 Running 0 1m redis-1 1/1 Running 0 1m redis -- redis-cli 接下来,在Redis命令行界面中,输入以下命令以向集群添加节点: cluster meet <redis-1 IP address> 6379 cluster meet <redis -2 IP address> 6379 其中,<redis-1 IP address>和<redis-2 IP address>是另外两个Redis实例的IP地址。
前置条件 redis -- 主服务器 127.0.0.1:6379 redis-2 -- 从服务器 127.0.0.1:6380 2. 通过 redis monitor 命令查看两台服务器的信息 主服务器 redis -- 127.0.0.1:6379 从服务器 redis-2 -- 127.0.0.1:6380 9. 前置条件 redis -- 主服务器 127.0.0.1:6379 redis-2 -- 从服务器 127.0.0.1:6380 2. 从服务器 redis-2:可以看到一条 set zp xxxxxx 命令,源地址是主服务器地址,此命令为主从同步。还有一条 get zp,此命令为提供读服务的命令。
0000000000000000000000000000000000000002 --appendonly yes --cluster-announce-ip 172.18.0.3docker run -d --name redis run -d --name redis-1 --net redis-sentinel redis redis-server --appendonly yesdocker run -d --name redis /redis_1:/data networks: - redis-cluster redis-2: image: redis command: redis-server /usr/local
redis/redis.conf; [root@iZ2zeir6vcnpz8qw3t455tZ ~]# docker run -p 6372:6379 -p 16372:16379 --name redis docker-entrypoint.s…" 3minutes ago Up 3minutes 0.0.0.0:6372->6379/tcp, 0.0.0.0:16372->16379/tcp redis 7、测试高可用 [root@iZ2zeir6vcnpz8qw3t455tZ ~]# docker stop redis-2 redis-2 [root@iZ2zeir6vcnpz8qw3t455tZ
172.28.0.11 redis:6.0.5 redis-server /etc/redis/redis.conf docker run -p 6372:6379 -p 16372:16379 --name redis 6374 192.168.200.129:6375 192.168.200.129:6376 --cluster-replicas 1 set name Stephen // docker stop redis
环境介绍 系统:CentOS7.6 采用三主三从方式 主机 ip地址 端口 redis-1 10.110.10.3 6379、6380、6381 redis-2 10.110.10.4 6382、6383 00:00:00 /usr/local/redis/bin/redis-server 10.110.10.3:6381 [cluster] 15.根据以上方法同样部署redis-2,然后启动各个节点 [
-alpine3.11 redis-server /etc/redis/redis.conf # 容器2 docker run -p 6372:6379 -p 16372:16379 --name redis Stephen -> Redirected to slot [5798] located at 172.28.0.12:6379 OK 停止容器 停止刚添加缓存的对应的redis节点 docker stop redis
alpine3.11 redis-server /etc/redis/redis.conf 第二个服务: docker run -p 6372:6379 -p 16372:16379 --name redis
-alpine3.11 redis-server /etc/redis/redis.conf # 容器2 docker run -p 6372:6379 -p 16372:16379 --name redis Stephen -> Redirected to slot [5798] located at 172.28.0.12:6379 OK 停止容器 停止刚添加缓存的对应的redis节点 docker stop redis
redis.conf \ -d -p 8001:8001 redis:5.0.12 redis-server /etc/redis/redis.conf sudo docker run --name redis
-v /data/redis-1:/usr/local/redis redis redis-server /usr/local/redis/redis-1.confdocker run --name redis -2 -p 6380:6380 -d -v /data/redis-2:/usr/local/redis redis redis-server /usr/local/redis/redis-2.confdocker
docker-entrypoint.s…" About a minute ago Up About a minute 0.0.0.0:6372->6379/tcp, 0.0.0.0:16372->16379/tcp redis
hours 0.0.0.0:6372->6379/tcp, :::6372->6379/tcp, 0.0.0.0:16372->16379/tcp, :::16372->16379/tcp redis
local/redis-cluster目录, 安装6个redis实例,分别安装在以下目录 /usr/local/redis-cluster/redis-1 /usr/local/redis-cluster/redis local/redis-cluster/redis-1/bin[root@localhost redis-3.0.0]# cp redis.conf /usr/local/redis-cluster/redis
hours 0.0.0.0:6372->6379/tcp, :::6372->6379/tcp, 0.0.0.0:16372->16379/tcp, :::16372->16379/tcp redis
例如之前的示例, 当发现Redis-2没有做好内存预估, 实际只用了不到2GB内存, 而Redis-1实例需要扩容到6GB内存才够用, 这时可以分别执行如下命令进行调整: Redis-1>config set maxmemory 6GB Redis-2>config set maxmemory 2GB 如果此时Redis-3和Redis-4实例也需要分别扩容到6GB, 这时超出系统物理内存限制就不能简单的通过调整
1 Running 0 3d redis-1 1/1 Running 0 3d redis
REDIS_CONF.host) redisClient.on('error', err=>{ console.log('redis error', err) }) 12-3 介绍redis-nodejs操作redis
connection-timeout: 20000 redis: cluster: nodes: - redis-1:6379 - redis