Most Powerful High Availability / Load Balancing #yapcasia 2012

415d71aaeaa22d9ecfef343bda1ebde1?s=47 riywo
September 30, 2012

Most Powerful High Availability / Load Balancing #yapcasia 2012

415d71aaeaa22d9ecfef343bda1ebde1?s=128

riywo

September 30, 2012
Tweet

Transcript

  1. Most Powerful High Availability Load Balancing Sep, 29, 2012 YAPC::Asia

    2012 @riywo
  2. @riywo

  3. http://www.publicdomainpictures.net/view-image.php?image=4314&picture=t-shirt-image

  4. None
  5. None
  6. Talk about.... * Why is this good? * Why is

    this bad?
  7. HALB

  8. What?

  9. LB Server Server Server Server

  10. HA Server Server Server Server ✗ Health Check

  11. Same!

  12. Where?

  13. HA LB Web Web Web Web User

  14. HA LB DB DB DB DB Web

  15. HA LB API API API API Web

  16. Anywhere!

  17. How?

  18. BIG-IP ServerIron

  19. LVS

  20. HAProxy

  21. mod_proxy

  22. nginx

  23. ELB

  24. MyDNS

  25. Pros/Cons

  26. Pros Cons H/W Inline (DSR) Powerful Difficult Expensive Proxy Inline

    (DSR) Easy to use Performance DNS No proxy Performance Difficult
  27. Pros Cons H/W Inline (DSR) Powerful Difficult Expensive Proxy Inline

    (DSR) Easy to use Performance DNS No proxy Performance Difficult
  28. DNS

  29. No Proxy

  30. DNS DB DB DB DB Web 1 2 Weighted-DNS RoundRobin

    HA LB
  31. Cache

  32. DNS DB DB DB DB Web 2 Cache 1 3

  33. Cache is Difficult

  34. DNS DB DB DB DB Web Cache ✗ Health Check

  35. DNS DB DB DB DB Web Cache ✗ Health Check

    Inconsistent
  36. Solution

  37. Client DNS

  38. DNS DB DB DB DB Web ✗ Health Check

  39. Too many Health Check

  40. DB DB DB DB DNS Web ✗ Health Check DNS

    Web DNS Web Health CheckHealth Check
  41. Solution

  42. Eventual Consistent

  43. DB DB DB DB DNS Web ✗ DNS Web DNS

    Web Health Check DNS 2 Async 1
  44. How?

  45. DB DB DB DB ✗ MyDNS Web Health Check MyDNS

    1 2 Replication MyDNS Web MyDNS Web
  46. Good Points

  47. * Clients know all info * Eventual Consistent * Any

    Application:)
  48. Bad Points

  49. * Too much... * Async difficult

  50. Join us! * Perl Mongers * Operation Engineers

  51. Join us! * Perl Mongers * Operation Engineers * Baseball

    Players :)
  52. Thanks!

  53. @riywo blog.riywo.com weblog.riywo.com