一、安裝redis
redis安裝包下載地址:
https://download.redis.io/releases/
1.1 解壓編譯并創建數據目錄
tar xzvf redis-6.2.10.tar.gz -C /usr/local/
cd /usr/local/
mv redis-6.2.10/ redis
cd /usr/local/redis/
make #編譯
mkdir /usr/local/redis/data #創建存放數據的目錄
mkdir /usr/local/redis/data/{redis6380,redis6381}
1.2 修改配置文件
#同級目錄下有修改好的文件,直接上傳即可(注意redis版本)
cp /usr/local/redis/redis.conf /usr/local/redis/data/redis6380
cd /usr/local/redis/data/redis6380
vim redis.conf(:/ 搜出來進行修改)
bind 192.168.116.172 ---->0.0.0.0
port 6379 ---->6380
daemonize no ---->yes
pidfile /var/run/redis_6379.pid ---->6380
logfile "" ---->logfile /var/log/redis_6380.log
dir /data/redis/data ---->/usr/local/redis/data
appendonly no ---->yes
cluster-enabled yes ---->解開注釋,去掉空格
cluster-config-file nodes-6379.conf---->6380
cluster-node-timeout 5000 ---->解開注釋,去掉前面空格
cluster-replica-validity-factor 10 ---->解開注釋,去掉前面空格
cluster-migration-barrier 1 ---->解開注釋,去掉前面空格
cluster-require-full-coverage yes ---->解開注釋,去掉前面空格
cp redis.conf /usr/local/redis/data/redis6381
scp redis.conf 172.22.1.3:/usr/local/redis/data/redis6380/
scp redis.conf 172.22.1.3:/usr/local/redis/data/redis6381/
scp redis.conf 172.22.1.4:/usr/local/redis/data/redis6380/
scp redis.conf 172.22.1.4:/usr/local/redis/data/redis6381/
#每臺機器修改配置文件
:%s/6380/6381/g #根據端口進行修改
1.3 啟動redis
systemctl stop firewalld
cd /usr/local/redis/src #三臺機器上都需要操作
nohup ./redis-server ../data/redis6380/redis.conf & #根據端口進行修改
nohup ./redis-server ../data/redis6381/redis.conf & #根據端口進行修改
netstat -nltp |grep redis #查看redis的6380和6381端口
二、創建redis_cluster集群
2.1 拉起集群
去任意一臺redis上操作
cd /usr/local/redis/src
./redis-cli --cluster create --cluster-replicas 1 172.22.1.2:6380 172.22.1.2:6381 172.22.1.3:6380 172.22.1.3:6381 172.22.1.4:6380 172.22.1.4:6381
2.2 測試
./redis-cli -h 172.22.1.2 -c -p 6380
6380> ping
PONG
6380> cluster info #查看集群信息
6380> cluster nodes #查看集群實例
2.3 設置redis集群密碼
這里masterauth和requirepass都需要設置,最好設置一樣,否則會有驗證失敗等問題
每個redis實例上都操作
6380>config set masterauth oj+xjlARRfJqbC
6380>config set requirepass oj+xjlARRfJqbC
6380>auth oj+xjlARRfJqbC
6380>config rewrite
2.4 重啟redis
#每臺機器上操作
ps -ef | grep redis
kill #殺死原有的redis進程
#重新啟動redis
cd /usr/local/redis/src #三臺機器上都需要操作
nohup ./redis-server ../data/redis6380/redis.conf & #根據端口進行修改
nohup ./redis-server ../data/redis6381/redis.conf & #根據端口進行修改
#再次連接redis
./redis-cli -h 172.22.1.2 -c -p 6380
6380> auth oj+xjlARRfJqbC
6380> cluster info