Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Optimizing linux for game servers.
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Optimizing linux for game servers.

From anyone that has experience, what's the best way to optimize linux, specifically ubuntu for game servers... The server is currently hosting 8 tf2 servers/250 (possible) mumble servers and a web server.

Anyone have advice?

«1

Comments

  • The best way would just to use a minimal OS, such as Debian base. You can get a lot more out of a box by not having unnecessary services running.

  • edited November 2014

    @GVH_Eric said:
    The best way would just to use a minimal OS, such as Debian base. You can get a lot more out of a box by not having unnecessary services running.

    That seems like would be fairly negliable - ubuntu 14.04 takes less than 0.1 of a cpu core to run while idle and not much RAM.

  • @Void_Whisperer said:
    That seems like would be fairly negliable - ubuntu 14.04 takes less than 0.1 of a cpu core to run while idle and not much RAM.

    Don't be surprised, GVH has the worst support around...

    I don't know anything about TF2 hosting, but ideally wouldn't you want the Mumble servers and web server on a different server. Not only to free up bandwidth but resources..

    Also what's the server specs?
    CPU
    RAM
    Port Speed
    HDD or SSD

  • Something that I remember from setting up source servers is that you can define which core the game server uses. Make sure that overall load is evenly distributed between the cores.

  • Basically if you're doing ubuntu , I'd suggest mumble and / web on seperate servers . Do not use vnc / applications for which you have no use at all. Basically apache becomes resource intensive with increasing number of connection requests so its suggest to be kept aside. try nginx if you want to have both on the same server.

  • Another thing to keep in mind is that gameservers with a shitload of plugins/addons will eat up alot processing power, especially when the codes are not optimized or contain errors causing alot of extra heat (this mainly applies on servers using Sourcemod or metamod.)

    Properly configuring your server startup with addition parameters goes a long way too.

    Linux itself is by default already doing a good job at being lightweight and efficient.

  • @ATHK said:
    HDD or SSD

    I think it's an HDD, but source games are not hard-drive heavy besides when loading maps.

    Other specs of the server:
    E3-1230v2
    16GB of RAM
    5TB of bandwidth

    I'd have trouble splitting up the mumble and web server, as the mumble servers are dynamically created and destroyed via an interface on the website.

  • @Mark_R said:
    Another thing to keep in mind is that gameservers with a shitload of plugins/addons will eat up alot processing power, especially when the codes are not optimized or contain errors causing alot of extra heat (this mainly applies on servers using Sourcemod or metamod.)

    Properly configuring your server startup with addition parameters goes a long way too.

    Linux itself is by default already doing a good job at being lightweight and efficient.

    I'll look at the startup params, and most of the servers only run SMod and a few statistic related plugins.

  • @Void_Whisperer said:
    I'll look at the startup params, and most of the servers only run SMod and a few statistic related plugins.

    Stat plugins that use a Database? If yes then this will definitely add up too.

  • You could and should separate the actual web/voice server from the game server(s) as mentioned above, but that's about it.

    The less SM based plugins you use, the better, but it doesn't make that big of a difference as some people tend to think.

    In theory you could mess around with the actual kernel as seen here, but I'm somewhat skeptical about the actual benefits of doing this.

  • @Mark_R said:
    Stat plugins that use a Database? If yes then this will definitely add up too.

    No, remote stats like logs.tf and SizzlingStats

  • @Void_Whisperer said:
    No, remote stats like logs.tf and SizzlingStats

    Have you considered using TFTrue instead of SM/MM?

  • RalliasRallias Member
    edited November 2014

    Is your game a single-threaded process? Then pin it to it's own processor core. Pin EVERYTHING to different processor cores. Remember hyperthreading in this spiele. Pin it to both hyperthreads. Remember that E5-2xxx and greater give shittier performance for gaming purposes. E3-12xx and E5-16xx will give you good perf. If you have Mumble, VNC, et cetera, pin it to a separate core. Make sure you're using as little memory as possible. If you're on a java based game, '-XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=10' are friendly arguments. Consider what you actually need. Don't need that mod? Don't include them.

    I admit I know little about TF2, so take with grain of salt.

  • @george said:
    Have you considered using TFTrue instead of SM/MM?

    How much more effective memory/cpu wise is tftrue?

  • @Void_Whisperer said:
    How much more effective memory/cpu wise is tftrue?

    The actual footprint is extremely small. It has been developed specifically for competitive scene and has been supported by both logs.tf and SS from the very beginning.

    Unless you need some very specific SM based plugins you can't really go wrong with TFTrue.

  • @george said:
    Unless you need some very specific SM based plugins you can't really go wrong with TFTrue.

    Hmm.. I'll look into it. As long as it uploads logs.tf it might work in my case.

  • If the hard drive is used, consider if another filesystem may improve performance.

  • @ricardo said:
    If the hard drive is used, consider if another filesystem may improve performance.

    As I said, these are mainly source game servers, so the hard-drive usage is only logging and map loading.

  • If you are using Desktop OS for server and game servers, nothing will help you. Use defaults.

  • Optimize the kernel, it's the best way

  • @Void_Whisperer said:
    As I said, these are mainly source game servers, so the hard-drive usage is only logging and map loading.

    Source is very hard drive intensive.

    Do you have sprays enabled on your server?

    Are you running 8 servers on that e3?

    Move the mumble and web server to a different VM.

    Do you have MYSQL running on that box for stats or anything?

    When is the server slow?

  • @Mun said:
    Source is very hard drive intensive.

    What makes you say that?

  • @george said:
    What makes you say that?

    In terms of how source engine was built, there is tons of calls to disk. A "latent" disk will cause you more issues then just about anything else. The calls are small, but if they are slow, they generally will dramatically slow down your server.

    This is very much true on joining the server.

    Usually this is masked by disk-caching that is run on most linux servers.

  • @Mun said:
    When is the server slow?

    I'm more trying to optimize it as a pre-tense. Sprays aren't enabled as the servers are mainly geared towards competitive play.

  • georgegeorge Member
    edited November 2014

    @Mun said:
    In terms of how source engine was built, there is tons of calls to disk. A "latent" disk will cause you more issues then just about anything else. The calls are small, but if they are slow, they generally will dramatically slow down your server.

    Unless OP is using insanely slow drive(s), this should not be an issue. I'd say the biggest problem when it comes down to hosting "any" game servers really are the massive memory leaks and crazy CPU usage in various cases, specifically in TF2.

    I'd just move the web/voice server(s) to some reliable VPS and keep the E3 for the game servers only. Getting rid of a server or two wouldn't hurt either since 8 sounds like a lot in this case, but I could be wrong.

    Thanked by 1joereid
  • @george said:

    There's a specific reason for the 8. I decided to make a site to help the TF2 competitive community in that they can 'rent' servers and mumble servers for free.

  • @george said:

    You are right, 8 is a ton for that processor. 6 would be ok, 8 is a little much.

    It also depends on if he is running anything else on the box. Source and MYSQL have never been a good mix on the same box.

    Personally, I am not sure what you are aiming for, but the servers sound like they will be less then par if most are filled up.

  • If you're going to be using custom maps, try and use a separate webserver for clients to download the maps. Just use the 'sv_downloadurl' option in the server.conf file.

  • @Mun said:
    Personally, I am not sure what you are aiming for, but the servers sound like they will be less then par if most are filled up.

    Difference between these and most tf2 servers: These max at 18 players + STV

    There can be 3 of them running w/ 18 people at once before it even reaches a load avg of like 1.0

  • @Void_Whisperer said:
    There's a specific reason for the 8. I decided to make a site to help the TF2 competitive community in that they can 'rent' servers and mumble servers for free.

    serveme.tf?

Sign In or Register to comment.