Redis 3主-3从集群的搭建(CentOS 7)
Redis集群的安装及配置
redis的安装
上传redis的安装包到/stx/app下,并安装
mkdir -p /sxt/app
cd /sxt/app
cd /sxt/app
或者使用wget下载
yum -y install wget
wget http://download.redis.io/releases/redis-3.0.6.tar.gz
wget http://download.redis.io/releases/redis-3.0.6.tar.gz
安装gcc依赖
yum install gcc-c++
解压redis压缩包
tar -zxvf redis-3.0.6.tar.gz
编译redis
cd redis-3.0.6
make
make
安装redis
mkdir /usr/local/redis
make install PREFIX=/usr/local/redis
make install PREFIX=/usr/local/redis
启动redis
第一种:前端方式启动(ssh命令窗口关闭则redis-server程序结束,不推荐使用此方法)
cd /usr/local/redis/bin
./redis-server
第一种,强制关闭:Ctrl+c
第二种,正常关闭:./redis-cli shutdow(在当前系统下的其他终端使用)
第二种:后端方式启动
cd /usr/local/redis/bin/
//将Redis解压后的源码包中的redis.conf文件拷贝到bin目录下
cp /root/redis-3.0.6/redis.conf /usr/local/redis/bin/
//修改redis.conf文件
vim redis.conf
//输入 ’/dae‘ 查找到 ’daemonize no‘ 将其修改为yes
/dae
./redis-server redis.conf
//查看启动
ps -aux | grep redis
//关闭Redis
第一种,强制关闭:kill 进程的PIN
第二种,正常关闭:./redis-cli shutdown
//将Redis解压后的源码包中的redis.conf文件拷贝到bin目录下
cp /root/redis-3.0.6/redis.conf /usr/local/redis/bin/
//修改redis.conf文件
vim redis.conf
//输入 ’/dae‘ 查找到 ’daemonize no‘ 将其修改为yes
/dae
./redis-server redis.conf
//查看启动
ps -aux | grep redis
//关闭Redis
第一种,强制关闭:kill 进程的PIN
第二种,正常关闭:./redis-cli shutdown
以后启动redis
cd /usr/local/redis/bin
./redis-server redis.conf
./redis-cli
//关闭
quit
./redis-cli shutdown
配置防火墙端口
vi /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp –dport 6379 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 6379 -j ACCEPT
使用RVM安装ruby脚本
先执行一条官方 https://rvm.io/ 复制来的长命令
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
\curl -sSL https://get.rvm.io | bash -s stable
source /etc/profile.d/rvm.sh
rvm list known
rvm list known
安装ruby 2.4.1(ruby -v可查看已安装版本 , gem -v)
rvm install 2.4.1
redis-common集群配置
在/opt下新建redis文件夹,存放redis公共的相关数据
cd /opt/
mkdir redis
cd redis/
mkdir conf #存放redis集群的公共配置
mkdir logs #存放redis集群的日志信息
mkdir data #存放redis集群的数据
mkdir redis
cd redis/
mkdir conf #存放redis集群的公共配置
mkdir logs #存放redis集群的日志信息
mkdir data #存放redis集群的数据
将原始的redis.conf配置文件拷贝到/opt/redis/conf,并修改公共的配置文件
cp /sxt/app/redis-3.0.6/redis.conf /opt/redis/conf
cd /opt/redis/conf
cp redis.conf redis-common.conf
vi redis-common.conf
cd /opt/redis/conf
cp redis.conf redis-common.conf
vi redis-common.conf
1、前端启动改为后端启动
daemonize yes
2、注释掉服务的进程id的记录文件
# pidfile /var/run/redis.pid
3、注释掉默认端口
# port 6379
4、注释掉默认日志保存路径信息
# logfile ""
5、注释调用默认的数据文件的名字
# dbfilename dump.rdb
6、配置集群中数据文件的目录
# dir ./
dir /opt/redis/data
dir /opt/redis/data
7、注释掉默认的公共配置aof日至追加文件
# appendfilename "appendonly.aof"
8、启动集群,去掉注释
cluster-enabled yes
9、slot槽是否全覆盖,默认为false,建议设置为no
cluster-require-full-coverage no
集群每个节点的配置
cd /usr/local/redis/bin
cp /sxt/app/redis-3.0.6/redis.conf redis-6380.conf
vi redis-6380.conf
cp /sxt/app/redis-3.0.6/redis.conf redis-6380.conf
vi redis-6380.conf
1、引入集群公共配置
# include /path/to/other.conf
include /opt/redis/conf/redis-common.conf
include /opt/redis/conf/redis-common.conf
2、注释掉默认启动方式
# daemonize no
3、配置节点进程记录文件(用节点的端口号进行区分)
pidfile /var/run/redis-6380.pid
4、配置节点端口号(每个节点都不一样,文件名对应端口名)
port 6380
5、配置集群中每个服务的日志记录文件(用端口号进行区分)
logfile "/opt/redis/logs/redis-6380.log"
6、配置集群中每个服务的数据文件的名称(用端口号进行区分)
dbfilename dump-6380.rdb
7、配置集群中每个服务的aof日志文件名称(用端口号进行区分)
appendfilename "appendonly-6380.aof"
8、配置集群中每个服务的配置文件名称(用端口号进行区分)
cluster-config-file nodes-6380.conf
将修改好的redis-6380.conf再复制五份,并将里面的端口给修改好!最后再配置一下防火墙端口
systemctl stop firewalld
Redis集群测试
启动redis集群
cd /usr/local/redis/bin/
./redis-server redis-6380.conf
./redis-server redis-6381.conf
./redis-server redis-6382.conf
./redis-server redis-6383.conf
./redis-server redis-6384.conf
./redis-server redis-6385.conf
./redis-server redis-6380.conf
./redis-server redis-6381.conf
./redis-server redis-6382.conf
./redis-server redis-6383.conf
./redis-server redis-6384.conf
./redis-server redis-6385.conf
创建redis集群
cd /sxt/app/redis-3.0.6/src
gem install redis #安装 redis 的相关依赖
./redis-trib.rb create --replicas 1 172.18.25.174:6380 172.18.25.174:6381 172.18.25.174:6382 172.18.25.174:6383 172.18.25.174:6384 172.18.25.174:6385
gem install redis #安装 redis 的相关依赖
./redis-trib.rb create --replicas 1 172.18.25.174:6380 172.18.25.174:6381 172.18.25.174:6382 172.18.25.174:6383 172.18.25.174:6384 172.18.25.174:6385
连接redis集群,进行测试
cd /usr/local/redis/bin/
./redis-cli -c -p 6380
set x y
./redis-cli -c -p 6380
set x y