{"id":10089,"date":"2021-02-07T22:23:27","date_gmt":"2021-02-08T06:23:27","guid":{"rendered":"https:\/\/www.coretechnologies.com\/blog\/?p=10089"},"modified":"2021-02-07T22:23:27","modified_gmt":"2021-02-08T06:23:27","slug":"high-availability-failover-cluster","status":"publish","type":"post","link":"https:\/\/www.coretechnologies.com\/blog\/alwaysup\/high-availability-failover-cluster\/","title":{"rendered":"Q&#038;A: Does AlwaysUp work in High Availability Failover Clusters?"},"content":{"rendered":"<div align=\"center\"><img decoding=\"async\" src=\"\/blog\/images\/qa-windows-failover-cluster.png\" title=\"Does AlwaysUp work with High Availability Failover Clustering?\" alt=\"Does AlwaysUp work with High Availability Failover Clustering?\" border=\"0\" \/><\/div>\n<div class=\"blog-qa-question-box\"><img decoding=\"async\" src=\"\/images\/quotes-transparent-21x21.png\" \/> My team inherited a cluster of 4 Windows Server 2012 R2 machines running a legacy finance application. At a time only one instance of the application should be up and running as the active\/primary instance.<\/p>\n<p>The application is <a href=\"https:\/\/docs.microsoft.com\/en-us\/previous-versions\/windows\/desktop\/mscs\/cluster-unaware-applications\" target=\"_blank\" rel=\"noopener noreferrer\">cluster-unaware<\/a> so we set it up with the <a href=\"https:\/\/docs.microsoft.com\/en-us\/previous-versions\/windows\/desktop\/mscs\/generic-application\" target=\"_blank\" rel=\"noopener noreferrer\">Generic Application<\/a> type. Most days it works fine but about once or twice per month the EXE stops responding and no failover happens. Someone has to log in and kill it to trigger failover, which is just plain silly.<\/p>\n<p>I see that your AlwaysUp may be able to better manage the program. My question is, can your product work to control and maintain the supervision of these instances?<\/p>\n<p align=\"right\">&mdash; Andrei<\/p>\n<\/div>\n<p>Hi Andrei. <\/p>\n<p>Several of our corporate customers have deployed AlwaysUp in Windows clusters. They tell us that, despite having no specific features that target cluster management, AlwaysUp works very well in that context.<\/p>\n<p>In situations like yours where 100% uptime of a particular application is important, AlwaysUp adds an efficient line of defense &mdash; one that complements traditional multi-machine failover. Here&#8217;s how that works.<\/p>\n<h2 class=\"blog-caption\">Application resilience: AlwaysUp protects against application failures<\/h2>\n<p>AlwaysUp&#8217;s job is to ensure that your application is always running. If your application crashes, AlwaysUp will automatically restart it.<\/p>\n<p>But AlwaysUp provides much more than basic crash protection. It can operate proactively, rooting out problematic situations before they metastasize into full blown failures.<\/p>\n<p>For example, you can have AlwaysUp quickly recycle your application if it:<\/p>\n<ul>\n<li>\n<p>Monopolizes the CPU for too long;<\/p>\n<\/li>\n<li>\n<p>Consumes too much RAM;<\/p>\n<\/li>\n<li>\n<p>Fails to respond properly to network\/web requests;<\/p>\n<\/li>\n<li>\n<p>Stops writing to a log file.<\/p>\n<\/li>\n<\/ul>\n<p>In it helps, you can even have AlwaysUp restart your finance program once a week during off-hours &mdash; to fend off mysterious lock-ups and other unpleasant instabilities.<\/p>\n<h3>Less downtime when your application fails<\/h3>\n<p>Most importantly, your system\/service will likely experience less downtime when AlwaysUp is the first line of defense. Instead of waiting for the cluster failure to be detected and the switchover to the backup server to occur, your application will quickly bounce back on the active server. That rapid resolution can shave many precious seconds off your recovery time!<\/p>\n<h2 class=\"blog-caption\">System resilience: Clustering protects against catastrophic failures<\/h2>\n<p>While AlwaysUp is able to cure many application failures, there are a range of deeper problems that it cannot solve. For example, when:<\/p>\n<ul>\n<li>\n<p>The machine loses power;<\/p>\n<\/li>\n<li>\n<p>The server&#8217;s operating system crashes;<\/p>\n<\/li>\n<li>\n<p>The network experiences an outage;<\/p>\n<\/li>\n<li>\n<p>A critical hardware component (motherboard, hard drive, etc.) malfunctions.<\/p>\n<\/li>\n<\/ul>\n<p>For those dicey situations &mdash; where a server has been compromised &mdash; your failover cluster setup will save the day.<\/p>\n<h3>Configure a &#8220;Generic Service&#8221; instead of a &#8220;Generic Application&#8221;<\/h3>\n<p>Since you set up a <a href=\"https:\/\/docs.microsoft.com\/en-us\/previous-versions\/windows\/desktop\/mscs\/generic-application\" target=\"_blank\" rel=\"noopener noreferrer\">Generic Application<\/a> resource type to monitor your important program, you should remove that and replace it with a <a href=\"https:\/\/docs.microsoft.com\/en-us\/previous-versions\/windows\/desktop\/mscs\/generic-service\" target=\"_blank\" rel=\"noopener noreferrer\">Generic Service<\/a> that monitors the Windows Service created by AlwaysUp:<\/p>\n<div align=\"center\"><a href=\"\/blog\/images\/high-availability-wizard-generic-service.png\" class=\"zoomPopup\" title=\"Select Generic Service in the High Availability Wizard\" target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" class=\"image-padding\" src=\"\/blog\/images\/high-availability-wizard-generic-service.png\" title=\"Select Generic Service in the High Availability Wizard (click to enlarge)\" alt=\"Select Generic Service in the High Availability Wizard\" border=\"0\" width=\"520\" \/><\/a><\/div>\n<p>That change will enable your cluster to fail over whenever AlwaysUp protection stops &mdash; not when your legacy application fails. That is an important distinction.<\/p>\n<p>If your application is named &#8220;Legacy Finance App&#8221; in AlwaysUp, select the Windows Service called &#8220;Legacy Finance App (managed by AlwaysUpService)&#8221;. You can find out more about the service created by AlwaysUp on the <a href=\"\/products\/AlwaysUp\/AlwaysUp_FAQ.html#NetStartStop\">Frequently Asked Questions (FAQ) page<\/a>.<\/p>\n<p style=\"margin-top:30px;\">\nBest of luck with your legacy application!<\/p>\n<!-- relpost-thumb-wrapper --><div class=\"relpost-thumb-wrapper\"><!-- filter-class --><div class=\"relpost-thumb-container\"><style>.relpost-block-single-image, .relpost-post-image { margin-bottom: 10px; }<\/style><h3>You may also like...<\/h3><div style=\"clear: both\"><\/div><div style=\"clear: both\"><\/div><!-- relpost-block-container --><div class=\"relpost-block-container relpost-block-column-layout\" style=\"--relposth-columns: 3;--relposth-columns_t: 2; --relposth-columns_m: 2\"><a href=\"https:\/\/www.coretechnologies.com\/blog\/alwaysup\/version-15-5-released\/\"class=\"relpost-block-single\" ><div class=\"relpost-custom-block-single\"><img decoding=\"async\" loading=\"lazy\" class=\"relpost-block-single-image\" alt=\"AlwaysUp 15.5: Advanced Support for PowerShell, OneDrive, and more\"  src=\"https:\/\/www.coretechnologies.com\/blog\/wp-content\/uploads\/new-update-150x150-2.webp\" style=\"aspect-ratio:1\/1\" style=\"aspect-ratio:1\/1\"><\/img><div class=\"relpost-block-single-text\"  style=\"height: 75px;font-family: Arial;  font-size: 12px;  color: #333333;\"><h2 class=\"relpost_card_title\">AlwaysUp 15.5: Advanced Support for PowerShell, OneDrive, and more<\/h2><\/div><\/div><\/a><a href=\"https:\/\/www.coretechnologies.com\/blog\/alwaysup\/recycle-leaky-program\/\"class=\"relpost-block-single\" ><div class=\"relpost-custom-block-single\"><img decoding=\"async\" loading=\"lazy\" class=\"relpost-block-single-image\" alt=\"Q&amp;A: Can AlwaysUp Auto-Start and Recycle my Leaky Program Once per Day?\"  src=\"https:\/\/www.coretechnologies.com\/blog\/wp-content\/uploads\/restart-app-on-schedule-150x150-1.png\" style=\"aspect-ratio:1\/1\" style=\"aspect-ratio:1\/1\"><\/img><div class=\"relpost-block-single-text\"  style=\"height: 75px;font-family: Arial;  font-size: 12px;  color: #333333;\"><h2 class=\"relpost_card_title\">Q&amp;A: Can AlwaysUp Auto-Start and Recycle my Leaky Program Once per Day?<\/h2><\/div><\/div><\/a><a href=\"https:\/\/www.coretechnologies.com\/blog\/alwaysup\/version-16-advanced-failure-detection\/\"class=\"relpost-block-single\" ><div class=\"relpost-custom-block-single\"><img decoding=\"async\" loading=\"lazy\" class=\"relpost-block-single-image\" alt=\"AlwaysUp 16 Handles Common Application Failures &mdash; So You Don&#039;t Have To\"  src=\"https:\/\/www.coretechnologies.com\/blog\/wp-content\/uploads\/whats-new-3.webp\" style=\"aspect-ratio:1\/1\" style=\"aspect-ratio:1\/1\"><\/img><div class=\"relpost-block-single-text\"  style=\"height: 75px;font-family: Arial;  font-size: 12px;  color: #333333;\"><h2 class=\"relpost_card_title\">AlwaysUp 16 Handles Common Application Failures &mdash; So You Don&#039;t Have To<\/h2><\/div><\/div><\/a><\/div><!-- close relpost-block-container --><div style=\"clear: both\"><\/div><\/div><!-- close filter class --><\/div><!-- close relpost-thumb-wrapper -->","protected":false},"excerpt":{"rendered":"<p>My team inherited a cluster of 4 Windows Server 2012 R2 machines running a legacy finance application. At a time only one instance of the application should be up and running as the active\/primary instance. The application is cluster-unaware so &hellip; <a href=\"https:\/\/www.coretechnologies.com\/blog\/alwaysup\/high-availability-failover-cluster\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":10127,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[26,235,226,227,236,127],"class_list":["post-10089","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-alwaysup","tag-alwaysup-tag","tag-failover-cluster","tag-failure-detection","tag-failure-remediation","tag-high-availability","tag-qa"],"_links":{"self":[{"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/posts\/10089","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/comments?post=10089"}],"version-history":[{"count":29,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/posts\/10089\/revisions"}],"predecessor-version":[{"id":10128,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/posts\/10089\/revisions\/10128"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/media\/10127"}],"wp:attachment":[{"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/media?parent=10089"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/categories?post=10089"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/tags?post=10089"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}