redis集群搭建 不用ruby
redis 从5开始 可以直接用redis-cli命令创建集群了,不用那么麻烦 安装ruby环境
redis配置文件需要修改的地方
port 7000
cluster-enabled yes
cluster-config-file nodes.7000.conf
cluster-node-timeout 5000
appendonly yes
mkdir /usr/local/cluster
cd /usr/local/cluster/
cd cluster/
mkdir 7000 7001 7002 7003 7004 7005
cd 7000/
cp /www/server/redis/redis.conf ./
vim redis.conf 修改一个配置 然后复制到其他目录
cp redis.conf ../7001/
cp redis.conf ../7002/
cp redis.conf ../7003/
cp redis.conf ../7004/
cp redis.conf ../7005/
vim ../7001/redis.conf
vim ../7002/redis.conf
vim ../7003/redis.conf
vim ../7004/redis.conf
vim ../7005/redis.conf
替换各自端口为其他的 vim 下 :%s/7000/7001/s
vim start.sh 一个个启动太麻烦,脚本一次性启动
#!/bin/bash /www/server/redis/src/redis-server /usr/local/cluster/7000/redis.conf
/www/server/redis/src/redis-server /usr/local/cluster/7001/redis.conf
/www/server/redis/src/redis-server /usr/local/cluster/7002/redis.conf
/www/server/redis/src/redis-server /usr/local/cluster/7003/redis.conf
/www/server/redis/src/redis-server /usr/local/cluster/7004/redis.conf
/www/server/redis/src/redis-server /usr/local/cluster/7005/redis.conf
chmod +x start.sh
./start.sh
ps -ef|grep redis
[root@localhost cluster]# ps -ef|grep redis
root 10279 1 0 11:46 ? 00:00:01 /www/server/redis/src/redis-server 0.0.0.0:7000 [cluster]
root 10340 1 0 11:47 ? 00:00:01 /www/server/redis/src/redis-server 0.0.0.0:7001 [cluster]
root 10346 1 0 11:47 ? 00:00:01 /www/server/redis/src/redis-server 0.0.0.0:7002 [cluster]
root 10352 1 0 11:47 ? 00:00:01 /www/server/redis/src/redis-server 0.0.0.0:7003 [cluster]
root 10358 1 0 11:47 ? 00:00:01 /www/server/redis/src/redis-server 0.0.0.0:7004 [cluster]
root 10364 1 0 11:47 ? 00:00:01 /www/server/redis/src/redis-server 0.0.0.0:7005 [cluster]
root 10945 21050 0 11:58 pts/2 00:00:00 grep --color=auto redis
[root@localhost cluster]#
启动集群
redis-cli --cluster create 192.168.33.60:7000 192.168.33.60:7001 192.168.33.60:7002 192.168.33.60:7003 192.168.33.60:7004 192.168.33.60:7005 --cluster-replicas 1
root@localhost cluster]# redis-cli --cluster create 192.168.33.60:7000 192.168.33.60:7001 192.168.33.60:7002 192.168.33.60:7003 192.168.33.60:7004 192.168.33.60:7005 --cluster-replicas 1
>>> Performing hash slots allocation on 6 nodes...
Master[0] -> Slots 0 - 5460
Master[1] -> Slots 5461 - 10922
Master[2] -> Slots 10923 - 16383
Adding replica 192.168.33.60:7004 to 192.168.33.60:7000
Adding replica 192.168.33.60:7005 to 192.168.33.60:7001
Adding replica 192.168.33.60:7003 to 192.168.33.60:7002
>>> Trying to optimize slaves allocation for anti-affinity
[WARNING] Some slaves are in the same host as their master
M: 22df8c4f2763a3d40c5533893333608df1e0b792 192.168.33.60:7000
slots:[0-5460] (5461 slots) master
M: 4bdf950bbcaa37ff8aa159894c169b4c9fa0b056 192.168.33.60:7001
slots:[5461-10922] (5462 slots) master
M: 93a97e0e58375b38ff4639de2e597e1adb675b83 192.168.33.60:7002
slots:[10923-16383] (5461 slots) master
S: f68d2dde12b03b84251d69006d845cdfeaeaeb88 192.168.33.60:7003
replicates 93a97e0e58375b38ff4639de2e597e1adb675b83
S: 6e2feeb4ee991d69adae953d47932291bb174445 192.168.33.60:7004
replicates 22df8c4f2763a3d40c5533893333608df1e0b792
S: c0c7a26a69b09cad5d78e78c8d0c7eb327fbf8f5 192.168.33.60:7005
replicates 4bdf950bbcaa37ff8aa159894c169b4c9fa0b056
Can I set the above configuration? (type 'yes' to accept): yes
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join
.
>>> Performing Cluster Check (using node 192.168.33.60:7000)
M: 22df8c4f2763a3d40c5533893333608df1e0b792 192.168.33.60:7000
slots:[0-5460] (5461 slots) master
1 additional replica(s)
S: f68d2dde12b03b84251d69006d845cdfeaeaeb88 192.168.33.60:7003
slots: (0 slots) slave
replicates 93a97e0e58375b38ff4639de2e597e1adb675b83
S: 6e2feeb4ee991d69adae953d47932291bb174445 192.168.33.60:7004
slots: (0 slots) slave
replicates 22df8c4f2763a3d40c5533893333608df1e0b792
S: c0c7a26a69b09cad5d78e78c8d0c7eb327fbf8f5 192.168.33.60:7005
slots: (0 slots) slave
replicates 4bdf950bbcaa37ff8aa159894c169b4c9fa0b056
M: 93a97e0e58375b38ff4639de2e597e1adb675b83 192.168.33.60:7002
slots:[10923-16383] (5461 slots) master
1 additional replica(s)
M: 4bdf950bbcaa37ff8aa159894c169b4c9fa0b056 192.168.33.60:7001
slots:[5461-10922] (5462 slots) master
1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
[root@localhost cluster]#
查看集群状态
redis-cli -h 127.0.0.1 -c -p 7000 info replication
redis-cli -h 127.0.0.1 -c -p 7001 info replication
redis-cli -h 127.0.0.1 -c -p 7002 info replication
redis-cli -h 127.0.0.1 -c -p 7003 info replication
redis-cli -h 127.0.0.1 -c -p 7004 info replication
redis-cli -h 127.0.0.1 -c -p 7005 info replication
[root@localhost logs]# redis-cli -h 127.0.0.1 -c -p 7002 info replication
# Replication
role:master
connected_slaves:1
slave0:ip=192.168.33.60,port=7003,state=online,offset=1344,lag=0
master_replid:f1b66456b6204b293b39702faea1dee558929070
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:1344
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:1344
结果 0 1 2 为主 3 4 5 为从
现在kill掉0 试试
kill之前我看了 4是从
[root@localhost logs]# redis-cli -h 127.0.0.1 -c -p 7004 info replication
# Replication
role:slave
master_host:192.168.33.60
master_port:7000
master_link_status:up
master_last_io_seconds_ago:4
master_sync_in_progress:0
slave_repl_offset:1330
slave_priority:100
slave_read_only:1
connected_slaves:0
master_replid:4d2c448c8477544dccfa20b248ce37351a725293
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:1330
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:1330
kill之后 在看 4变成主了
[root@localhost logs]# redis-cli -h 127.0.0.1 -c -p 7004 info replication
# Replication
role:master
connected_slaves:0
master_replid:ddf63dedae765e3612002687217d63b20c7356ab
master_replid2:4d2c448c8477544dccfa20b248ce37351a725293
master_repl_offset:1470
second_repl_offset:1471
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:1470
设置值 连接7001
127.0.0.1:7003> set name wang
-> Redirected to slot [5798] located at 192.168.33.60:7001
OK
192.168.33.60:7001>
7002上get
127.0.0.1:7002> get name
-> Redirected to slot [5798] located at 192.168.33.60:7001
"wang"
192.168.33.60:7001>
https://www.jianshu.com/p/a1e62e78667c
https://segmentfault.com/a/1190000017151802
redis集群搭建 不用ruby的更多相关文章
- redis集群搭建及设置账户(转)
Redis集群搭建以及为集群设置密码 介绍安装环境与版本 用两台虚拟机模拟6个节点,一台机器3个节点,创建出3 master.3 salve 环境. redis 采用 redis-3.2.4 版本. ...
- 分享知识-快乐自己:redis集群搭建
Redis介绍: 1.开源的NoSql数据库 2.C语言编写 3.基于内存运行,并且支持持久化 4.Key value存储 5.是主流的Nosql数据库之一 Redis优点: 1.内存使用方面,表现优 ...
- redis集群搭建(简单简单)一台机器多redis
redis集群搭建 在开始redis集群搭建之前,我们先简单回顾一下redis单机版的搭建过程 下载redis压缩包,然后解压压缩文件: 进入到解压缩后的redis文件目录(此时可以看到Makef ...
- 新手redis集群搭建
redis集群搭建在开始redis集群搭建之前,我们先简单回顾一下redis单机版的搭建过程 下载redis压缩包,然后解压压缩文件:进入到解压缩后的redis文件目录(此时可以看到Makefile文 ...
- 25.redis集群搭建笔记
###Redis集群### 0.准备 软件: redis-3.0.0.gem redis-3.0.0.tar.gz#源码 1.安装ruby环境 redis基于ruby槽位计算,hash算法技术,k ...
- Redis 集群搭建详细指南
先有鸡还是先有蛋? 最近有朋友问了一个问题,说毕业后去大城市还是小城市?去大公司还是小公司?我的回答都是大城市!大公司! 为什么这么说呢,你想一下,无论女孩男孩找朋友都喜欢找个子高胸大的.同样的道理嘛 ...
- 二、redis集群搭建
redis集群搭建 redis3.0后支持集群.集群中应该至少有三个节点,每个节点有一备份节点.需要6台服务器.搭建伪分布式,需要6个redis实例.搭建集群的步骤: 一.安装单机版redis 第一步 ...
- redis集群搭建及注意事项
上一篇:redis的安装及注意事项 这里,在一个Linux虚拟机上搭建6个节点的redis伪集群,思路很简单,一台虚拟机上开启6个redis实例,每个redis实例有自己的端口.这样的话,相当于模拟出 ...
- Linux Redis集群搭建与集群客户端实现(Python)
硬件环境 本文适用的硬件环境如下 Linux版本:CentOS release 6.7 (Final) Redis版本: Redis已经成功安装,安装路径为/home/idata/yangfan/lo ...
随机推荐
- jenkins安装和邮件配置
一.jenkins下载 Jenkins的下载地址是https://jenkins.io/download/,下载的时候可以选择各个版本的以及对应操作系统的版本,一般你下载的时候下载通用的.war文件即 ...
- kickstart半自动安装centos系统与pxe自动安装centos系统
一.kickstart半自动安装centos系统 关闭防火墙,关闭selinux,使用system-config-kickstart生成kickstart配置文件,启动xmanger-Passive ...
- 【小白学PyTorch】12 SENet详解及PyTorch实现
文章来自微信公众号[机器学习炼丹术].我是炼丹兄,有什么问题都可以来找我交流,近期建立了微信交流群,也在朋友圈抽奖赠书十多本了.我的微信是cyx645016617,欢迎各位朋友. 参考目录: @ 目录 ...
- 如何在项目中使用composer的相关功能
最近要在公司的magento项目中引用第三方库,用了composer来进行管理,composer还是非常方便的: 1.在应用的根目录下添加文件:composer.json { "nam ...
- Final终态类和Finally
- 1.10HDFS 回收站机制
- 容器云平台No.5~企业级私有镜像仓库Harbor V2.02
镜像仓库 仓库,顾名思义,就是存放东西的地方,Docker仓库,理所当然,就是存放docker镜像的地方了. Docker仓库分公有仓库和私有仓库.共有仓库有hub.docker.com.gcr.io ...
- kali一些基础工具
目录 netcat netcat https://blog.csdn.net/fageweiketang/article/details/82833193 网络工具当中的瑞士军刀 -nc指令,nc可以 ...
- Centos-当前登录用户信息- w who
w who 显示当前登录系统的用户,但w显示的更为详细 who 相关参数 # 默认输出 用户名.登录终端.登录时间 -a 列出所有信息 -b 系统最近启动日期 -m 当前终端信息,相当于 w ...
- selenium3介绍
1. 简介 Selenium是用于测试 Web应用程序用户界面 (UI)的常用框架.它是一款用于运行端到端功能测试的超强工具.您可以使用多个编程语言编写测试,并且 Selenium能够在一个或多个浏 ...