Skip to content
Viet Nguyen edited this page Jan 22, 2017 · 1 revision

##Setup Example ###Assumptions

  • This is a single server setup. If you are managing multiple server, you obviously know what you are doing.
  • This example is based on Debian.
  • We assumed that you already have Java 8 installed.
  • We use /home/minecraft folder for server files
  • We use /home/minecraft/worlds folder for world folder
  • We use /home/minecraft/playerdata for playerdata
  • We use /home/minecraft/stats for stats

###Steps

  1. Create the following folders:
  • /home/minecraft/proxy1
  • /home/minecraft/proxy2
  • /home/minecraft/proxy1/plugins
  • /home/minecraft/proxy2/plugins
  • /home/minecraft/server1
  • /home/minecraft/server2
  • /home/minecraft/server1/plugins
  • /home/minecraft/server2/plugins
  • /home/minecraft/worlds
  • /home/minecraft/worlds/world1
  • /home/minecraft/worlds/world2
  • /home/minecraft/playerdata
  • /home/minecraft/stats
  1. Install Redis & screen:
apt-get install redis-server
apt-get install screen
  1. Download server softwares to the appropriate folder:
  1. Run servers to generate configs NOTE: Startup script for startup must have the "--world-dir" start-up parameter, so that all spigot servers can share the same "worlds" folder.

For example, we use /home/minecraft/worlds folder for all Spigot servers to access world files:

cd /home/minecraft/proxy1 && java -jar BungeeCord.jar
cd /home/minecraft/proxy2 && java -jar BungeeCord.jar
cd /home/minecraft/server1 && java -Dcom.mojang.eula.agree=true -jar paper.jar --port 25567 --level-name world1 --world-dir /home/minecraft/worlds
cd /home/minecraft/server2 && java -Dcom.mojang.eula.agree=true -jar paper.jar --port 25568 --level-name world2 --world-dir /home/minecraft/worlds
  1. Proxies & servers config Here are a few things that need changes in the config of Spigot Minecraft server to make things work. Most of the configurations are very standard, just double check and make sure that "server-ip" and "server-port" are defined correctly.
  • Proxy config:

    • /home/proxy1/config.yml:
      query_port: 25565
      
    • /home/proxy2/config.yml:
      query_port: 25566
      
  • Server config:

    • server.properties
      server-ip={the public or private server IP that is attached to your machine}
      server-port={whatever port you want}
      online-mode=false
    • bukkit.yml
      connection-throttle: -1
    • spigot.yml
      bungeecord: true
  1. Spigot Startup Script Startup script for startup must have the "--world-dir /{folder location}" start-up parameter, so that all spigot servers can share the same collection of worlds.

For example, we use /home/minecraft/worlds folder for all Spigot servers to access world files:

java -jar spigot.jar --world-dir /home/minecraft/worlds
  1. Kosmos config Kosmos config is very simple. The files can be found at plugins/Kosmos/config.json Make sure all servers are shutdown before applying the configs
{
  "redisConfig": {
    "ip": "127.0.0.1",
    "port": 6379,
    "password": "",
    "timeOut": 3000,
    "maxNumPools": 20
  },  
  "myAddress": {
    "ipAddress": "YOUR-SERVER-IP-ADDRESS",
    "port": -1
  },
Clone this wiki locally