wget https://github.com/redis/redis/archive/refs/tags/7.4.1.zip
unzip 7.4.1.zip
cd redis-7.4.1
apt install -y unzip zip
apt install -y make
apt install -y build-essential
apt install -y pkg-config
apt install -y libjemalloc-dev
cd deps
make lua hiredis linenoise hdr_histogram fpconv jemalloc
make && make install
mkdir -p /data/apps/redis/cluster/{0001,0002,0003,0004,0005,0006}
# Redis配置文件模板--不设置密码
cat <<EOF >template.conf
port 7000
bind 0.0.0.0
cluster-enabled yes
protected-mode no
cluster-config-file nodes-7000.conf
cluster-node-timeout 5000
appendonly yes
save 900 1
save 300 10
save 60 10000
EOF
# Redis配置文件模板--设置密码
cat <<EOF >template.conf
port 7000
bind 0.0.0.0
cluster-enabled yes
protected-mode yes
requirepass password
cluster-config-file nodes-7000.conf
cluster-node-timeout 5000
appendonly yes
save 900 1
save 300 10
save 60 10000
EOF
# 生成6个配置文件
for i in {1..6}; do
cp template.conf /opt/apps/redis/cluster/000$i/redis.conf
sed -i "s/7000/700$i/g" /opt/apps/redis/cluster/000$i/redis.conf
done
# 删除模板文件
rm template.conf
chmod +x create_configs.sh
./create_configs.sh
for i in {1..6}; do
/usr/local/bin/redis-server /data/apps/redis/cluster/000$i/redis.conf &
done
#cctv01 单主机启动6节点
/usr/local/bin/redis-server /data/apps/redis/cluster/0001/redis.conf &
/usr/local/bin/redis-server /data/apps/redis/cluster/0002/redis.conf &
/usr/local/bin/redis-server /data/apps/redis/cluster/0003/redis.conf &
/usr/local/bin/redis-server /data/apps/redis/cluster/0004/redis.conf &
/usr/local/bin/redis-server /data/apps/redis/cluster/0005/redis.conf &
/usr/local/bin/redis-server /data/apps/redis/cluster/0006/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 --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 \
-a password
#cctv01/02/03
/usr/local/bin/redis-server /data/apps/redis/cluster/0001/redis.conf &
/usr/local/bin/redis-server /data/apps/redis/cluster/0002/redis.conf &
/usr/local/bin/redis-server /data/apps/redis/cluster/0003/redis.conf &
# 1主2从
redis-cli --cluster create \
192.168.3.31:7001 192.168.3.31:7002 192.168.3.31:7003\
192.168.3.32:7001 192.168.3.32:7002 192.168.3.32:7003\
192.168.3.33:7001 192.168.3.33:7002 192.168.3.33:7003\
--cluster-replicas 2