Redis 数据库支持
对于群组服,HuskHomes 支持以 Redis(需 5.0 以上版本)为插件的通信协议。如果你需要使用跨服随机传送,你必须使用 Redis。除此之外并无任何强制要求。
什么是 Redis?
Redis(REmote DIctionary Server,远程字典服务)是一个开源、内存加载数据的存储服务器,可用作缓存、通信断点、流数据引擎或数据库。
HuskHomes 支持 Redis,并可以此作主/副通信频道处理跨服传送及传送请求,以及其他命令
配置
若要配置 Redis,找到你的 config.yml
,并修改 redis
部分下的内容。将 broker_type
设置为 REDIS
。
数据库选项(config.yml)
# Type of network message broker to ues for cross-server networking (PLUGIN_MESSAGE or REDIS)
broker_type: REDIS
# Settings for if you're using REDIS as your message broker
redis:
host: localhost
port: 6379
# Password for your Redis server. Leave blank if you're not using a password.
password: ''
use_ssl: false
# Settings for if you're using Redis Sentinels.
# If you're not sure what this is, please ignore this section.
sentinel:
master_name: ''
# List of host:port pairs
nodes: []
password: ''
凭据
在你的 Redis 上输入域名、端口及默认的用户密码。
如果你的 Redis 默认用户没有密码,则将其留空(password: ''
),之后插件就会尝试不带密码连接数据库。
默认用户密码
取决于你安装的 Redis 版本,它有可能设置随机默认用户密码。你可以在 Redis 的服务器配置中找到这些。你可以在 redis-cli
中通过如下命令清理默认用户的密码。
requirepass thepassword
user default on nopass ~* &* +@all
使用 Redis 哨兵
若你在使用 Redis 的哨兵模式,可以在 sentinel
部分下进行设置。
你需要提供主集合的名称,哨兵的密码及按 地址:端口
格式填写的列表。
获取 Redis 服务器
使用 HuskHomes 不必安装 Redis,但我们推荐你安装它,以获得更好的跨服通信表现。Redis 服务器还可以让你使用跨服传送功能,而这是普通插件通信协议所无法做到的。在不同服务器上获取 Redis 的教程可以在下文找到。HuskHomes 已经过 Redis 公开包调试,但应该也可以和其他分支的 Redis 或相关软件兼容。
为了达到最佳预期,我们建议为本地运行(与其他服务器一并运行)的 Redis 服务器分配 1GB 运行内存。如果你有多台机器,则请在你运行了 Velocity/BungeeCord/Waterfall 的服务器上安装 Redis。
若你正在使用服务器托管
联系服务器提供商并请求其为你搭建 Redis。你可以向他们提供本页面的相关描述。如果还在找支持 Redis 的服务器提供商,我们的服务器提供商列表中提到了有关内容。
在 Linux 或 macOS 上的 Redis
你可以在 Linux 的分发上安装 Redis。Redis 在大多数包管理仓库中都可以找到。
你也可以在你的 macOS 服务器上安装 Redis。
在 Windows 上的 Redis
Windows 并不受到 Redis 的官方支持,但这里有一些非官方移植,你可以将其安装在 Windows 系统上,它运行良好。
如果你喜欢,你也可以通过 WSL 安装 Redis。
Pterodactyl(翼龙面板)/ Pelican 面板托管
如果你在翼龙或 Pelican 面板上托管服务器,你也需要安装 Redis,并可以将其应用于服务器上的 HuskHomes。
如果你正在同一节点上运行 Redis 和服务器,你需要以 172.18.0.1
为地址(或其他等价设置,取决于你的网络设置),并将其在 Redis 的配置中绑定(nano /etc/redis/redis.conf)。
你也需要将 requirepass
部分的配置取消注释,并为其设置一个密码使得其能被访问,或禁用 protected-mode
设置。在设置密码并通过命令 systemctl restart redis
重启 Redis 服务器后,你也需要在你的翼龙面板 .env
中更新密码(nano /var/www/pterodactyl/.env
)并通过 cd /var/www/pterodactyl && php artisan config:clear
刷新缓存。
你也可能也需要在 Linux 分发的防火墙上放行特定连接。