Difference between revisions of "Portal:Forge/ShardInstall"

From EncyclopAtys

Jump to: navigation, search
(STEP 5 : Use Ribs to complete Shard Setup)
 
(11 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 (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 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 25: Line 27:
 
echo "master: cloud.ryzom.com" > /etc/salt/minion
 
echo "master: cloud.ryzom.com" > /etc/salt/minion
 
</pre>
 
</pre>
* Edit /etc/salt/minion_id and change the name of Minion (use single name like Atys, Yubo, ...)
+
* Edit /etc/salt/minion_id and change the name of Minion to SHARDNAME
* Restart the service
+
* Restart the service:
 +
<pre>systemctl restart salt-minion</pre>
 +
* On ports 4505 and 4506 to cloud.ryzom.com server
 +
 
 +
* On cloud.ryzom.com server, as root:
 +
<pre>salt-key -A
 +
# If all works correctly, You will show you minion and can accept it
 +
</pre>
 +
 
 +
* Test it with (on cloud.ryzom.com):
 +
<pre>salt '*' test.version</pre>
 +
 
 +
== 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 <code>ryzom-salt/salt/files/grains/servers/gingo</code> 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:
 +
<pre>
 +
/home/data/monitoring/salt/files/update_minions.sh SHARDNAME
 +
</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)
 +
 
  
<pre>systemctl restart salt-minion</pre>
+
* 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)