You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@trafficserver.apache.org by Bruce Lysik <bl...@yahoo.com> on 2012/04/24 16:26:35 UTC

Best practice for high availability clustering

Hi folks,

Was interested in what best practices are for high availability traffic server clustering.

Is it standard to have a setup like:

* load balancer with clustered apache traffic servers
which point to 
* load balancer with multiple origin servers

Any tips?  Any load balancing mechanisms that work best, things to look out for?

Thanks!

--
Bruce Z. Lysik <bl...@yahoo.com>

Re: Best practice for high availability clustering

Posted by Leif Hedstrom <zw...@apache.org>.
On Apr 24, 2012, at 11:28 AM, Christopher Arnold <ar...@apple.com> wrote:

> 
> 
> When clustering two or more ATS servers in full clustered mode I assume the ATS servers transfer cached objects between themselves.  Should I ensure that traffic  be done over a dedicated network the ATS servers share separate from their main interface?  I was seeing a high cache miss cold rate and poor network performance when curling a largish file when I set up clustering with two nodes on a single vlan.  I was testing with ATS 3.0.4 on OEL 6 linux with bonded interfaces). 
> 


Yeah, on a cache miss  I believe you would see 2x the traffic since it has to be cached on the right cluster member.

Clustering is only useful if you really have a ton of content, and can't leverage some sort of L7 load balancing. I've never used clustering :)

-- Leif

Re: Best practice for high availability clustering

Posted by Christopher Arnold <ar...@apple.com>.

When clustering two or more ATS servers in full clustered mode I assume the ATS servers transfer cached objects between themselves.  Should I ensure that traffic  be done over a dedicated network the ATS servers share separate from their main interface?  I was seeing a high cache miss cold rate and poor network performance when curling a largish file when I set up clustering with two nodes on a single vlan.  I was testing with ATS 3.0.4 on OEL 6 linux with bonded interfaces). 


On Apr 24, 2012, at 10:17 AM, Leif Hedstrom wrote:

> On 4/24/12 11:00 AM, Leif Hedstrom wrote:
>> On 4/24/12 10:41 AM, Christopher Arnold wrote:
>>> Will an ats cluster work correctly if load balanced using a layer 3 or 4 slb solution like a netscaler?
>>> 
>> 
>> Yeah, why not ? I used to use ATS behind both DSR and Inline SLBs, with the origins typically behind a DSR SLB. Personally, going forward, I would put ATS on local TCP anycast, with 10GigE NICs straight to the BAS (and then to the router).
> 
> 
> I should add, if you don't worry about e.g. SYN flood attacks, then an SLB in DSR mode would be able to load balance a ton of traffic to the ATS layer.
> 
> -- leif
> 






Re: Best practice for high availability clustering

Posted by Leif Hedstrom <zw...@apache.org>.
On 4/24/12 11:00 AM, Leif Hedstrom wrote:
> On 4/24/12 10:41 AM, Christopher Arnold wrote:
>> Will an ats cluster work correctly if load balanced using a layer 3 or 4 
>> slb solution like a netscaler?
>>
>
> Yeah, why not ? I used to use ATS behind both DSR and Inline SLBs, with 
> the origins typically behind a DSR SLB. Personally, going forward, I would 
> put ATS on local TCP anycast, with 10GigE NICs straight to the BAS (and 
> then to the router).


I should add, if you don't worry about e.g. SYN flood attacks, then an SLB 
in DSR mode would be able to load balance a ton of traffic to the ATS layer.

-- leif


Re: Best practice for high availability clustering

Posted by Leif Hedstrom <zw...@apache.org>.
On 4/24/12 10:41 AM, Christopher Arnold wrote:
> Will an ats cluster work correctly if load balanced using a layer 3 or 4 slb solution like a netscaler?
>

Yeah, why not ? I used to use ATS behind both DSR and Inline SLBs, with the 
origins typically behind a DSR SLB. Personally, going forward, I would put 
ATS on local TCP anycast, with 10GigE NICs straight to the BAS (and then to 
the router).

-- Leif



Re: Best practice for high availability clustering

Posted by Christopher Arnold <ar...@apple.com>.
Will an ats cluster work correctly if load balanced using a layer 3 or 4 slb solution like a netscaler?

Christopher Arnold
arnoldch@apple.com

Sent from my iPhone

On Apr 24, 2012, at 8:25 AM, Leif Hedstrom <zw...@apache.org> wrote:

> On 4/24/12 9:15 AM, Bruce Lysik wrote:
>>>> * load balancer with multiple origin servers
>>>  Yeah. This is a place we desperately need to improve, the yahoo load balancing plugin was open sourced, but is missing vital code dependencies :/.
>>>  DNS RR should kind of work too, and there is a bug / patch that implements proactive health checks (the current implementation is reactive).
>> 
>> What does the current code do if a single origin in a RR goes offline?
>> 
> 
> It should mark it down. There are configurations hwo long it is marked down, until it tries to connect again etc. While down, the other members of the rotation gets all traffic.
> 
> It's definitely not an ideal setup, but works reasonable well in many cases.
> 
> -- leif
> 

Re: Best practice for high availability clustering

Posted by Leif Hedstrom <zw...@apache.org>.
On 4/24/12 9:15 AM, Bruce Lysik wrote:
>>> * load balancer with multiple origin servers
>>   
>> Yeah. This is a place we desperately need to improve, the yahoo load 
>> balancing plugin was open sourced, but is missing vital code dependencies :/.
>>   
>> DNS RR should kind of work too, and there is a bug / patch that implements 
>> proactive health checks (the current implementation is reactive).
>
> What does the current code do if a single origin in a RR goes offline?
>

It should mark it down. There are configurations hwo long it is marked down, 
until it tries to connect again etc. While down, the other members of the 
rotation gets all traffic.

It's definitely not an ideal setup, but works reasonable well in many cases.

-- leif


Re: Best practice for high availability clustering

Posted by Bruce Lysik <bl...@yahoo.com>.
>> * load balancer with multiple origin servers
> 
> Yeah. This is a place we desperately need to improve, the yahoo load 
> balancing plugin was open sourced, but is missing vital code dependencies :/.
> 
> DNS RR should kind of work too, and there is a bug / patch that implements 
> proactive health checks (the current implementation is reactive).


What does the current code do if a single origin in a RR goes offline?
 
--
Bruce Z. Lysik <bl...@yahoo.com>


Re: Best practice for high availability clustering

Posted by Leif Hedstrom <zw...@apache.org>.
On Apr 24, 2012, at 8:26 AM, Bruce Lysik <bl...@yahoo.com> wrote:

> Hi folks,
>
> Was interested in what best practices are for high availability traffic server clustering.
>
> Is it standard to have a setup like:
>
> * load balancer with clustered apache traffic servers
> which point to

I would consider local TCP anycast, using OSPF /quagga maybe.

> * load balancer with multiple origin servers

Yeah. This is a place we desperately need to improve, the yahoo load 
balancing plugin was open sourced, but is missing vital code dependencies :/.

DNS RR should kind of work too, and there is a bug / patch that implements 
proactive health checks (the current implementation is reactive).

-- Leif
>
> Any tips?  Any load balancing mechanisms that work best, things to look out for?
>
> Thanks!
>
> --
> Bruce Z. Lysik <bl...@yahoo.com>