如何在Ubuntu 20.04服务器上安装和配置Redis
Redis是一个开放源代码的内存中键值数据存储。它可以用作数据库,缓存和消息代理,并支持各种数据结构,例如字符串,哈希,列表,集合等。Redis通过Redis Sentinel提供高可用性,并通过Redis Cluster在多个Redis节点之间自动分区。
本教程描述了如何在Ubuntu 20.04上安装和配置Redis。
一、在Ubuntu 20.04上安装Redis
在Ubuntu上安装Redis是一个简单的过程。
Redis版本5.0.x包含在默认的Ubuntu 20.04存储库中。要安装它,请以root或具有sudo特权的用户身份运行以下命令:
sudo apt update
sudo apt install redis-server
安装完成后,Redis服务将自动启动。要检查服务的状态,请输入以下命令:
sudo systemctl status redis-server
您应该会看到以下内容:
● redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2020-06-06 20:03:08 UTC; 10s ago
...
如果您的服务器上禁用了IPv6,则Redis服务将无法启动。
至此,您已在Ubuntu 20.04服务器上安装并运行Redis。
二、配置Redis远程访问
默认情况下,Redis服务器不接受远程连接。您只能从127.0.0.1运行Redis的计算机(localhost)连接到Redis 。
如果使用单个服务器设置,并且连接到数据库的客户端也在同一主机上运行,则不应启用远程访问。
要将Redis配置为接受远程连接,请使用文本编辑器打开Redis配置文件:
sudo nano /etc/redis/redis.conf
找到以开头的行bind 127.0.0.1 ::1并对其进行注释。
/etc/redis/redis.conf
# bind 0.0.0.0 ::1
如果您的服务器具有专用IP,并且您希望Redis仅可从专用网络访问而不是注释该行,请在后面加上专用IP地址127.0.0.1。
保存文件并重新启动Redis服务,以使更改生效:
sudo systemctl restart redis-server
使用以下命令来验证redis正在侦听端口上的所有接口6379:
ss -an | grep 6379
您应该看到类似下面的内容。0.0.0.0表示计算机上的所有IPv4地址。
tcp LISTEN 0 511 0.0.0.0:6379 0.0.0.0:*
tcp LISTEN 0 511 [::]:6379 [::]:*
接下来,您需要配置防火墙以启用来自TCP端口上的流量6379。
通常,您只想允许从特定IP地址或IP范围访问Redis服务器。例如,要仅允许来自192.168.121.0/24子网的连接,可以运行以下命令:
sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379
确保将防火墙配置为仅接受来自受信任IP范围的连接。
此时,您应该能够从远程位置通过TCP端口6379连接到Redis。
要验证所有设置是否正确,您可以尝试使用redis-cli实用程序从远程计算机ping Redis服务器:
redis-cli -h <REDIS_IP_ADDRESS> ping
该命令应返回以下响应PONG:
PONG
至此,我们已经向您展示了如何在Ubuntu 20.04服务器上安装Redis。