Managing an OpenSim Grid on the Bare Metal

From Open Metaverse Wiki

Opensimulator: Grid Owners: Managing an OpenSim Grid on the Bare Metal

What do I Mean by Bare Metal?

It is possible to manage a grid with the tools I have already described. The ordinary tools on a bare Linux system. You use SSH to log onto your server and manipulate files. Edit text files to create new regions. Use 'screen's to run OpenSim in the background. You re-attach (-r) to the Robust 'screen' and use the console there to create new users, change passwords etc. Re-ttach to each of your regions with screen to use the OpenSim console. With that console you can backup and restore regions, change terrain, update the map and many other things. You use phpmyadmin to make backups of your database and rsync to back up important files on another system. Cron jobs to do regular backups, restart the grid if the server restarts. Shell scripts to shut the grid down smoothly.

The only problem with this approach is that it is a lot of 'manual' work. You have to respond to requests to create users, recover passwords, create regions, relocate them. On a small grid this is manageable, but it can get out of hand. Eventualy you will want to have a grid management system do a lot of the grunt work. A grid management system is a WEB page with scripts on the server that do all of these everyday tasks. But problems will always crop up that require a manual touch, so I'll go over a bunch of everyday grid management tasks you can do on the bare metal.

Crash Course in Common Linux commands in the SSH Terminal Window

ls -l short for list files -l means single column with details
cd Grid short for change directory, move to the named folder
cd .. move up to the previous (parent) folder
cd ~ move to my home directory (/home/opensim)
df -h show space used on all disks, -h means human units
du -h disk usage in this folder and sub-folders
pwd print working directory, where am I?
users who else is logged on
screen -list how many opensim background tasks am I running
screen -r Welcome re-attach to the Welcome region console (use ^A^D to detach)
screen -r Robust re-attach to the Welcome region console (use ^A^D to detach)
top show top CPU users (q to quit)
man ls read the manual for ls, space-bar for next page

lets not use sudo

command line pipes

creating a new user account

creating default avatars

creating new regions

running multiple low-usage regions together

finding an unused port number

shell script for starting up the grid

fast backups vs full backups

rsync: fast incrimental backups across the Internet

cron jobs: Scheduling tasks