Saturday, 15 September 2012

Does Azure load balancer allow connection draining -


I can not find any documents for this.

If the connection is not available to be available then what should be zero-downtime deployed?

Answered on server fault they said:

doing this It is suggested that there should be a custom health check in your load balanced set. For example, you can have a simple healthcheck.html page on each VM (for example in wwwroot) and direct your check to this page from your load balanced set. As long as the probe can get that page (HTTP 200), the Azure load balancer user will continue sending the request to VM.

When you need to update a VM, then you should only give Healthcheck.html a different name such as _healthcheck.html Will begin receiving HTTP 404 errors and take that machine out of the balanced rotation because it is not receiving HTTP 200. Existing connection services will continue but Azure LB will stop sending new requests to VM.

After your update on VM is complete, rename _healthcheck.html to healthcheck.html . The Azure LB probe will start receiving HTTP 200 responses and as a result, the request will resume again in this VM.

Repeat this for each VM in a load balanced set.

Note, however, Microsoft's Kevin Williamson said in his MSDN blog post, "Make sure your check path is not a simple HTML page, but in reality your service is set to health. Includes logic to (try connecting to your SQL database, for example). "So you really want an ASPX page that can check for many factors, including System "drain includes" flag that you put anywhere.


No comments:

Post a Comment