Difference between revisions of "Portal:Forge/ShardInstall"

From EncyclopAtys

Jump to: navigation, search
(STEP 5 : Use Ribs to complete Shard Setup)
 
(6 intermediate revisions by the same user not shown)
Line 9: Line 9:
 
<big>Requirements to install a shard (for a comfortable use):</big>
 
<big>Requirements to install a shard (for a comfortable use):</big>
  
* Choose a name for the shard (Arme/Atys, Yubo, Gingo, Rendor are already used). We call it on this doc the SHARDNAME
+
* Choose a name for the shard (Arma/Atys, Yubo, Gingo, Rendor are already used). We call it on this doc the SHARDNAME. Use same name for minion are a good idea ;)
 
* Have a hardware with at least 8 cores with +3Ghz and 16Go of ram
 
* Have a hardware with at least 8 cores with +3Ghz and 16Go of ram
 
* Have at least 100Go of disk space (no matter SSD or not)
 
* Have at least 100Go of disk space (no matter SSD or not)
 
* Have a domain name
 
* Have a domain name
** ⚠️ Please check the file /etc/hosts. The domain name must be linked to outgoing address like : <pre>37.187.139.90 gingo.ryzom.com gingo</pre>
+
** ⚠️ Please check the file /etc/hosts. The domain name must be linked only to outgoing address (and not 127.0.1.1). Like : <pre>37.187.139.90 gingo.ryzom.com gingo</pre>
  
 
== STEP 1 : Install Salt Minion ==
 
== STEP 1 : Install Salt Minion ==
Line 47: Line 47:
 
== STEP 3 : Run salt init ==
 
== STEP 3 : Run salt init ==
 
The salt master is installed in cloud.ryzom.com, so all commands must be run on this server.
 
The salt master is installed in cloud.ryzom.com, so all commands must be run on this server.
To init the shard, run:
+
To init the shard, run this command as tools user:
 
<pre>
 
<pre>
sudo sh /home/data/monitoring/salt/files/init_minions.sh SHARDNAME
+
/home/data/monitoring/salt/files/update_minions.sh SHARDNAME
 
</pre>
 
</pre>
 +
 +
* Later if you need to update the minion again, you can access to https://dag.ryzom.com, select Local at top right and run the dag Salting Minion. Enter the name of the Minion and run it
 +
 +
== STEP 4 : Start Ribs ==
 +
Go to https://dag.ryzom.com, select your Shard at top right and start RIBS dag. Check dag logs, you must see installation and finally:
 +
<pre>
 +
Running...<WSGIServer address=YOUR_DOMAIN:8081>
 +
</pre>
 +
 +
== STEP 5 : Use Ribs to complete Shard Setup ==
 +
'''Use ribs to Setup the Shard:'''
 +
* Setup RocketChat Notifs (Will be update)
 +
* Setup Repositories (Git clone all Ryzom repositories)
 +
* Setup Compilation (Select some option. The default values are probably the better choice)
 +
* Setup Shard Config (Will be removed, the Shard Config are now defined in Salt)
 +
 +
 +
* Setup Shard ( I need check if all is OK)
 +
* Setup Shard Stop (Probably no required, to check)

Latest revision as of 00:58, 12 July 2025

⚠️ This Documentation only applies to Shards to be added to Ryzom network. ⚠️

So no require Database and some ports must be opened to Ryzom Servers.

Up a fully independent shard can probably be done using https://wiki.ryzom.dev/ doc


Requirements to install a shard (for a comfortable use):

  • Choose a name for the shard (Arma/Atys, Yubo, Gingo, Rendor are already used). We call it on this doc the SHARDNAME. Use same name for minion are a good idea ;)
  • Have a hardware with at least 8 cores with +3Ghz and 16Go of ram
  • Have at least 100Go of disk space (no matter SSD or not)
  • Have a domain name
    • ⚠️ Please check the file /etc/hosts. The domain name must be linked only to outgoing address (and not 127.0.1.1). Like :
      37.187.139.90 gingo.ryzom.com gingo

STEP 1 : Install Salt Minion

  • run as root:
# Ensure keyrings dir exists
mkdir -p /etc/apt/keyrings
# Download public key
curl -fsSL https://packages.broadcom.com/artifactory/api/security/keypair/SaltProjectKey/public | sudo tee /etc/apt/keyrings/salt-archive-keyring.pgp
# Create apt repo target configuration
curl -fsSL https://github.com/saltstack/salt-install-guide/releases/latest/download/salt.sources | sudo tee /etc/apt/sources.list.d/salt.sources
apt install salt-minion
echo "master: cloud.ryzom.com" > /etc/salt/minion
  • Edit /etc/salt/minion_id and change the name of Minion to SHARDNAME
  • Restart the service:
systemctl restart salt-minion
  • On ports 4505 and 4506 to cloud.ryzom.com server
  • On cloud.ryzom.com server, as root:
salt-key -A
# If all works correctly, You will show you minion and can accept it
  • Test it with (on cloud.ryzom.com):
salt '*' test.version

STEP 2 : Configure the Minion

To configure a Minion you need to push the changes into https://gitlab.com/ryzomteam/ryzom-salt.git.

The easiest way is to clone an existing file like ryzom-salt/salt/files/grains/servers/gingo and change the required values.

STEP 3 : Run salt init

The salt master is installed in cloud.ryzom.com, so all commands must be run on this server. To init the shard, run this command as tools user:

/home/data/monitoring/salt/files/update_minions.sh SHARDNAME
  • Later if you need to update the minion again, you can access to https://dag.ryzom.com, select Local at top right and run the dag Salting Minion. Enter the name of the Minion and run it

STEP 4 : Start Ribs

Go to https://dag.ryzom.com, select your Shard at top right and start RIBS dag. Check dag logs, you must see installation and finally:

Running...<WSGIServer address=YOUR_DOMAIN:8081>

STEP 5 : Use Ribs to complete Shard Setup

Use ribs to Setup the Shard:

  • Setup RocketChat Notifs (Will be update)
  • Setup Repositories (Git clone all Ryzom repositories)
  • Setup Compilation (Select some option. The default values are probably the better choice)
  • Setup Shard Config (Will be removed, the Shard Config are now defined in Salt)


  • Setup Shard ( I need check if all is OK)
  • Setup Shard Stop (Probably no required, to check)