Tag Archives: Linux

Cluster field testing

I posted a link to my Banana Pi cluster on Reddit see how the server would cope with the traffic. It wasn’t a huge amount of traffic – about 4000 page views over two days. At its busiest, the cluster handled about 480 hits an hour.

Ganglia showed that none of the CPUs in the cluster were busy. This is pretty much what I expected would happen, and I now feel confident that the cluster can easily handle much larger amounts of traffic. It was also good to see that the data from Ganglia showed useful information that reflected what was happening to each server.

Ganglia cluster information

Ganglia 24 hour view of web server and database server clusters

I’ve also been working the newest site on the Banana Pi cluster, Linux Web Servers. I’ve written some articles about installing WordPress on Apache. It’s been a while since I worked with WordPress, and it was nice to get back to it.

I’ve started writing some posts about Nginx, which I hope to publish soon.

Using Ganglia to monitor three Banana Pi clusters

I’ve done some testing of the Ganglia monitoring tool on three small Banana Pi clusters.

three Banana Pi clusters monitored by Ganglia

Ganglia grid overview

I used a cluster of four database servers, another cluster of four nodes running GlusterFS, and a cluster of two master nodes.

The Ganglia meta demon has to be installed on the master node (the node where Ganglia stores data and the web front-end).  Some configuration changes need to be made in /etc/ganglia/gmetad.conf:

  • set the ‘gridname’ directive
  • add data_source lines for each cluster
  • add a list of IP addresses to the trustedhosts directive

The data_source directive specifies the name and host/port details of a cluster.  There is one data_source line for each cluster.

The Ganglia monitor needs to be installed on each node.  It’s configuration file (/etc/ganglia/gmond.conf) also needs to be edited:

  • edit the cluster name
  • change the port number that the monitor uses to communicate with the master node.

Ganglia uses different ports to distinguish between different clusters, so the ports in gmond.conf should be the same for every node in a cluster, and each cluster needs to use a different port.

You can read about the details here: http://banoffeepiserver.com/server-monitoring/ganglia/set-up-ganglia-on-multiple-clusters.html.

ARM powered server farm

My Banana Pi site has been up for a few days now, and I’m very happy with its performance.  I’ve put my clusters together to form a nice neat stack:

ARM server farm

ARM server farm

The Banana Pi servers are in the rack on the left.  The other two racks contain Raspberry Pi servers.

Banana Pi and Raspberry Pi server farm

Banana Pi and Raspberry Pi server farm

You can read about how I set up the Banana Pi cluster here: http://banoffeepiserver.com/banana-pi-server-cluster/.

Pi Repository

I’ve added my site to Pi Repository.  It’s a site that links to all the Raspberry Pi web servers that people have set up.  The owner’s still tweaking the site a little bit, but it looks pretty good.

It hasn’t been up long.  I’m sure there are more Pi servers out there, hopefully they will also register on Pi Repository.

CGI scripting on the Raspberry Pi

It’s been a busy week.  I’ve made some modifications to my CMS.  It now returns a 404 error when pages aren’t found, and I’ve changed the way meta data is added to pages that represent post categories.  I had to rewrite the main script that handles HTTP requests.

I’ve also added some pages about CGI scripting.  I’m building towards a tutorial on how to build a remote controlled tank.  I’ve had the tank trundling around my sitting room, I just need to do the write up.  You can see a photo here.