High availability

717 views

Published on

Published in: Software, Technology
1 Comment
0 Likes
Statistics
Notes
  • DRBD®, the DRBD logo, LINBIT®, and the LINBIT logo are trademarks or registered trademarks of LINBIT in Austria, the United States and other countries.

    ;-)
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Views
Total views
717
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
7
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

High availability

  1. 1. High Availability Pascal Robert Druide informatique
  2. 2. Business requirements • Check your requirements! • Recovery Time Objective (RTO) • Recovery Point Objective (RPO) • Budget • SLA from your providers
  3. 3. DNS • Think about it! • Use a solid DNS provider! • TTL!
  4. 4. Cloud or my own? • Cloud is more flexible and more scalable on demand • Easy grow with the cloud • Own hardware might cost less • Choose your provider wisely (read the fine prints!) • Snapshots!
  5. 5. Simple setup • One Web server + one or more app servers + one db server • Pros: • Cost is not too high • Scales your WO applications • Cons: • No high availability for your Web and database services
  6. 6. HA for databases • Replication/standby • Only failover, or read-only slaves • Great for multi locations • Clustering/load balancing • Might have some drawbacks • Not ideal for multi locations • Amazon RDS
  7. 7. Replication/clustering doesn’t replace backups!! ! Neither RAID!
  8. 8. Tools for the job
  9. 9. Tools for Linux • Heartbeat • HAProxy • DRBD
  10. 10. Heartbeat • Can mounts a virtual network interface • Monitor services and switch over • Failover or load balancing
  11. 11. HAProxy • Load balancer as software • Can use Heartbeat for LB failover • Can look for session ID in cookie or url path • Can act as basic firewall • Not only for HTTP(S)
  12. 12. DRBD • RAID 1 over a network • Failover or clustering, depends on file system
  13. 13. Basic HA setup • Two Web/apps servers with Heartbeat (active/passive) • Two database servers and Heartbeat and DRBD
  14. 14. Average HA setup • Two Web servers with Heartbeat • Two app servers with Heartbeat (for Monitor) • Two database servers and Heartbeat and DRBD
  15. 15. Fantastic HA setup • Two load balancers with HAProxy and Heatbeat • Two active Web servers • Two or more app servers • Two database servers, with Heartbeat and DRBD
  16. 16. Tools for the cloud • Auto scaling • RackSpace Auto Scale • Amazon Auto Scaling • Load balancers • Amazon Elastic Load Balancer • Linode NodeBalancers • Rackspace Cloud Load Balancers
  17. 17. Rackspace Auto Scale • Can check by memory, CPU, load, file system and network • Have APIs • NeedVM images • Specify minimum and maximum
  18. 18. Amazon Auto Scaling • Works with Cloud Watch • Will scale based on network requests or load • Needs AMIs • Have APIs • Specify minimum and maximum
  19. 19. Amazon Elastic Load Balancer • Supports TCP, HTTP, HTTPS and SSL • Can check path (URL) • Can load balance between regions • Integration with CloudWatch • Can use the application’s session cookie (wosid)
  20. 20. Linode Node Balancers • Supports TCP, HTTP and HTTPS • Session Stickiness works with tables of IPs or HTTP cookie • Health check can do a status (2xx, 3xx) check or regex on body
  21. 21. Rackspace Cloud Load Balancers • Can cache content (images, audio, video, css) • Can display error page when all nodes are down • Session persistence by cookie for http only • Required for Auto Scale
  22. 22. Mixing • You can use HAProxy and heartbeat in the cloud • DRBD might work, but I can’t confirm
  23. 23. Monitoring/relaunch • You can use Nagios’ event handlers to restart stuck instances • Amazon Cloud Watch and Rack monitoring are good too • Start new app instances orVMs based on memory or other criteria
  24. 24. Alternatives • Use mod_proxy_balancer and Direct Connect • Use Puppet/Chef
  25. 25. TODOs • Scripts to monitor state of apps for scaling • Event handlers for Nagios • Replace JavaMonitor with something else • Should we get away from wotaskd and the WO adaptor?
  26. 26. Q&A

×