Hi All, I am thinking about building a fault tolerant web servers running FreeBSD. The servers would be serving web sites using jails+apache+php+mysql. Would anyone be so kind, as to give me some advice about building such a solution? I have read a lot about freebsd cluster, but it was focused on computing clusters, and not fault tolerant one. If anyone has some experience with the issue, I'll be very grateful. Best regards, mjb
You may want to check out carp(4). http://www.freebsd.org/cgi/man.cgi?query=carp On 4/5/2010 7:29 AM, Maciej Jan Broniarz wrote:> Hi All, > > I am thinking about building a fault tolerant web servers running FreeBSD. The servers would be serving web sites using jails+apache+php+mysql. > Would anyone be so kind, as to give me some advice about building such a solution? I have read a lot about freebsd cluster, but it was focused on computing clusters, and not fault tolerant one. > > If anyone has some experience with the issue, I'll be very grateful. > > Best regards, > mjb > _______________________________________________ > freebsd-stable@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org" >
W dniu 10-04-05 17:45, Mike Jakubik pisze:> You may want to check out carp(4). > > http://www.freebsd.org/cgi/man.cgi?query=carp >Thanks. Carp is fine, but I still have to figure out how to synchronize data on disks or in the database. Usign just carp would leave me with two separate databases containing only parts of users input. Is there a soulution similar to drbd+heartbeat on Linux? Geom_gate looks nice, but I have no idea if it has been used in a production enviroment. All best, mjb
on 05/04/2010 20:04 Maciej Jan Broniarz said the following:> W dniu 10-04-05 17:45, Mike Jakubik pisze: >> You may want to check out carp(4). >> >> http://www.freebsd.org/cgi/man.cgi?query=carp >> > > Thanks. Carp is fine, but I still have to figure out how to synchronize > data on disks or in the database. Usign just carp would leave me with > two separate databases containing only parts of users input. Is there a > soulution similar to drbd+heartbeat on Linux? Geom_gate looks nice, but > I have no idea if it has been used in a production enviroment.Perhaps you would find HAST useful: http://wiki.freebsd.org/HAST -- Andriy Gapon
> soulution similar to drbd+heartbeat on Linux? Geom_gate looks nice, but > I have no idea if it has been used in a production enviroment.I use it for production - it works nicely, but you wont get automatic failover that way. -pete.
Maciej Jan Broniarz ha scritto:> W dniu 10-04-05 17:45, Mike Jakubik pisze: >> You may want to check out carp(4). >> >> http://www.freebsd.org/cgi/man.cgi?query=carp >> > > Thanks. Carp is fine, but I still have to figure out how to > synchronize data on disks or in the database. Usign just carp would > leave me with two separate databases containing only parts of users > input. Is there a soulution similar to drbd+heartbeat on Linux? > Geom_gate looks nice, but I have no idea if it has been used in a > production enviroment.Just to use exact words, fault toulerancy is not possible with any FreeBSD/Linux O.S. F.T. means outage can occur in every moment, but all current operation will be always completed by other equipments; so there will not be interrupted/lost operations. The most you can have is HA (High Availability), that means operations currently executed on servers which have outage are interrupted, but new operations will be completed as they will be executed on other equipments. Carp is fine for HA is you have always both db and file storage always available. For DB you can use MySQL replica, cross-replicating local MySQL data among all servers. Each server will keep its own copy, always up to date with other servers. This will make all DB data always available, except data recorded in the last milliseconds. About file storage, you must have an external reliable NFS server. Tonino> All best, > mjb > _______________________________________________ > freebsd-stable@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org" >-- ------------------------------------------------------------ Inter@zioni Interazioni di Antonio Nati http://www.interazioni.it tonix@interazioni.it ------------------------------------------------------------
W dniu 10-04-05 22:08, Tonix (Antonio Nati) pisze:> Maciej Jan Broniarz ha scritto: >> W dniu 10-04-05 17:45, Mike Jakubik pisze:>> Just to use exact words, fault toulerancy is not possible with any > FreeBSD/Linux O.S. > F.T. means outage can occur in every moment, but all current operation > will be always completed by other equipments; so there will not be > interrupted/lost operations.Hmm. Thanks for the tip. Which *NIX os can be used to build an FT solution then? Solaris? AIX? HP-UX?> Carp is fine for HA is you have always both db and file storage always > available. > For DB you can use MySQL replica, cross-replicating local MySQL data > among all servers. Each server will keep its own copy, always up to date > with other servers. > This will make all DB data always available, except data recorded in the > last milliseconds. > > About file storage, you must have an external reliable NFS server.So, to be redundant one should run 2 x web servers + 2 x storage +2 x mysql. Sounds like fun, but also like a lot of work. So how do the web hosting prividers manage to use FreeBSD for theirs solution? I am curious do they have a cluster/reudndant solution for every part of the system, or they just accept thet something will fail at some time. Best regards, mjb
On Mon, Apr 5, 2010 at 7:29 AM, Maciej Jan Broniarz <gausus@gausus.net>wrote:> Hi All, > > I am thinking about building a fault tolerant web servers running FreeBSD. > The servers would be serving web sites using jails+apache+php+mysql. > Would anyone be so kind, as to give me some advice about building such a > solution? I have read a lot about freebsd cluster, but it was focused on > computing clusters, and not fault tolerant one. > > If anyone has some experience with the issue, I'll be very grateful. > > Best regards, > mjb >There is a concept : Self-stabilization . There will be a ring of computers working simultaneously . If any one of them fails , others will continue to handle tasks requested from those systems . Such a ring may utilize load-balancing to distribute work load to currently working computers . http://en.wikipedia.org/wiki/Self-stabilization http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.88.4096&rep=rep1&type=pdf http://search.yahoo.com/search;_ylt=A03uoRZ7YbpLwjUB8W.bvZx4?p=self+stabilization&toggle=1&cop=mss&ei=UTF-8&fr=yfp-t-701 www.selfstabilization.org http://en.wikipedia.org/wiki/Load_balancing_%28computing%29 http://en.wikipedia.org/wiki/Category:Fault_tolerance http://en.wikipedia.org/wiki/Category:Reliability_engineering http://en.wikipedia.org/wiki/Category:Distributed_computing Actually , FreeBSD itself is an operating system : It manages single computers . You need other software to handle distributed computing . Such a language among others is www.mozart-oz.org *Mozart is available as a FreeBSD port. *Thank you very much . Mehmet Erol Sanliturk