{"id":1737,"date":"2013-05-02T18:03:09","date_gmt":"2013-05-02T18:03:09","guid":{"rendered":"https:\/\/pipe2text.com\/?page_id=1737"},"modified":"2013-05-02T18:11:46","modified_gmt":"2013-05-02T18:11:46","slug":"increasing-system-availability-in-azure-by-using-availability-sets","status":"publish","type":"page","link":"https:\/\/pipe2text.com\/?page_id=1737","title":{"rendered":"Increasing system availability in Azure by using Availability Sets"},"content":{"rendered":"<p>In a prior article we spoke about using <a title=\"Creating a Windows Azure Affinity Group\" href=\"https:\/\/pipe2text.com\/?page_id=1715\">Affinity Groups<\/a> to split Azure VM\u2019s among different regions or datacenters and then also keeping them in close proximity within those datacenters. This provides a layer of redundancy in that if one datacenter happens to fail your systems located in another datacenter will remain online. At least hopefully anyway, but realistically what are the chances of 2 datacenters going offline in 2 separate locations.<\/p>\n<p>In this article we will speak about providing a different type of redundancy. Availability Sets provide increased availability for groups of 2 or more VM\u2019s that have been created as part of a group. An Availability Set does this by introducing the concept of a Fault Domain and an Update Domain.<\/p>\n<p>A <span style=\"text-decoration: underline;\">fault domain<\/span> helps to reduce single points of failure in a datacenter. It does this by splitting systems in different racks or on different switches, similar how you typically would in your own datacenter with systems that are part of a clustered SQL server or a Web Server farm. Each system would be connected to different PDU\u2019s and the network would be linked back to multiple network switches so if one goes down at least half of your machines would stay online and provide service until the problem has been resolved.<\/p>\n<p>An <span style=\"text-decoration: underline;\">update domain<\/span> is essentially what the name says. When Microsoft does updates on the systems hosting Azure this will make sure that all of the systems aren\u2019t updated and rebooted at the same time. This helps provide higher availability and ensures the SLA that MS provides for Azure systems can be met. If your systems aren&#8217;t built with these types of redundancies in place that SLA will certainly be decreased.<\/p>\n<p>You can create the availability set on an Azure VM fairly simply. The following screenshots will show the steps needed to accomplish this.<\/p>\n<p>In the Azure console go to Virtual Machines on the left<\/p>\n<p><img decoding=\"async\" style=\"display: inline;\" alt=\"\" src=\"https:\/\/pipe2text.com\/wp-content\/plugins..\/..\/uploads\/media\/increasing-system-availability-in-azure-by-using-availability-sets\/image1.png\" \/><\/p>\n<p>Choose the Virtual Machine you want to add to an Availability Set<\/p>\n<p><img decoding=\"async\" style=\"display: inline;\" alt=\"\" src=\"https:\/\/pipe2text.com\/wp-content\/plugins..\/..\/uploads\/media\/increasing-system-availability-in-azure-by-using-availability-sets\/image2.png\" \/><\/p>\n<p>In the Availability Set drop-down choose \u201cCreate an Availability Set\u201d. In this example I will call it OPS1<\/p>\n<p><img decoding=\"async\" style=\"display: inline;\" alt=\"\" src=\"https:\/\/pipe2text.com\/wp-content\/plugins..\/..\/uploads\/media\/increasing-system-availability-in-azure-by-using-availability-sets\/image3.png\" \/><\/p>\n<p>Now click on save at the bottom of the screen<\/p>\n<p><img decoding=\"async\" style=\"display: inline;\" alt=\"\" src=\"https:\/\/pipe2text.com\/wp-content\/plugins..\/..\/uploads\/media\/increasing-system-availability-in-azure-by-using-availability-sets\/image4.png\" \/><\/p>\n<p>This machine is now part of an Availability Set, but that really does us no good until additional machines have been added. So you will need to step thru the same process on any additional machines you want to add to the Availability Set. Note that you will still have to choose \u201cCreate an Availability Set\u201d on additional machines, just make the name the same as the previous machines you\u2019ve created an availability set on. When the machines have been added you will see something similar to the following. In the example below we have 2 VM\u2019s called OPS and OPS2 setup in an availability group called OPS1.<\/p>\n<p><img decoding=\"async\" style=\"display: inline;\" alt=\"\" src=\"https:\/\/pipe2text.com\/wp-content\/plugins..\/..\/uploads\/media\/increasing-system-availability-in-azure-by-using-availability-sets\/image5.png\" \/><\/p>\n<p>You will also notice the following under cloud services. Our cloud service that is created is named with the name of the first machine that was added to the Availability Set<\/p>\n<p><a href=\"https:\/\/pipe2text.com\/wp-content\/uploads\/2013\/05\/image6.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-full wp-image-1743\" alt=\"image6\" src=\"https:\/\/pipe2text.com\/wp-content\/uploads\/2013\/05\/image6.png\" width=\"922\" height=\"247\" srcset=\"https:\/\/pipe2text.com\/wp-content\/uploads\/2013\/05\/image6.png 922w, https:\/\/pipe2text.com\/wp-content\/uploads\/2013\/05\/image6-300x80.png 300w\" sizes=\"auto, (max-width: 922px) 100vw, 922px\" \/><\/a>As you can see there is an Update Domain and a Fault Domain listed. As they are in different one\u2019s they will be spared the dreaded Single Point of Failure.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In a prior article we spoke about using Affinity Groups to split Azure VM\u2019s among different regions or datacenters and then also keeping them in close proximity within those datacenters. This provides a layer of redundancy in that if one &hellip; <a href=\"https:\/\/pipe2text.com\/?page_id=1737\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","footnotes":""},"class_list":["post-1737","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/pipe2text.com\/index.php?rest_route=\/wp\/v2\/pages\/1737","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pipe2text.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/pipe2text.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/pipe2text.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/pipe2text.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1737"}],"version-history":[{"count":6,"href":"https:\/\/pipe2text.com\/index.php?rest_route=\/wp\/v2\/pages\/1737\/revisions"}],"predecessor-version":[{"id":1740,"href":"https:\/\/pipe2text.com\/index.php?rest_route=\/wp\/v2\/pages\/1737\/revisions\/1740"}],"wp:attachment":[{"href":"https:\/\/pipe2text.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1737"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}