Installing the Jamroom Cluster Server
The Jamroom Cluster Server is an add-on software package for Jamroom that allows your Jamroom installation to “span” across many separate servers, yet still offering visitors to your site a seamless experience. The Jamroom Cluster Server software handles all of the “back end” communication between servers that is necessary for it to work, and effectively lets you take advantage of “cheap bandwidth” that comes bundled with server hardware from many web hosting providers.
As many of you may know, “over usage” charges typically range from .50 (USD) to 1.00 (USD) per gigabyte. With a streaming media server such as Jamroom, on a busy system it becomes fairly easy to incur over usage charges that can be several hundred dollars per month. By “clustering” several servers together using the Jamroom Cluster Server software, you effectively combine the aggregate bandwidth of several servers, allowing you to grow your Jamroom without incurring unnecessary costs.
The Jamroom Cluster Server software also provides an easy to use administrative interface for transferring Artist Accounts between servers, as well as “offloads” LOFI Creator processing from your “Master” Jamroom server to the Cluster Server the Artist Account is hosted on. All in all it is a very powerful solution to nearly unlimited growth for your Jamroom.
Installing the Jamroom Cluster Server
Installation of the Jamroom Cluster Server is fairly straight-forward and easy to implement - just make sure and follow all of the steps outlined below and you should have no problem getting your new Jamroom Cluster Server on line. First, please ensure that you have read and fully understand the following Server Requirements section before attempting to install the Jamroom Cluster server:
MySQL is not
required to be running on the Jamroom Cluster Server, however, support for connecting to a MySQL database must
be compiled into the PHP
that will run on the Cluster Server, since it will need to have the ability to connect to the Master Jamroom Server.
A valid DNS
name for your new Jamroom Cluster Server (i.e. “www2.yourdomain.com”). You want to ensure that you have set this up with your domain registrar or hosting provider before going live with your new Cluster Server. This domain must be a subdomain of your Jamroom domain
, or your user sessions will not work across the servers. For example, if your main website is located at "http://www.example.com", your Cluster Server should be located at "http://cluster.example.com".
Things to consider before installation
The following recommendations are not requirements, but will go a long way in helping you make the installation of the cluster server easier, as well as making management of your entire Jamroom easier going forward.
Currently the Jamroom Cluster Solution does not work with the “Imports” of songs turned on. It still functions, but only artists whose Artist Page is located on the Master Server will be able to see the contents of their jamroom/uploads directory. Therefore it is recommended that you do not use the “Show Imports” option from the Jamroom Config.
It is highly
recommended that you run the same
web server, and version of web server on all
of your Jamroom servers, including the Master Server (MySQL database server / web server). The Jamroom Cluster Server was designed and tested on the Apache Web Server
, version 1.3.31, and makes an optimal platform for running Jamroom.
It is highly
recommended that you run the same
version of PHP
on all of your Jamroom servers (preferably PHP
version 4.3.10 or newer due to security concerns with older versions). Jamroom has been developed on PHP
It is highly
recommended that the Master Jamroom Server and the Jamroom Cluster Server(s) be located in the same data center
! The Jamroom Cluster Server(s) must be able to send SQL
commands to the Jamroom Master Server MySQL installation, and therefore a very low-latency network is recommended to ensure an optimal experience for your visitors.
Installation the Jamroom Cluster and Conversion Server
- Make sure you have downloaded the latest version of the Jamroom Cluster Server software from the Jamroom Downloads Page.
- Unzip the downloaded Jamroom Cluster Server software to a temporary directory, and upload the contents of the “CLUSTER” directory into the desired web-accessible directory on the Cluster Server (or sub directory of your main Jamroom install).
- Upload the contents of the "MASTER" directory into the Jamroom directory on your Jamroom Master Server.
- Next, log in as the Master Admin into your Jamroom.
- Click on the "Jamroom Config" -> "Cluster Settings" and enter your Cluster Key and Code,and save.
- Click on "Create Server" from the JCServers menu.
- Enter the required information and submit - Jamroom will install the remote Cluster Server. If you receive any permission errors while installing, fix the permission error and try again.
Using the Jamroom Cluster Server Admin Interface
Now that you have your new Jamroom Cluster Server installed and ready to go, The next step in the process is to become familiar with the new choices you will see in your Jamroom Admin Menu.
The new JCServers Menu
After logging in to your Master Jamroom installation as the Admin User, you will see a new set of options in your Admin menu 2) (near the top) that says “JC Servers”. This menu can grow to include the following features:
Create Server - Selecting this option will take you to the create server form, where you can enter information about and configure a new Jamroom Cluster Server. NOTE: This option will not be available unless your Jamroom Cluster Server license still has room for another server in it. For example - if you have purchased a 3 server Jamroom Cluster Server license, then you will only see the “Create Server” choice if you have less than 3 Cluster Servers configured.
Modify Server - After you have already created a Jamroom Cluster Server, this is where you can come to modify information about this Cluster Server.
Delete Server - Selecting this option will allow you to delete a Jamroom Cluster Server. NOTE: You cannot delete a Jamroom Cluster Server until all artist accounts have either been deleted or moved from the server.
Move Artists - Selecting this option will take you in to the Move Artist interface where you can move your Jamroom Artist accounts from server to server.
Creating or Modifying a Jamroom Cluster Server
Both the “Create Server” and “Modify Server” have the same form interface for creating or changing information about your Jamroom Cluster Server:
Server Name - This is the name of the server as you want to call it in the Jamroom Interface. This name will appear in the “Move Artists” section of the Admin Menu, as well as other places throughout Jamroom (i.e. several places in the Tools menu). Its best here to choose a descriptive name - i.e. “Server2” to make it easier in the future to know what server this is.
Server IP - this needs to be the Server’s IP Address. Jamroom will use this IP Address internally when communicating with the Jamroom Cluster Server.
- this needs to be the full URL
to your new Jamroom Cluster Server. You want to ensure that you have set up your new Jamroom Cluster Server with a qualified host name and domain name with your domain registrar or hosting provider in order for the communication between the Jamroom Master Server and the Cluster Server to work.
Server Active - this setting allows you to tell Jamroom whether or not this Cluster Server is active. NOTE: Setting this to “no” WILL NOT make this Cluster Server stop working, it will merely make it so it is no longer a choice in the “Move Artists” screen. This in effect becomes an easy way to “lock” a server with a specific number of Artist Pages on it.
Default Server - This option allows you to define if this new Cluster Server will be the default Jamroom server when it comes to creating new Artist Accounts. If this is set to “yes”, the any new artist account that is created by the Jamroom Signup System or by the Master Admin will be located on this new Cluster Server. If you already have another Jamroom Cluster Server that is set as the Default Server, by selecting “yes” for a new Cluster Server, the old Default Server will have its setting changed to “no”.
Deleting a Jamroom Cluster Server
Deleting a Jamroom Cluster Server is very easy. Simply select the Jamroom Cluster Server that you would like to delete from the chooser list and press the Delete button. NOTE: A Jamroom Cluster Server will not show up in the list of available servers to delete unless there are ZERO (0) Artist Accounts on the Cluster Server, and it is not designated as the Default Server.
Moving Profiles between Servers
Moving Jamroom Artist Accounts between servers is a very easy and straight-forward process. By selecting the “Move Artists” option from the Jamroom Admin Menu, you are placed in to the Move Artists form. This form gives you everything you need to balance the load on your Jamroom System by moving Artist Pages between your Master Jamroom Server and your Jamroom Cluster Server(s). On the Move Artist page you are presented with a “Filter” box, a List of all of the Artists in your Jamroom, and finally a list of Jamroom Servers that are available for having Artist Pages moved to them (i.e. they are the Master Jamroom Server, or a Cluster Server that is active).
To Move an artist account from one server to another server, simply select the Artist Name from the Choose Artist(s) window, then select the Cluster Server from the list that you would like to move the Artist Page to. Simply press the “Move Artists” button and the account will be moved between servers. Note that you can select more than one artist from the “Choose Artist(s)” window that you would like to move, making it easy to move hundreds of Artist Accounts between servers in one easy step.
You’ll also note that in the “Choose Artist(s)” and “Cluster Server” selection areas, that the Number of Plays is shown for each artist as well as the TOTAL for the entire Server. This can help you “balance” the number of plays between servers so bandwidth usage is more consistent between servers.
Jamroom Cluster Server FAQ (frequently asked questions)
How many Artist Accounts can be supported on a Jamroom Cluster server?
The number of Jamroom Artist Accounts that can be supported on a single Jamroom Cluster Server varies depending on the power of the hardware you put the Cluster Server on, and the amount of bandwidth available to the Cluster Server. A good recommendation is no more than 5,000 artist accounts on a single Pentium 4 2.0 ghz server with 1 gigabyte of RAM. Depending on how many plays and page views your Artist Pages receive on the Cluster Server, the number of Artist Accounts you can actually host may be lower or higher than this number.
Can I move an Artist Account between 2 Cluster Servers?
Yes - you can move and Artist Account between 2 servers without issue and in the same way that you would move an Artist Account from your Jamroom Master Server to a Cluster Server. Simply select the Artist Account(s) you want to move from the “Choose Artist(s)” selection box, then select the Cluster Server you want to move them too. Regardless of their current server location, they will be moved to the specified server.