How to Setup ARK Cluster Servers on a Single VPS: Port Configuration and Clustering Guide
Running more than one ARK: Survival Evolved map can make your gaming community much more interesting. Instead of keeping players on a single map, an ARK cluster lets them move between connected maps while keeping their character, items, and creatures available across the cluster.
You do not always need a separate physical server for every map. With enough VPS resources, multiple ARK server instances can run on a single Linux VPS. The important part is configuring each instance with its own ports, directories, and startup settings.
If you are still choosing the right server resources, our guide to ARK VPS server crashes covers the resource and stability issues that commonly affect ARK servers.
This guide explains how an ARK cluster works, how to run multiple maps on one VPS, how ports are assigned, and what you need to configure to enable character transfers.
What Is an ARK Cluster Server?
An ARK cluster is a group of connected ARK server instances that share cluster data.
Each server can run a different map. For example, you could have:
- The Island
- Ragnarok
- Aberration
- Extinction
- Valguero
Note that each map has an exact identifier used in the startup command: TheIsland, Ragnarok, ScorchedEarth_P, Aberration_P, Extinction, Valguero_P. Some maps use a _P suffix — without the exact identifier, the map will not load.
Players can use the in-game transfer system to move their character between the connected servers.
The important thing to understand is that a cluster is not simply one ARK server with several maps loaded at the same time. Each map normally runs as its own server process.
When multiple instances run on one VPS, each instance should have its own configuration, server directory, and network ports.
Can You Run Multiple ARK Servers on One VPS?
Yes, you can run multiple ARK server instances on a single VPS if the server has enough CPU, RAM, storage, and network capacity for the combined workload.
For example, you could run:
- Server 1 — The Island
- Server 2 — Ragnarok
on the same VPS.
The two instances should use separate server directories and separate network ports.
A useful planning rule: each ARK instance is effectively single-threaded and will saturate one CPU core. A typical map needs roughly 1 full CPU core, 6–12 GB of RAM, and about 10 GB of disk space. For two maps, start with at least a 4-core / 16–24 GB VPS, then monitor actual usage.
The number of servers you can run depends on the resources available and the workload generated by each map.
Running two lightly populated maps is very different from running several heavily populated maps with large bases, many creatures, and multiple mods.
What You Need Before Setting Up an ARK Cluster
Before configuring the cluster, prepare your Linux VPS with:
- A compatible Linux operating system
- SteamCMD
- ARK server files (Steam App ID 376030)
- Sufficient RAM (see sizing above)
- Suitable CPU resources
- Enough storage for multiple maps
- SSH access
- Firewall access
- Separate directories for each server
It is also a good idea to keep your server files organized from the beginning.
For example:
/home/ark/ ├── server1/ ├── server2/ └── cluster/
The exact directory structure can be different, but keeping each server instance separated makes updates, backups, and troubleshooting easier.
Step 1: Create a Dedicated User and Separate Directories
Run the ARK servers as a dedicated non-root user:
sudo useradd -m -s /bin/bash ark sudo su - ark
Then create one directory per server, plus the shared cluster directory:
mkdir -p /home/ark/server1 mkdir -p /home/ark/server2 mkdir -p /home/ark/cluster
The first directory will contain your first ARK server, while the second contains the other map.
The shared cluster directory is used to store the cluster data that the connected server instances need to access for transfers.
Keeping these files separate prevents one server's configuration from accidentally affecting another.
Important: use the absolute path /home/ark/... everywhere in this guide. Writing ~/ark instead will resolve to the logged-in user's home directory, which may not be /home/ark — and a mismatched path in the cluster flags will silently break transfers.
Step 2: Install the ARK Server Files
SteamCMD is used to download and update the ARK: Survival Evolved dedicated server files.
If SteamCMD is not already installed on your Linux VPS, install it first (Debian/Ubuntu):
sudo apt update && sudo apt install -y lib32gcc-s1 steamcmd
(For other distributions, use the equivalent package from your distribution's repositories.)
For the first server, use:
steamcmd +force_install_dir /home/ark/server1 +login anonymous +app_update 376030 validate +quit
For the second server, use:
steamcmd +force_install_dir /home/ark/server2 +login anonymous +app_update 376030 validate +quit
The 376030 value is the Steam application ID used for the ARK: Survival Evolved dedicated server.
Once the installation finishes, confirm that the server executable is present in each directory:
ls /home/ark/server1/ShooterGame/Binaries/Linux/ShooterGameServer ls /home/ark/server2/ShooterGame/Binaries/Linux/ShooterGameServer
If you already have a working ARK server, you can use its installation as the starting point for another instance — but copy it into the new directory and delete or rename the copied ShooterGame/Saved folder (or use ?AltSaveDirectoryName= in Step 4). Otherwise both instances will write to the same save files and corrupt them.
Do not simply launch the same server directory twice without separating the configuration and save locations.
Step 3: Assign Different Ports to Each Server
This is one of the most important parts of a cluster setup.
Multiple ARK server instances running on the same VPS need separate network ports so that their traffic does not conflict.
A standard ARK instance uses four ports:
The peer port is always the game port + 1 and is used automatically — you cannot set it separately. This means a server on game port 7777 also occupies port 7778. Leave a gap of at least 2 between each server's game port (for example, 7777 and 7779) so the automatic peer ports never collide.
For the example configuration in this guide, the assignments are:
The exact port numbers can be different. What matters is that each server uses its own available ports.
One rule for choosing query ports:
- Query ports above 27019 are not found automatically by the Steam server browser — players must add
IP:QueryPortto their favorites manually.
You should also document your port assignments so you know which ports belong to which map.
Step 4: Configure the First ARK Server
Start by configuring your first map.
Before running the startup command, move into the directory containing the ARK server executable:
cd /home/ark/server1/ShooterGame/Binaries/Linux
For the first server, use:
./ShooterGameServer TheIsland?SessionName=MyARKCluster-TheIsland?AltSaveDirectoryName=Island1?Port=7777?QueryPort=27015?RCONPort=27020 -NoTransferFromFiltering -clusterid=x7Kq2mP9vLz4Rt -ClusterDirOverride=/home/ark/cluster
What each part does:
TheIsland— the map identifier (use the exact identifier from "What Is an ARK Cluster Server?" — for example,Aberration_Pfor Aberration).SessionName=MyARKCluster-TheIsland— the server name players see in the browser.AltSaveDirectoryName=Island1— gives this instance its own save folder, so a copied installation can never overwrite or corrupt another instance's save.Port=7777— the game port. The peer port (7778) follows automatically.QueryPort=27015— the Steam query port.RCONPort=27020— the RCON port (TCP). Each instance needs a different one.-NoTransferFromFiltering— an optional command-line flag that some cluster operators include in their startup commands. It is not a required part of the cluster configuration.-clusterid=x7Kq2mP9vLz4Rt— identifies the cluster. Both servers must use the same cluster ID, or they cannot see each other.-ClusterDirOverride=/home/ark/cluster— tells the server where the shared cluster data directory is located.
About the cluster ID: use a long, unique ID like the example above — not a short, guessable name. Do not publish your real cluster ID anywhere. Your session name (what players see) can stay friendly; your cluster ID should not.
These three cluster flags (-clusterid, -ClusterDirOverride, and -NoTransferFromFiltering) are command-line options. They are not set in the INI configuration files.
The first server must have its own game, peer, and query ports, and it must be able to read from and write to the shared cluster directory.
Step 5: Configure the Second ARK Server
Create a separate startup configuration for the second map.
First, move into the second server's executable directory:
cd /home/ark/server2/ShooterGame/Binaries/Linux
Then use its own map, session name, and ports:
./ShooterGameServer Ragnarok?SessionName=MyARKCluster-Ragnarok?AltSaveDirectoryName=Rag1?Port=7779?QueryPort=27016?RCONPort=27021 -NoTransferFromFiltering -clusterid=x7Kq2mP9vLz4Rt -ClusterDirOverride=/home/ark/cluster
The map, session name, AltSaveDirectoryName, game port, query port, and RCON port are all different from the first server.
The second server uses:
- Game Port: 7779 (peer port 7780 automatically)
- Query Port: 27016
- RCON Port: 27021
Both servers use the same:
-clusterid=x7Kq2mP9vLz4Rt -ClusterDirOverride=/home/ark/cluster -NoTransferFromFiltering
The separate session names make it easier for players and administrators to distinguish the maps, while the shared cluster ID associates both instances with the same cluster.
Step 6: Open the Required Firewall Ports
Your VPS firewall must allow the ports required by your ARK servers.
For the example configuration above, allow:
Server 1: 7777/UDP (game) 7778/UDP (peer) 27015/UDP (query) 27020/TCP (RCON — only if you use RCON) Server 2: 7779/UDP (game) 7780/UDP (peer) 27016/UDP (query) 27021/TCP (RCON — only if you use RCON)
With UFW, you can add the required ports using:
sudo ufw allow 7777/udp sudo ufw allow 7778/udp sudo ufw allow 27015/udp sudo ufw allow 7779/udp sudo ufw allow 7780/udp sudo ufw allow 27016/udp # RCON (TCP) — only if you use remote administration, and only from your own IP: sudo ufw allow from YOUR_ADMIN_IP to any port 27020 proto tcp sudo ufw allow from YOUR_ADMIN_IP to any port 27021 proto tcp sudo ufw reload sudo ufw status numbered
Do not open the RCON port to the entire internet. RCON gives full control of the server, and an exposed RCON port is brute-forceable. If you use it, set a strong ServerAdminPassword in GameUserSettings.ini and restrict access to your admin IP, as shown above.
Then check the firewall rules and confirm that the required ports are listed and enabled.
Do not open random ports just because they are available. Only allow the ports your ARK instances actually require.
Also check whether your VPS provider has an additional network firewall or security group — the ports must be open there as well.
Step 7: Configure the Shared Cluster Directory
For a cluster to work correctly, both server instances must point to the same cluster data location:
-ClusterDirOverride=/home/ark/cluster
and use the same cluster ID:
-clusterid=x7Kq2mP9vLz4Rt
The shared cluster directory stores the cluster data used by the connected ARK server instances. It is not a server-to-server communication channel — instead, it provides a common location for the cluster data required by the connected servers.
Two practical notes:
- The actual cluster files are created in a subfolder named after the cluster ID:
/home/ark/cluster/x7Kq2mP9vLz4Rt/. - That subfolder is only created when a player first uploads or downloads through a transfer terminal. An empty cluster directory at first is normal — do not treat it as an error.
Make sure both instances have permission to read and write to the directory. Since the servers run as the ark user:
sudo chown -R ark:ark /home/ark chmod 755 /home/ark/cluster ls -ld /home/ark/cluster
If one server cannot access the cluster directory correctly, transfers may not work as expected.
Step 8: Enable Transfers in the Server Settings
The startup flags are not the whole story. A few settings in each instance's GameUserSettings.ini can silently block transfers.
Edit each file:
/home/ark/server1/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini /home/ark/server2/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini
Under the [ServerSettings] section, make sure these settings are present (add them if they are missing):
[ServerSettings] PreventUploadSurvivors=False PreventUploadItems=False PreventUploadDinos=False PreventDownloadSurvivors=False PreventDownloadItems=False PreventDownloadDinos=False noTributeDownloads=False CrossARKAllowForeignDinoDownloads=True
The critical one is noTributeDownloads=False — if it is set to True, nothing will transfer, no matter how correctly the cluster is configured. If you copied an existing installation for the second instance, double-check these values in the copy.
Step 9: Start Both ARK Servers
Once the configuration is ready, start the first server and make sure it loads correctly. Then start the second server.
Verify that both instances are running:
ps aux | grep ShooterGameServer
Both processes should appear. Then confirm the ports are actually listening:
sudo ss -ulpn | grep -E '7777|7778|7779|7780|27015|27016'
If you enabled RCON, also check the TCP RCON ports:
sudo ss -tlnp | grep -E '27020|27021'
Watch the server log for errors while it starts:
tail -f /home/ark/server1/ShooterGame/Saved/Logs/ShooterGame.log
Check that:
- Both server processes are running
- Each server is listening on its assigned ports
- Both maps appear in the server browser (or in your own favorites as
IP:Port) - The cluster directory is accessible
- Firewall rules allow the required traffic
- Both servers use the same cluster ID
- Both servers use the same cluster directory
- Each server has its own session name
Do not immediately add more maps until the first two are working correctly.
Testing one connection between two maps first makes troubleshooting much easier. Before opening the cluster to players, test the transfer process with a test character.
How Character Transfers Work Between Cluster Servers
The main purpose of an ARK cluster is to allow players to move between connected maps.
Once the cluster is configured correctly, players can use the in-game transfer system to move their character between servers.
A typical transfer process involves:
- Joining one map.
- Accessing a transfer terminal on that map.
- Selecting the destination server from the cluster list.
- Uploading the character on the source map.
- Joining the destination map.
- Downloading the character at a terminal there.
Both servers must share the same cluster ID for each other to appear in the terminal's cluster list.
Before opening the cluster to players, test the transfer process with a test character.
Things to Check When Transfers Do Not Work
If players cannot move between your ARK maps, check the configuration carefully.
Look at:
- Cluster ID — both instances must use the exact same
-clusterid - Cluster directory — both must use the same
-ClusterDirOverridepath - Cluster directory permissions — the
arkuser must own the directory and be able to read/write it - INI transfer settings —
noTributeDownloads,PreventUpload*, andPreventDownload*(Step 8) - Server startup parameters — all flags present and matching on both instances
- Firewall rules — game, peer, and query ports open
- Server ports
- Peer ports
- Query ports
- Server logs —
ShooterGame/Saved/Logs/ShooterGame.log
Both server instances must use the same cluster ID and the appropriate shared cluster data location.
Also make sure the servers are actually running as part of the same cluster rather than using different cluster IDs or separate cluster directories.
Managing Multiple ARK Servers on One VPS
Running multiple maps means you also have more processes to manage.
A process manager can make administration easier.
You can use tools such as:
- systemd
- screen
- tmux
For a small setup, screen or tmux can be convenient.
For a more permanent production setup, use systemd — it automatically starts services at boot and can restart them when they crash. Example unit file for the first server:
# /etc/systemd/system/ark-island.service [Unit] Description=ARK: Survival Evolved - The Island (cluster node 1) After=network-online.target Wants=network-online.target [Service] Type=simple User=ark Group=ark WorkingDirectory=/home/ark/server1/ShooterGame/Binaries/Linux ExecStart=/home/ark/server1/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?SessionName=MyARKCluster-TheIsland?AltSaveDirectoryName=Island1?Port=7777?QueryPort=27015?RCONPort=27020 -NoTransferFromFiltering -clusterid=x7Kq2mP9vLz4Rt -ClusterDirOverride=/home/ark/cluster Restart=on-failure RestartSec=30 LimitNOFILE=100000 Nice=5 [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload sudo systemctl enable --now ark-island systemctl status ark-island journalctl -u ark-island -f
Create ark-ragnarok.service the same way with the second server's values (server2 paths, Port=7779, QueryPort=27016, RCONPort=27021).
Regardless of the method you choose, give each ARK server its own service or session name, for example:
ark-island ark-ragnarok
This makes it easier to start, stop, and monitor individual maps.
Monitor VPS Resources
Running several ARK servers on one VPS increases the overall resource requirements.
Keep the sizing rule in mind: one ARK instance ≈ one full CPU core + 6–12 GB RAM + ~10 GB disk. If the VPS runs out of RAM, the Linux OOM killer will terminate the ARK process — which looks like a "random crash."
Monitor:
- CPU usage (each instance should have its own core)
- RAM usage
- Swap usage (heavy swap usage causes lag)
- Disk usage
- Network activity
- Server process health
You can check memory with:
free -h
CPU and running processes can be checked with:
top
Disk capacity can be checked with:
df -h
If several maps are active at the same time, watch resource usage during peak player activity rather than only when the servers are idle.
What Happens If the VPS Does Not Have Enough Resources?
If the VPS cannot provide enough resources for all the ARK instances, you may notice:
- Server lag
- High CPU usage
- Memory exhaustion
- Slow world saves
- Server crashes
- Players being disconnected
Adding more server instances does not automatically mean the VPS can handle them.
If resource usage remains consistently high, reduce the workload or move to a VPS configuration with more suitable resources.
Back Up Your ARK Cluster
Backups become even more important when multiple maps are connected.
Keep backups of:
- Map save files
- Player data
- Cluster data
- Server configurations
- Important mod configurations
Store backups separately from the main VPS whenever possible.
A backup on the same VPS does not provide complete protection if the entire server or storage fails.
Common ARK Cluster Problems
One Server Does Not Appear
Check whether the server process is running and whether the required network ports are open.
Also check the query port: if it is above 27019, the Steam server browser will not find the server automatically — add IP:QueryPort to your favorites to test the connection directly.
If the server is missing from the transfer terminal's cluster list instead of the server browser, make sure both instances use the same cluster ID — terminals only list servers from the same cluster.
Both Servers Use the Same Port
Each ARK server instance needs its own available ports when running on the same VPS and IP address.
Remember the peer port (game port + 1) and the RCON port — all of them must be unique across instances. Check your startup commands and make sure the game, peer, query, and RCON ports do not overlap.
Character Transfer Does Not Work
Check that both servers are using the same cluster ID and shared cluster directory.
Then check the INI transfer settings (Step 8) — especially noTributeDownloads=False — and verify cluster directory permissions and server startup parameters.
One Map Crashes Frequently
Check the server logs and monitor VPS resources. The problem may be related to memory usage (including the OOM killer), CPU pressure, mods, corrupted files, or other configuration issues.
Players Cannot Connect
Check the VPS firewall, provider-level firewall, server IP address, and the ports assigned to the affected ARK instance.
Make sure the game, peer, and query ports required by that server are allowed.
Final Thoughts
Running an ARK cluster on a single VPS can be a practical way to connect multiple maps without maintaining a separate VPS for every server.
The key is proper separation and configuration. Each ARK instance should have its own server directory, map configuration, session name, save directory, and network ports, while the connected servers should use the same cluster ID and appropriate shared cluster data location.
Start with two maps, test connectivity and character transfers, and monitor CPU, RAM, storage, and network usage before adding additional servers.
With organized directories, clearly assigned ports, regular backups, and resource monitoring, you can build an ARK cluster that is easier to manage and troubleshoot.
Frequently Asked Questions
Can I run two ARK servers on one VPS?
Yes. You can run multiple ARK server instances on one VPS if the available CPU, RAM, storage, and network capacity are sufficient for the combined workload. As a planning guide, budget roughly one full CPU core and 6–12 GB of RAM per map.
Do multiple ARK servers on one VPS need different ports?
Yes. Each server instance needs its own available network ports when they are running on the same IP address. That includes the game port, the peer port (always game port + 1), the query port, and — if you enable it — the RCON port.
Can players transfer characters between ARK servers on the same VPS?
Yes, when the server instances are correctly configured as part of the same ARK cluster (same cluster ID and shared cluster directory) and the transfer settings in GameUserSettings.ini are enabled — in particular noTributeDownloads=False and the PreventUpload*/PreventDownload* settings set to False.
Do both ARK servers need the same cluster directory?
Yes. Connected servers should use the same -ClusterDirOverride path and the same -clusterid so that the cluster system can handle transfers between the maps.
How much VPS RAM do I need for an ARK cluster?
There is no single RAM requirement for every cluster, but each ARK instance typically uses roughly 6–12 GB of RAM depending on map, active players, mods, and world activity, plus about 10 GB of disk space. For two maps, start with at least a 4-core / 16–24 GB VPS and monitor actual usage before adding another map.
Why can't players connect to one of my ARK cluster servers?
Check whether the affected server is running, its assigned game, peer, and query ports are open, the VPS firewall allows the required traffic, and any provider-level firewall or security group is configured correctly. Also, if the query port is above 27019, players must add IP:QueryPort to their favorites.


