首页 / 资讯中心 / 文章详情

Minecraft Forge 1.20.1模组服务器搭建示例

Minecraft Forge 1.20.1模组服务器搭建示例 ★ FEATURED ARTICLE
1 项目背景与目标1.1 项目背景Minecraft 模组服务器需要同时管理游戏服务端、Forge 加载器、第三方模组、世界数据和运行资源。与原版服务端相比模组服务器的启动依赖、资源消耗和兼容性问题更复杂因此需要一套可持续运行、可监控、可备份且便于维护的部署方案。1.2 项目目标在 Linux 云服务器上部署 Minecraft Forge 1.20.1 模组服务端并能够稳定启动与停止。通过 MCSManager 管理服务端进程、控制台和日常运行操作。使用 Prometheus 采集主机与 Minecraft 服务端指标并通过 Grafana 展示趋势。建立世界数据备份与故障排查流程降低误操作和数据损失风险。通过实际运行测试分析内存、TPS、模组兼容性及玩家连接过程中的异常。2 需求分析2.1 功能需求编号需求实现方式/验收依据F-01运行 Forge 1.20.1 模组服务端服务端可正常启动玩家可连接并进入世界F-02管理服务端进程通过 MCSManager 启停实例并查看控制台输出F-03监控主机资源Node Exporter 采集 CPU、内存、磁盘等主机指标F-04监控 Minecraft 状态Minecraft Exporter 输出 TPS、TickTime 等指标F-05可视化展示Grafana 展示资源趋势与游戏运行指标F-06保护世界数据定期备份世界目录并验证备份文件F-07支持故障诊断结合日志、指标、模组隔离测试定位异常2.2 非功能需求稳定性服务端持续运行玩家加入和重连时不出现持续性严重卡顿。可维护性配置文件、模组目录、日志和备份目录清晰可查。可观测性能通过仪表盘观察内存、CPU、TPS 与 TickTime 的变化。安全性管理端口和 RCON 不应无必要地暴露到公网定期备份重要数据。3 总体设计与技术架构3.1 技术选型组件用途项目中的配置/说明Linux 云服务器提供服务端运行环境系统操作为OpenCloudOSJava运行 Minecraft 服务端通过 JVM 参数文件配置堆内存Minecraft Forge加载 1.20.1 服务端模组Forge 47.3.33MCSManager服务端进程与控制台管理保留使用不以手工启动替代日常管理Prometheus定期抓取监控指标数据目录记录为 /opt/prometheus/dataNode Exporter采集 Linux 主机指标监听 127.0.0.1:9100Minecraft Prometheus Exporter输出游戏服务端指标版本记录 v0.24.0监听 127.0.0.1:9150Grafana仪表盘展示与趋势分析数据源连接 Prometheus3.2 逻辑架构监控链路Linux 主机 → Node Exporter → Prometheus → Grafana。游戏指标链路Minecraft Forge 服务端 → RCON/Exporter → Prometheus → Grafana。管理链路管理员浏览器 → MCSManager → Minecraft 服务端控制台与进程。上述链路分离了游戏运行、进程管理和监控采集职责。当出现卡顿时可结合主机资源指标与游戏 TPS/TickTime 进行判断而不是只凭内存占用率下结论。总体架构图4 服务器环境与目录规划4.1 运行环境项目记录值备注操作系统OpenCloudOSLinux主机名VM-0-8-opencloudosMinecraft 版本1.20.1Forge 模组服务端Forge 版本47.3.33服务端运行文件包含 run.sh / run.bat服务端目录/opt/minecraft/server主目录世界目录/opt/minecraft/server/world需要重点备份游戏端口47060server.properties 记录RCON 地址/端口127.0.0.1:25575建议仅本机访问Node Exporter127.0.0.1:9100本机采集端点Minecraft Exporter127.0.0.1:9150本机指标端点4.2 主要目录说明路径/目录作用/opt/minecraft/serverMinecraft 服务端程序、配置、模组和世界数据/opt/minecraft/server/modsForge 模组 JAR 文件/opt/minecraft/server/config模组配置文件/opt/minecraft/server/world当前世界数据/opt/minecraft/server/logs服务端运行日志/opt/minecraft/server/crash-reports崩溃报告若生成/opt/prometheus/dataPrometheus 时序数据/opt/node_exporter/node_exporterNode Exporter 可执行文件/opt/minecraft-exporter/minecraft-exporterMinecraft 指标导出程序/opt/minecraft-exporter/config.ymlMinecraft Exporter 配置文件文件结构5 服务端部署与基础配置5.1 准备服务端文件将完整的 Forge 1.20.1 服务端文件集放置于 /opt/minecraft/server。部署时应确保 Forge 启动文件、libraries、mods、config、默认配置及必要的启动参数文件完整。替换整套服务端文件前应先备份旧目录中的世界数据、配置和模组清单避免覆盖后无法恢复。5.2 Java 与启动参数服务端通过 user_jvm_args.txt 管理 JVM 参数。实施过程中初期堆内存上限为 4G后续结合监控与卡顿现象将最大堆内存调整至 8G。最终应以服务器当前实际文件内容为准。配置示例请按实际文件核对后使用-Xms2G-Xmx8G说明-Xms 表示初始堆内存-Xmx 表示最大堆内存。最大堆内存不应超过主机可用内存所能承受的范围还需为操作系统、监控服务及其他进程预留空间。5.3 server.properties 关键参数参数项目记录作用/注意事项server-port47060玩家连接使用的服务端端口enable-rcontrue开启 RCON便于 Exporter 查询状态rcon.port25575RCON 端口RCON 监听地址127.0.0.1配置与防火墙应确保仅可信本机服务访问online-mode以实际配置为准离线模式设置会影响身份验证与服务器安全应在报告中补充最终值gamemode / difficulty按最终配置补充记录游戏模式和难度view-distance8调整可视距离以平衡加载范围与性能simulation-distance5控制实体与区块模拟范围5.4 游戏规则与权限按项目需求配置生存模式、难度、死亡不掉落等游戏规则详情请参考官方文档。传送命令等权限应以实际权限管理模组或服务端权限方案为准。游戏规则设置(/opt/minecraft/server/server.properties)6 进程管理与监控体系部署6.1 MCSManager 管理项目使用MCSManager 作为日常管理入口用于查看实例状态、访问控制台、启动/停止服务端以及查看输出日志。对服务端进行模组更新或修改关键配置前建议先停止实例并完成备份避免在世界正在写入时直接强制终止进程。MCSManager 实例与控制台6.2 Node ExporterNode Exporter 用于暴露 Linux 主机指标项目记录的监听地址为 127.0.0.1:9100。Prometheus 抓取该端点后可在 Grafana 中观察 CPU、内存、磁盘与网络等资源变化。6.3 Minecraft Prometheus Exporter项目使用 dirien/minecraft-prometheus-exporter v0.24.0linux/amd64程序路径为 /opt/minecraft-exporter/minecraft-exporter服务名记录为 minecraft-exporter。配置文件路径为 /opt/minecraft-exporter/config.yml其中记录了 RCON 地址、世界路径、Forge 的 mod-server-stats 与离线名称来源。配置项摘要rcon-address: 127.0.0.1:25575world: /opt/minecraft/server/worldmod-server-stats: forgename-source: offline注此处为字段摘要不是完整配置文件请以当前 config.yml 的实际格式为准。若报告提交给他人切勿包含 RCON 密码。6.4 Prometheus 抓取配置Prometheus 负责定期抓取 Node Exporter 与 Minecraft Exporter 暴露的指标。项目记录中 Minecraft 任务曾显示为 UP且曾观察到 minecraft_tps 为 20、minecraft_ticktime_ms 约为 1.383 的样本。该数据代表某次观测结果不等于所有时段的固定性能保证。6.5 Grafana 仪表盘Grafana 连接 Prometheus 数据源将主机资源和游戏指标组合展示。分析卡顿时应将 TPS、TickTime、CPU、内存可用量与玩家加入时间对照观察。单一指标例如内存使用率不足以独立判定根因。Prometheus 目标状态Grafana主机资源仪表盘Grafana Minecraft TPS / TickTime 面板7 备份与安全管理7.1 世界备份世界目录为 /opt/minecraft/server/world。部署记录显示服务器使用 simplebackups 产生过世界 ZIP 备份文件大小约为数百 MB。备份策略应覆盖世界数据及恢复所需的关键配置并定期确认归档文件能够读取。更新 Forge 或模组前停止服务端或使用可靠的一致性备份方式。备份世界目录、server.properties、config、mods 清单和 JVM 参数文件。至少保留多个时间点的备份避免最新备份已经包含损坏数据。重要备份尽可能复制到服务器以外的位置降低单机磁盘故障风险。定期进行恢复演练不要只确认 ZIP 文件存在。7.2 安全注意事项RCON 密码属于敏感信息不应出现在公开截图、报告或聊天记录中。RCON、Prometheus、Node Exporter、Minecraft Exporter 等管理/监控端口原则上只绑定本机或受限网段。MCSManager 管理界面应使用强密码并限制管理端口的访问来源。离线模式下身份验证与在线模式不同应结合白名单、防火墙和可信玩家管理降低冒名登录风险。系统更新、Java 更新和模组更新应先在备份基础上进行避免一次性批量更新导致问题难以定位。备份文件与备份策略备份策略文件位置:config/simplebackups-common.toml建议修改项backupsToKeep(最大备份文件数)8 项目总结通过本项目完成了从服务端部署、参数配置、进程管理到指标监控和故障分析的完整实践。项目中遇到的问题表明服务器运行质量不能只根据单一硬件指标判断需要将日志、监控数据、玩家复现步骤和模组依赖关系结合起来分析。
阅读完成 · 觉得有帮助?
咨询建站