Graceful server shutdown

Post Reply
Masher
Site Admin
Posts: 3347
Joined: Thu Apr 20, 2006 2:54 pm
Location: America's Hearland
Contact:

Graceful server shutdown

Post by Masher » Sun Jan 01, 2012 9:09 pm

The panel, by default, when stopping servers simply kills the server process. This normally doesn't cause any issues. However, for games with persistent worlds this causes problems.

Changes in the world aren't instantly saved to disk. If the server where to be stopped, all changes made since the last save would be lost. Because of this we implemented a way for the panel to stop the server and save the world before shutting down the server.

Games thus far supported are:
  • ARK: Survival Evolved
  • Minecraft
  • Rust
  • 7 Days to Die
  • Let us know if other game servers are having issues....
Please scroll down to the game you're interested in for the full details.

ARK: Survival Evolved
For ARK graceful shutdowns:
  • Game type for server needs to be set to 'Ark: Survival Evolved'
  • The 'Query Address' and 'RCON Port' settings need to be set for the server and accurate.
  • The server's command line needs to contain '?ServerAdminPassword=admin_password' (admin_password should be your password) and '?RCONEnabled=True'
  • The panel will use this information to start a ingame countdown and gracefully shut down the server.
Minecraft
For Minecraft to work:
  • Game type for server needs to be set to Minecraft in the panel
  • The ‘Query Address’ setting for the specific server needs to be set and accurate (if you can see the status of the server in the query tool--it should be fine). If a remote node is used, the monitor will use the Private query setting if set instead of the query ip setting.
  • RCON has to be enabled for the server, RCON details need to be set on the query tab and the port and password need to be set in the server.properties file as well.
  • The server.properties file needs to be accessible by the panel, and needs to be located in the directory set as the 'Working Directory' for the specific server. Typically this is the same folder as the server's .jar file.
  • Version 1.46 or better of UGCC
To verify that it works you can:
  • Connect to the game server in a client and stop the server in the control panel. You should see a message saying the server is shutting down, and then will get disconnected from the server shortly afterward.
  • View the logs for the game server. The log will indicate whether it was able to gracefully shutdown the server or not.
Downfalls:
Since we can't control how long the save world will take, some timeouts may be reached. These could be UGCC's timeouts or the web server's. You can simply wait for the panel to show the server as being down if a timeout should occur.

Rust
For Rust to work:
  • Only the new version of Rust is supported.
  • Game type for server needs to be set to Rust in the panel
  • The ‘Query Address’ setting for the specific server needs to be set and accurate (if you can see the status of the server in the query tool--it should be fine). If a remote node is used, the monitor will use the Private query setting if set instead of the query ip setting.
  • RCON has to be enabled for the server, RCON details need to be set on the query tab
  • You must have the rcon commands set in the command line or hidden command line (+rcon.port, +rcon.password, and +rcon.ip)
  • The rcon password MUST be in quotes (""), as shown in the example at http://rustdev.facepunchstudios.com/ded ... erver/rcon
  • Version 1.78 or better of UGCC
To verify that it works you can:
  • Connect to the game server in a client and stop the server in the control panel. You should see a message saying the server is shutting down, and then will get disconnected from the server shortly afterward.
  • View the logs for the game server. The log will indicate whether it was able to gracefully shutdown the server or not.
Downfalls:
Since we can't control how long the save world will take, some timeouts may be reached. These could be UGCC's timeouts or the web server's. You can simply wait for the panel to show the server as being down if a timeout should occur.

7 Days to Die
For 7 Days to Die graceful shutdown to work:
  • Game type for server needs to be set to 7 Days to Die in the panel
  • The ‘Query Address’ setting for the specific server needs to be set and accurate (if you can see the status of the server in the query tool--it should be fine). If a remote node is used, the monitor will use the Private query setting if set instead of the query ip setting.
  • RCON has to be enabled for the server, RCON details need to be set on the query tab
  • In serverconfig.xml; 'TelnetEnabled' needs to be set to true, TelnetPort needs to be set, TelnePassword needs to be set.
  • The serverconfig.xml file needs to be accessible by the panel, and needs to be located in the directory set as the 'Working Directory' for the specific server. Typically this is the same folder as the server's binary.
  • Version 1.772 or better of UGCC
To verify that it works you can:
  • Connect to the game server in a client and stop the server in the control panel. You should see a message saying the server is shutting down, and then will get disconnected from the server shortly afterward.
  • View the logs for the game server. The log will indicate whether it was able to gracefully shutdown the server or not.
Downfalls:
Since we can't control how long the save world will take, some timeouts may be reached. These could be UGCC's timeouts or the web server's. You can simply wait for the panel to show the server as being down if a timeout should occur.
Masher
-----------
Please do not PM me unless asked to! We are a small company and if you have an issue or question it would be best to post it in the forums where it can help others in the future.

Need an affordable web control panel? Try UGCC.

Post Reply