RackTables On Ubuntu 7.10 Server
In the words of the developers, RackTables is "A management framework for rackspace, IP addresses, servers, switches, routers and much more!". To me, it is the solution to a project that I have been working on for some time - a means of mapping out our data center at work. I have, for a long time, wanted a way to map out and make available in a web interface, our server racks. An example of what RackTables looks like can be seen below.
The closest I have come is using network-weathermap and although it is a fantastic application, I don't think that the use I was trying to use it for was its intended purpose. So, when I stumbled upon RackTables a few days ago, I was thrilled. While I was installing it on a development system, I (as usual) made notes of my steps so that if I decided to implement it on a production system, I would have my guide laid out before me. That being the case, I decided to share what I put together with you.
Before I get to that though, here are a few links for you. The RackTables web site is located at http://racktables.org/ and they also have a live demo at http://racktables.org/demo/.
Now, onto the tutorial. There are two methods that you can use to implement RackTables - a web based install and a command line install. I will cover both in this tutorial. Just as a side note, this guide works under the assumption that you have an existing and functional LAMP server. If not, then you may want to follow "The Perfect Server - Ubuntu Gutsy Gibbon (Ubuntu 7.10" guide.
Web Based Installation Method
The first step is to obtain the source code, unpack it and move it into a web accessible directory. Perform the following commands to prepare for the web based portion of the tutorial.
cd /tmp/
wget http://racktables.org/files/RackTables-0.14.12.tar.gz
tar -xvzf RackTables-0.14.12.tar.gz
sudo mv RackTables-0.14.12 /var/www/racktables
At this point, you will be prompted for your password, since you are issuing the 'sudo' command - type it in and press the "Enter" key.
Create Database And Database User
RackTables does use a MySQL back end to store the data, so you will need to create a database and a user for the installation to be successful. Perform the following commands to create everything that you will need to proceed.
mysql -uroot -p
You will now be prompted for the password for your 'root' MySQL user. Type it in and press the "Enter" key. Once you are at the MySQL command prompt, issue the following commands:
create database racktables;
grant all on racktables.* to root;
grant all on racktables.* to root@localhost;
grant all on racktables.* to rackuser;
grant all on racktables.* to rackuser@localhost;
set password for rackuser@localhost=password('rackpw');
exit
With that done, it is now time to proceed to the actual installation.
Open A Web Browser And Begin The Install
It is time to begin the web based portion of the install. Open your favorite web browser and point it to the installation URL.
http://your_servers_ip_address/racktables/install.php
It is safe to ignore the errors as they will be taken care of during the install. Click "Proceed" to continue.
Again, click "Proceed" to continue.
Now we need to do a little more command line work. In your terminal, enter the following commands:
sudo touch /var/www/racktables/inc/secret.php
sudo chmod 666 /var/www/racktables/inc/secret.php
Now click on the "retry" button to proceed further with step 3.
Fill in the requested data (as shown in the example above) with the database username and password that you created above. When done, again click on the "retry" button to move on with step 3.
With that finally out of the way, click "Proceed" to continue to step 4.
Make sure that there are no errors present and click "proceed" to continue.
In this step, you will enter the password you wish to use for the "admin" login for your RackTables Web site. Enter the password that you want and click on the "retry" button.
With the password set, click "proceed" to continue.
Congratulations! RackTables has now been installed. Click on the "proceed" button to be prompted for your login information. The default username is "admin" and you will use the password that you created in step 5.