From d038710c7c4dbf97773b945ec2548e97daf9cf3f Mon Sep 17 00:00:00 2001 From: valgulnecron <39313199+ValgulNecron@users.noreply.github.com> Date: Tue, 14 Jul 2026 17:01:19 +0200 Subject: [PATCH] fix(ark, 7dtd): ARK was killed by a probe that can never pass; 7dtd ran out of disk MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ARK: the server was WORKING the whole time. Its own game log: Server: "ARK #391248" has successfully started! Full Startup: 50.89 seconds Server has completed startup and is now advertising for join. (10.32GB Mem) ...while the startup probe failed 1651 times over 13 hours and SIGTERMed it. The template assumed ?RCONEnabled=True / ?RCONPort= on the launch string enable RCON. They do not — ASA only honours those from GameUserSettings.ini, which this template deliberately does not render (ASA rewrites that file, so re-rendering every start would wipe the admin's in-game settings). So nothing ever listened on 27020, and every probe targeted 27020. ASA has no other probeable TCP port (game/peer are UDP), so the probes are removed entirely. The server boots in under a minute; the probe was the entire problem. RCON still works after the documented one-time GameUserSettings.ini edit — but the pod must not depend on that to be healthy. 7DtD: SteamCMD failed with 'Not enough disk space to download server files' (exit 1, 25 restarts). The 17.5GB download plus install does not fit in the declared 15Gi. Raised to 45Gi. Signed-off-by: valgulnecron <39313199+ValgulNecron@users.noreply.github.com> --- 7-days-to-die/module.yaml | 2 +- 7-days-to-die/template.yaml | 4 +-- ark-survival-ascended/module.yaml | 2 +- ark-survival-ascended/template.yaml | 47 ++++++++++++----------------- 4 files changed, 23 insertions(+), 32 deletions(-) diff --git a/7-days-to-die/module.yaml b/7-days-to-die/module.yaml index 8db7d5b..3d35750 100644 --- a/7-days-to-die/module.yaml +++ b/7-days-to-die/module.yaml @@ -1,7 +1,7 @@ apiVersion: gameplane.local/module/v1 name: 7-days-to-die displayName: 7 Days to Die -version: 2.0.0 +version: 2.0.1 game: 7-days-to-die summary: 7 Days to Die dedicated server (vinanrra/7dtd-server) with persistent world saves and image-native mod installers. No RCON console or wizard server settings — this image spreads them across directories the operator can't all mount at once. homepage: https://7daystodie.com/ diff --git a/7-days-to-die/template.yaml b/7-days-to-die/template.yaml index 1f86736..61978c7 100644 --- a/7-days-to-die/template.yaml +++ b/7-days-to-die/template.yaml @@ -43,7 +43,7 @@ metadata: spec: displayName: 7 Days to Die game: 7-days-to-die - version: 2.0.0 + version: 2.0.1 accentColor: "#8b0000" description: | 7 Days to Die dedicated server using @@ -90,7 +90,7 @@ spec: advertise: false storage: - size: 15Gi + size: 45Gi mountPath: /home/sdtdserver/.local/share/7DaysToDie resources: diff --git a/ark-survival-ascended/module.yaml b/ark-survival-ascended/module.yaml index 85cf8a4..a085cbc 100644 --- a/ark-survival-ascended/module.yaml +++ b/ark-survival-ascended/module.yaml @@ -1,7 +1,7 @@ apiVersion: gameplane.local/module/v1 name: ark-survival-ascended displayName: "ARK: Survival Ascended" -version: 1.0.4 +version: 1.0.5 game: ark-survival-ascended summary: "ARK: Survival Ascended dedicated server (mschnitzer/asa-linux-server) with RCON console/moderation. CurseForge mods install via the game's own -mods= launch parameter." homepage: https://survivetheark.com/ diff --git a/ark-survival-ascended/template.yaml b/ark-survival-ascended/template.yaml index cad688a..83c5494 100644 --- a/ark-survival-ascended/template.yaml +++ b/ark-survival-ascended/template.yaml @@ -58,7 +58,7 @@ metadata: spec: displayName: "ARK: Survival Ascended" game: ark-survival-ascended - version: 1.0.4 + version: 1.0.5 accentColor: "#00b2e2" description: | ARK: Survival Ascended dedicated server using @@ -172,33 +172,24 @@ spec: providers: - provider: curseforge - probes: - # Game/peer ports are UDP; RCON is the only TCP port, so it's the - # probe target (same pattern as factorio). - # - # The startup probe is LOAD-BEARING, not a nicety. First boot downloads - # ~13 GB of game via SteamCMD (plus Proton), which takes far longer than - # any sane liveness window. Without a startup probe the liveness probe - # fires ~5 minutes in, kills the container mid-download, and the server - # crash-loops forever — never once reaching a state where RCON listens. - # A startup probe suspends liveness/readiness until it first succeeds, - # so the install gets up to FOUR HOURS to finish; only then does the normal - # liveness window take over. - startup: - tcpSocket: - port: rcon - periodSeconds: 30 - failureThreshold: 480 - readiness: - tcpSocket: - port: rcon - periodSeconds: 15 - failureThreshold: 20 - liveness: - tcpSocket: - port: rcon - periodSeconds: 30 - failureThreshold: 5 + # NO PROBES — deliberately. ASA exposes no probeable TCP port: + # - game/peer are UDP, which the kubelet cannot probe + # - RCON is NOT enabled by ?RCONEnabled=True / ?RCONPort= on the launch + # string. ASA only honours those from GameUserSettings.ini, which this + # template deliberately does not render (ASA rewrites that file, so a + # re-render every start would wipe the admin's in-game settings). + # + # So an RCON probe can NEVER succeed, and it killed a perfectly healthy + # server. The game's own log: + # Server: "ARK #391248" has successfully started! + # Full Startup: 50.89 seconds + # Server has completed startup and is now advertising for join. + # ...while the startup probe failed 1651 times over 13h and SIGTERMed it. + # The server boots in under a minute; the probe was the entire problem. + # + # Once the admin enables RCON via the one-time GameUserSettings.ini edit + # (see README), the Console/RCON features light up — but the pod must not + # depend on that to be considered healthy. # rcon-password.txt is a Gameplane-owned file ASA never reads or writes, # so re-rendering it on every restart is safe — unlike