单机安装

通过 yum 安装

在 CentOS 7 上通过 yum 安装 Redis,可以按照以下步骤进行操作:

更新系统软件包:

sudo yum update

安装 Redis:

sudo yum install redis

可以看到默认安装的 redis 版本是 3.2.12-2.el7

如果需要安装 redis 7,这需要下载 yum 源:

sudo yum install epel-release

sudo yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

然后,在指定源进行安装:

yum --enablerepo=remi install redis

启动 Redis 服务:

sudo systemctl start redis

配置 Redis 开机自启动:

sudo systemctl enable redis

修改配置文件 /etc/redis.conf

修改 bind 和 requirepass

bind 0.0.0.0

requirepass 123456

然后重启 redis:

sudo systemctl restart redis

开启防火墙(可选)

# 添加 redis 端口

firewall-cmd --zone=public --add-port=6379/tcp --permanent

firewall-cmd --zone=public --add-port=6379/udp --permanent

# 重启防火墙

firewall-cmd --reload

运行 redis-cli

redis-cli

127.0.0.1:6379> auth 123456

OK

通过 snap 安装

安装 redis

sudo snap install redis

查看 snap 安装的包:

snap list

启动 Redis:

sudo snap start redis

运行 redis-cli

Redis的snap安装没有预配置的文件(redis.conf)。因此,我们需要使用Redis的CLI进入控制台并进行配置。

redis.cli

# 打印所有的配置

127.0.0.1:6379> CONFIG GET *

配置外网访问

要配置Redis以允许外部网络访问,使用以下命令:

127.0.0.1:6379> CONFIG GET bind

127.0.0.1:6379> config set bind 0.0.0.0

这将绑定Redis服务器到0.0.0.0 IP地址,使其对外可访问。请注意,这可能会带来一些安全风险,因此请谨慎操作。

设置保护模式

127.0.0.1:6379> CONFIG SET protected-mode no

该模式控制外部网是否可以连接 redis 服务,默认是 yes, 所以默认我们外网是无法访问的,如需外网连接 rendis 服务则需要将此属性改为

no。

设置访问密码

127.0.0.1:6379> config set requirepass mypass

这将设置一个名为”mypass”的密码作为访问Redis的要求。请确保将”mypass”替换为您选择的强密码。

升级

sudo snap refresh redis

卸载

sudo snap remove redis

在 MacOS 安装

安装 Redis:

brew install redis

启动 Redis 服务器:

brew services start redis

这将启动 Redis 服务器并使其在后台运行。

查看 Redis 状态

brew services info redis

验证 Redis 安装:

您可以使用以下命令来验证 Redis 是否成功安装并正在运行:

redis-cli ping

如果 Redis 正常运行,它将返回 “PONG”。

停止 Redis 服务器:

brew services stop redis

通过源码安装

安装编译软件

yum -y install gcc gcc-c++ kernel-devel

创建安装目录

mkdir -p /usr/local/redis

下载源代码并解压

wget https://download.redis.io/redis-stable.tar.gz

tar -xzvf redis-stable.tar.gz

进入都目,编译安装

cd redis-stable

make prefix=/usr/local/redis/ install

make install默认安装到/usr/local/bin目录下,如果需要指定安装路径,需要添加PREFIX参数

拷贝配置文件

mkdir /usr/local/redis/conf

cp redis.conf /usr/local/redis/conf/

修改 redis.conf 加入以下配置:

# 允许哪些 IP 地址可以访问

bind 0.0.0.0

# 以守护进程的方式运行

daemonize yes

# 设置密码授权

requirepass <设置密码>

启动Redis:

redis-server /usr/local/redis/conf/redis.conf

查看进程:

ps -ef|grep redis

停止redis服务:

redis-cli shutdown

通过 docker 安装

在Docker中运行Redis容器,并设置密码保护和持久化存储的配置

REDIS_PASSWORD=123456

docker run \

-d \

--restart always \

--privileged=true \

--name redis \

-v /etc/localtime://etc/localtime \

-p 6379:6379 \

redis:7 \

--requirepass $REDIS_PASSWORD \

--appendonly yes

参数说明:

REDIS_PASSWORD=123456:设置Redis的密码为123456。可以根据需要更改密码。

docker run:运行Docker容器命令。

-d:以后台模式运行容器。

--restart always:设置容器在启动时自动重启。

--privileged=true:授予容器特权,以便在容器内部执行特权操作。

--name redis:指定容器的名称为redis。

-v /etc/localtime://etc/localtime:将主机的时区设置映射到容器内部,以确保时间同步。

-p 6379:6379:将主机的6379端口映射到容器的6379端口,以便可以通过主机IP和端口访问Redis。

redis:7:指定要运行的Redis镜像版本为7。

--requirepass $REDIS_PASSWORD:设置Redis的密码为之前定义的REDIS_PASSWORD变量的值。

--appendonly yes:开启Redis的AOF(Append-Only File)持久化模式,将写操作追加到文件中,以保证数据持久化。

通过 docker-compose 安装

使用Docker

Compose配置Redis单机容器,https://github.com/zhijunio/learn-docker/blob/main/docker-compose/redis/docker-compose.redis.yml

version: "3.0"

services:

# Redis standalone

redis:

image: bitnami/redis:7.2

restart: always

environment:

