Managing an OpenSim Grid on the Bare Metal
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