redis-7.0.5.tar.gz编译安装集群模式(3台主机)

提供国内的包下载地址:

https://mirrors.huaweicloud.com/redis/

一,环境调整

#调整内核
cat >> /etc/sysctl.conf <<EOF
vm.overcommit_memory = 1
net.core.somaxconn = 1024
EOF
sysctl -p

# 修改文件描述符限制
echo "* soft nofile 65535" >> /etc/security/limits.conf
echo "* hard nofile 65535" >> /etc/security/limits.conf

#下载包
wget https://mirrors.huaweicloud.com/redis/redis-7.0.5.tar.gz

二,安装依赖并编译

# 安装依赖
yum install -y gcc make tcl

tar xzf redis-7.0.5.tar.gz
cd redis-7.0.5

make -j$(nproc)
make install PREFIX=/usr/local/redis

三,创建目录并编写配置文件(3台主机执行)

# 创建必要目录
mkdir -p /etc/redis /var/log/redis /var/lib/redis/{7000,7001}

#在每台上配置两个节点
cat > /etc/redis/7000.conf <<EOF
port 7000
cluster-enabled yes
cluster-config-file /var/lib/redis/7000/nodes.conf
cluster-node-timeout 5000
appendonly yes
daemonize yes
pidfile /var/run/redis_7000.pid
logfile /var/log/redis/7000.log
dir /var/lib/redis/7000
maxmemory 4GB
maxmemory-policy volatile-lru
tcp-backlog 511
bind 0.0.0.0
protected-mode no
requirepass 密码
masterauth 密码
cluster-announce-ip $(hostname -I | awk '{print $1}')
cluster-announce-port 7000
cluster-announce-bus-port 17000
EOF

cat > /etc/redis/7001.conf <<EOF
port 7001
cluster-enabled yes
cluster-config-file /var/lib/redis/7001/nodes.conf
cluster-node-timeout 5000
appendonly yes
daemonize yes
pidfile /var/run/redis_7001.pid
logfile /var/log/redis/7001.log
dir /var/lib/redis/7001
maxmemory 4GB
maxmemory-policy volatile-lru
tcp-backlog 511
bind 0.0.0.0
protected-mode no
requirepass 密码
masterauth 密码
cluster-announce-ip $(hostname -I | awk '{print $1}')
cluster-announce-port 7001
cluster-announce-bus-port 17001
EOF

四,system管理(3台主机执行)

# 创建systemd服务文件
cat > /etc/systemd/system/redis@.service <<EOF
[Unit]
Description=Redis Cluster Node %i
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /etc/redis/%i.conf
ExecStop=/usr/local/redis/bin/redis-cli -p %i shutdown
Restart=always
User=redis
Group=redis

[Install]
WantedBy=multi-user.target
EOF

# 创建redis用户
useradd -s /sbin/nologin redis
chown -R redis:redis /var/lib/redis /var/log/redis

# 启动服务
systemctl daemon-reload
systemctl enable redis@7000 redis@7001
systemctl start redis@7000 redis@7001

五,创建集群并开放端口

##创建redis集群
# 假设三台主机IP为 192.168.1.1, 192.168.1.2, 192.168.1.3
/usr/local/redis/bin/redis-cli --cluster create \
  192.168.1.1:7000 192.168.1.1:7001 \
  192.168.1.2:7000 192.168.1.2:7001 \
  192.168.1.3:7000 192.168.1.3:7001 \
  --cluster-replicas 1 \
  -a '密码'
  
  
##配置防火墙
# 开放Redis端口
firewall-cmd --permanent --add-port=7000-7001/tcp
firewall-cmd --permanent --add-port=17000-17001/tcp
firewall-cmd --reload

六,验证

##验证集群状态
# 检查集群节点
/usr/local/redis/bin/redis-cli -c -p 7000 -a '&^%TR_54rty' cluster nodes

# 检查集群健康
/usr/local/redis/bin/redis-cli -c -p 7000 cluster info

在不同操作系统上安装 `redis-7.4.6.tar.gz` 的方法有所不同,下面分别介绍在 Linux 和 Windows 系统上的安装步骤。 ### Linux 系统安装步骤 1. **安装前准备**: - 对于 Ubuntu/Debian 系统,更新系统并安装编译工具和依赖库: ```bash sudo apt update && sudo apt upgrade -y sudo apt install build-essential tcl -y ``` - 对于 CentOS/RHEL 系统,更新系统并安装开发工具和 `tcl`: ```bash sudo yum update -y sudo yum groupinstall "Development Tools" -y sudo yum install tcl -y ``` 2. **下载与解压 Redis 源码**: 可以通过 `wget` 命令下载 `redis-7.4.6.tar.gz`,并进行解压操作: ```bash wget http://download.redis.io/releases/redis-7.4.6.tar.gz tar zxf redis-7.4.6.tar.gz cd redis-7.4.6 ``` 3. **编译安装**: 在解压后的目录下,使用 `make` 命令进行编译: ```bash make ``` 编译完成后,进行安装: ```bash make install ``` 4. **配置 Redis**: 可以对 Redis 的配置文件进行修改,例如修改端口等。定位关键字 `port` 可以通过 `:/port` 进行查找,默认配置为 6379,若需要变更,如变更为 6380,同时需要同步变更 `pidfile` 的配置: ```plaintext port 6380 pidfile /var/run/redis_6380.pid ``` ### Windows 系统安装步骤 虽然 Redis 官方没有原生支持 Windows,但可以通过微软维护的 Windows 版 Redis 进行安装。 1. **下载安装包**: 可以从相关渠道下载 Redis 7.4 版本的安装包。 2. **安装步骤**: 运行安装包,按照安装向导的提示完成安装3. **设置环境变量**: 将 Redis安装目录添加到系统的环境变量 `PATH` 中,以便在命令行中可以直接使用 Redis 命令。 4. **验证结果**: 打开命令提示符,输入 `redis-cli` 命令,如果能正常进入 Redis 客户端,则说明安装成功。 5. **启动/关闭/删除 Redis 服务命令**: 可以使用相关命令对 Redis 服务进行启动、关闭和删除等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值