# ALLOW_EMPTY_PASSWORD is recommended only for development.

ALLOW_EMPTY_PASSWORD: "yes"

ports:

- "6379:6379"

volumes:

- redis-data://bitnami/redis/data

healthcheck:

test: [ "CMD", "redis-cli","--raw", "incr","ping" ]

interval: 5s

timeout: 2s

retries: 10

volumes:

redis-data:

restart: always:设置容器在停止后自动重启。

environment:定义容器的环境变量。

ALLOW_EMPTY_PASSWORD: "yes":允许使用空密码(仅在开发环境中建议使用)。

ports:指定容器端口与主机端口的映射关系。

"6379:6379":将主机的6379端口映射到容器的6379端口,以便可以通过主机IP和端口访问Redis。

volumes:定义容器的数据卷。

redis-data://bitnami/redis/data:将Redis容器的数据存储在名为redis-data的卷中。

healthcheck:定义容器的健康检查。

test: [ "CMD", "redis-cli","--raw", "incr","ping" ]:使用Redis的健康检查命令来测试容器的健康状态。

interval: 5s:每5秒运行一次健康检查。

timeout: 2s:每次健康检查的超时时间为2秒。

retries: 10:最多重试10次健康检查。

集群模式安装

通过 yum 安装

这一节暂未整理,当前更推荐直接参考下方的 docker-compose 方案快速搭建 Redis Cluster。

通过 docker-compose 安装

https://github.com/zhijunio/learn-docker/blob/main/docker-compose/redis/docker-compose.redis-cluster.yml

version: "3.0"

services:

# Redis cluster

redis-node-0:

image: bitnami/redis-cluster:7.2

volumes:

- redis-cluster-data-0://bitnami/redis/data

environment:

- REDIS_PASSWORD=redis

- REDISCLI_AUTH=redis

- REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5

redis-node-1:

image: bitnami/redis-cluster:7.2

volumes:

- redis-cluster-data-1://bitnami/redis/data

depends_on:

- redis-node-0

environment:

- REDIS_PASSWORD=redis

- REDISCLI_AUTH=redis

- REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5

redis-node-2:

image: bitnami/redis-cluster:7.2

volumes:

- redis-cluster-data-2://bitnami/redis/data

depends_on:

- redis-node-1

environment:

- REDIS_PASSWORD=redis

- REDISCLI_AUTH=redis

- REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5

redis-node-3:

image: bitnami/redis-cluster:7.2

volumes:

- redis-cluster-data-3://bitnami/redis/data

depends_on:

- redis-node-2

environment:

- REDIS_PASSWORD=redis

- REDISCLI_AUTH=redis

- REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5

redis-node-4:

image: bitnami/redis-cluster:7.2

volumes:

- redis-cluster-data-4://bitnami/redis/data

depends_on:

- redis-node-3

environment:

- REDIS_PASSWORD=redis

- REDISCLI_AUTH=redis

- REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5

redis-node-5:

image: bitnami/redis-cluster:7.2

volumes:

- redis-cluster-data-5://bitnami/redis/data

depends_on:

- redis-node-0

- redis-node-1

- redis-node-2

- redis-node-3

- redis-node-4

environment:

- REDIS_PASSWORD=redis

- REDISCLI_AUTH=redis

- REDIS_NODES=redis-node-0 redis-node-1 redis-node-2 redis-node-3 redis-node-4 redis-node-5

- REDIS_CLUSTER_REPLICAS=1

- REDIS_CLUSTER_CREATOR=yes

volumes:

redis-cluster-data-0:

redis-cluster-data-1:

redis-cluster-data-2:

redis-cluster-data-3:

redis-cluster-data-4:

redis-cluster-data-5:

哨兵模式安装

通过 yum 安装

这一节暂未整理,当前更推荐直接参考下方的 docker-compose 方案快速搭建 Redis Sentinel。

通过 docker-compose 安装

https://github.com/zhijunio/learn-docker/blob/main/docker-compose/redis/docker-compose.redis-sentinel.yml

version: "3.0"

services:

# Redis sentinel

redis-master:

image: bitnami/redis:7.2

volumes:

- redis-sentinel-data-master://bitnami/redis/data

environment:

- REDIS_REPLICATION_MODE=master

- REDIS_PASSWORD=123456

redis-slave:

image: bitnami/redis:7.2

volumes:

- redis-sentinel-data-slave://bitnami/redis/data

environment:

- REDIS_REPLICATION_MODE=slave

- REDIS_MASTER_HOST=redis-master

- REDIS_MASTER_PASSWORD=123456

- REDIS_PASSWORD=123456

depends_on:

- redis-master

redis-sentinel:

image: bitnami/redis:7.2

volumes:

- redis-sentinel-data-sentinel://bitnami/redis/data

environment:

- REDIS_MASTER_HOST=redis-master

- REDIS_MASTER_SET=mymaster

- REDIS_SENTINEL_PASSWORD=123456

- REDIS_MASTER_PASSWORD=123456

depends_on:

- redis-master

- redis-slave

volumes:

redis-sentinel-data-master:

redis-sentinel-data-slave:

redis-sentinel-data-sentinel:

Copyright © 2088 樊振东世界杯_世界杯开幕 - tyzksb.com All Rights Reserved.
友情链接