redis 集群搭建
下载安装redis
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
tar xzf redis-5.0.3.tar.gz
cd redis-5.0.3
make
- 创建文件夹redis_cluster
进入刚刚安装的src目录复制图中文件到resis_cluster,redis.conf 在redis-5.0.3目录下。


*集群用6个服务器,三主三从,进入redis_cluster文件夹创建六个文件夹,将resdis.conf复制六份分别放进去。
cd redis_cluster
mkdir 700{1..6}
cp redis.conf 7001 //自行复制其他的

- 修改redis.conf
修改redis.conf文件。
port 7001 #端口
cluster-enabled yes #此redis实例作为集群的一个节点
cluster-node-timeout 15000 #节点能够失联的最大时间
appendonly yes
daemonize yes #后台运行
protected-mode no #非保护模式
cluster-config-file nodes-7001.conf #集群配置文件,系统自动维护,不能人工编辑,主要记录集群中有哪些节点,状态等参数
pidfile /var/run/redis_7001.pid #redis以守护进程方式运行时,系统默认会把pid写入/var/run/redis_7001.pid
port对应7001-7006
cluster-config-file对应nodes-7001.conf-nodes-7006.conf
pidfile对应/var/run/redis_7001.pid - redis_7006.pid
启动redis
./redis-server 7001/redis.conf

执行以下命令
echo 'net.core.somaxconn= 1024' >> /etc/sysctl.conf
echo 'vm.overcommit_memory=1' >> /etc/sysctl.conf
echo '/sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local
sysctl -p
关闭节点1
./redis-cli -p 7001 shutdown
依次启动节点
cd redis_cluster
./redis-server 7001/redis.conf
./redis-server 7002/redis.conf
./redis-server 7003/redis.conf
./redis-server 7004/redis.conf
./redis-server 7005/redis.conf
./redis-server 7006/redis.conf

启动集群
./redis-cli --cluster create 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7006 --cluster-replicas 1


简单测试
./redis-cli -c -h 127.0.0.1 -p 7003
set name cc
./redis-cli -c -h 127.0.0.1 -p 7002
get name

三主三从的集群搭建完成