StephenBartel
Posts: 15
Joined: Tue Sep 01, 2015 12:32 am

New to Servers/Clustering. Please help

Sun May 15, 2016 1:56 am

Hi,

I'm relatively new to the raspberry pi, and especially with home servers and networking. So I was hoping someone could point me in the right direction, by offering a few tips/experiences and especially links to understand everything I would like to do.

Basically, I would like to set up a raspberry pi cluster of 3 raspberry pis for a file server, network storage/backup server, home media server, and web server. I do fully understand that the performance will be limited, but I would really really like to learn and understand servers and networking.
How can I setup these types of servers in a cluster? Can I load balance in any way?
I would probably host these servers on each different raspberry pi, but I would also like to learn about load-balancing and how that can be achieved in a cluster.
What are the most common applications for clusters? Can it be used in my situation?
How can I set up these servers ?
How can I get raspberry pis to communicate to each other, if you have a situation where one raspberry pi is hosting the webpage while the other contains the database (or any other similar situation)?
These are some of my many questions. However, I hope that answers/links that address these questions will answer those other questions.
Again, I understand that performance will not be the best, but this is okay, since this will only be used for educational purposes.

I am very eager to learn, and welcome any insight, experiences, examples, links, answers etc. as I am sure there is much more to accomplishing and fully understanding these concepts.

*Edit, I found this one link that seems pretty useful: http://raspberrywebserver.com/raspberry ... uster.html

Thanks :)

peterlite
Posts: 720
Joined: Sun Apr 17, 2016 4:00 am

Re: New to Servers/Clustering. Please help

Wed May 25, 2016 8:50 am

Clustering varies by application. For example, database software usually has a clustering add on. You can also set up databases in a master/slave configuration. Web servers are often set up with a router spreading requests over a group of servers.

Using file serving as an example, your first decision is redundancy. You might set up server A to receive files then use rsync to replicate to server B and server C. This would create the server equivalent to RAID 1 storage. If one server fails, another contains identical data.

Using other file serving configurations, you can create the equivalent of RAID 0 or RAID 5 with data spread for maximum speed or maximum space.

For three servers, I would look at maximum redundancy, the RAID1 style approach. A database would be one master and two slaves.

With more servers, say six servers, I would look at software like the dedicated database clustering MariaDB Galera Cluster and the open source OpenStack cloud.

StephenBartel
Posts: 15
Joined: Tue Sep 01, 2015 12:32 am

Re: New to Servers/Clustering. Please help

Wed May 25, 2016 3:31 pm

Thanks for the reply. I really appreciate it.

I'll definitely take a look into this. This is great information.

screspo
Posts: 92
Joined: Tue Dec 08, 2015 9:59 am
Location: El Albir - Alicante
Contact: Website

Re: New to Servers/Clustering. Please help

Sat Jan 14, 2017 4:17 pm

Hi,

in my particular case I developed a website using Apache and wordpress using 5 Raspberry Pi.

One acts as load balancer, delivering the traffic between 3 Raspberrys that act as webservers, having one extra Raspberry as database server.

So if there are is a visit the load balancer will send the request to ome of the three Apache servers, leaving the other ones available for further visits.

All the three Web servers get their information from a Mysql server.

I decided this structure after trying to replicate the mysql servers and so. It is more efficent, faster and bullet proof against brute force attacks thanks to Fail2ban and some fine tuning of Apache.

You can visit and test it in alteageek.homelinux.org

regards,

Santi
Santi
http://alteageek.com

Return to “Networking and servers”