Redis是开源的内存中数据结构存储。它可以用作数据库,缓存和消息代理,并支持各种数据结构,例如字符串,哈希,列表,集合等。Redis通过Redis Sentinel提供高可用性,包括监视,通知,自动故障转移。它还使用Redis Cluster在多个Redis节点之间提供自动分区。

本教程介绍了如何在Ubuntu 18.04服务器上安装和配置Redis。相同的说明适用于Ubuntu 16.04和任何基于Ubuntu的发行版。

先决条件

在开始学习本教程之前,请确保您以具有[sudo]特权的用户身份登录。

在Ubuntu上安装Redis

Redis软件包包含在默认的Ubuntu 18.04存储库中。安装非常简单,只需执行以下步骤:

首先通过在SSH终端中运行以下命令来更新apt软件包列表:

sudo apt update

通过键入以下内容来安装Redis:

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 Sun 2018-10-28 05:10:45 PDT; 2h ago
     Docs: http://redis.io/documentation,
           man:redis-server(1)
  Process: 2197 ExecStop=/bin/kill -s TERM $MAINPID (code=exited, status=0/SUCCESS)
  Process: 2201 ExecStart=/usr/bin/redis-server /etc/redis/redis.conf (code=exited, status=0/SUCCESS)
 Main PID: 2226 (redis-server)
    Tasks: 4 (limit: 2319)
   CGroup: /system.slice/redis-server.service
           `-2226 /usr/bin/redis-server 0.0.0.0:6379

如果您的服务器上禁用了IPv6,Redis服务将无法启动。

恭喜,目前您已经在Ubuntu 18.04服务器上安装并运行Redis。

配置Redis远程访问

默认情况下,Redis不允许远程连接。您只能从运行Redis的计算机127.0.0.1(localhost)连接到Redis服务器。

仅当您要从远程主机连接到Redis服务器时,才执行以下步骤。如果您使用的是单个服务器设置,并且应用程序和Redis在同一台计算机上运行,​​则不应启用远程访问。

要配置Redis接受远程连接,请使用文本编辑器打开Redis配置文件:

sudo nano /etc/redis/redis.conf

找到以bind 127.0.0.1 ::1开头的行,并将127.0.0.1替换为0.0.0.0

/etc/redis/redis.conf

# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES # JUST COMMENT THE FOLLOWING LINE. # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ bind 0.0.0.0 ::1

保存文件并关闭编辑器。

重新启动Redis服务以使更改生效:

sudo systemctl restart redis-server

使用以下命令验证端口6379上所有接口上的redis是否正在侦听

ss -an | grep 6379

您应该会看到类似以下的内容。 0.0.0.0表示计算机上的所有IPv4地址。

tcp  LISTEN 0   128   0.0.0.0:6379   0.0.0.0:*
tcp  LISTEN 0   128      [::]:6379      [::]:*  

接下来,您需要添加防火墙规则,以启用来自远程计算机的TCP端口6379上的流量。

假设您正在使用 UFW 管理防火墙,并且要允许从192.168.121.0/24子网进行访问,则可以运行以下命令:

sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379

这时,Redis服务器将接受TCP端口6379上的远程连接。

确保将防火墙配置为仅接受来自受信任IP范围的连接。

要验证所有设置是否正确,您可以尝试使用redis-cli实用程序从远程计算机ping Redis服务器:

redis-cli -h <REDIS_IP_ADDRESS> ping

该命令应返回PONG的响应:

PONG

结论

恭喜,您已在Ubuntu 18.04服务器上成功安装Redis。要查找有关如何管理Redis安装的更多信息,请访问 Redis文档页面。

如果你喜欢我们的内容可以选择在下方二维码中捐赠我们,或者点击广告予以支持,感谢你的支持