{"id":3801,"date":"2014-06-05T02:15:00","date_gmt":"2014-06-05T00:15:00","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/"},"modified":"2014-06-05T02:15:00","modified_gmt":"2014-06-05T00:15:00","slug":"how-to-avoid-failover-cluster-with-powershell-scripting","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/","title":{"rendered":"How to avoid Failover Cluster with PowerShell scripting"},"content":{"rendered":"<p><img decoding=\"async\" class=\"blog-image aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg\" alt=\"\" \/><\/p>\n<p>One of my colleague asked me some days ago if I could create a PowerShell script to get rid from Windows Server Failover Cluster. The reason is that it has, in some specific cases, the bad habit to failover a resource or a service even when we don&#8217;t want it. To be honest, I use a lot the Failover Cluster feature of Windows Server without any problems\u00a0as a SQL Server DBA, but for this specific case, I did not find a successful configuration.<\/p>\n<p>Here, we are using Failover Cluster to provide a Virtual IP address for a database using Dbvisit Standby. The database is open only on one node and the switchover or failover operation is performed by hand so we want to prevent failover of the Virtual IP resource to avoid redirecting client connection to a database that is not open.<\/p>\n<p>At one of our clients, we have a Windows Server 2008 R2 cluster with two nodes and a FileShare. A Client Access Point has been provided as a service for client connections and this service must not failover automatically in any cases. For some reasons, this service failovers and I cannot avoid it even with special configuration settings.<\/p>\n<p>For a solution to this problem, I propose to create a PowerShell script which will create a new IP address attached to the Network IPv4 interface. This script will read a configuration file to collect informations about the IP address like network address mask, network interface name, IP address, nodes where to start and stop the IP address, etc.<\/p>\n<p>Here is the format of our configuration file:<\/p>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">#------------------------------------------------------------------------------\n# Configuration file for VIP management of databases \n#------------------------------------------------------------------------------\n# Configuration format :\n#\n# SID:VIP_ADR:VIP_MASK:VIP_IF:\n# \n# SID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0 : Oracle SID for which the VIP is configured - mandatory\n# VIP_ADR\u00a0\u00a0\u00a0\u00a0 : Address of the VIP - mandatory\n# VIP_MASK\u00a0\u00a0 : VIP Network address Mask - mandatory\n# VIP_IF\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 : Network interface to attach the VIP (i.e Local Area Connection) - mandatory\n# VIP_LSNR\u00a0\u00a0\u00a0 : VIP Listener - optional\n# VIP_Node1\u00a0\u00a0 : Name of Node 1 - mandatory\n# VIP_Node2\u00a0\u00a0 : Name of Node 2 - mandatory\n# \n# Note :\n#\n# The usage of parameters delimiters allows to have potentially empty (not\n# defined parameters)\n#\n#\n# How to call the script :\n#\n# .CreateIPAddress.ps1 'Start' 'DBITEST' [-F]\n#\n# Param 1: \"Start\" or \"Stop\" - mandatory\n# Param 2: VIP Address name - mandatory\n# Param 3: -F to force creation of the VIP Address locally even if it is not possible to check if the VIP Address exits on the second node - optional\n#\n#------------------------------------------------------------------------------\n# Example :\n# DBITEST:192.168.22.190:255.255.255.0:Local Area Connection::test1:test2<\/pre>\n<p>In this blog, I will share how the script works step by step and what are the components\/commands I had to learn about to create an IP on a network interface.<\/p>\n<p>First of all, this PowerShell script uses the cmdlet Invoke-Command which uses Windows Remote Management (WinRM). If WinRM is not configured you can enable the WS-Management protocol on the local computer and set up the default configuration for remote management with the following command: Winrm quickconfig.<\/p>\n<p>You need also to change the execution policy in your PowerShell screen with Set-ExecutionPolicy Unrestricted\u00a0to allow script execution. You should also open your PowerShell screen with the Run As Administrator option.<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"SetPolicy.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/SetPolicy.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_SetPolicy.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_SetPolicy.jpg\" alt=\"b2ap3_thumbnail_SetPolicy.jpg\" \/><\/a><\/p>\n<p>The first thing I do is to clear my screen:<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen1.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen1.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_screen1.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen1.jpg\" alt=\"b2ap3_thumbnail_screen1.jpg\" \/><\/a><\/p>\n<p>Now, I have to check if I receive the parameter I need for my script:<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen2.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen2.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_screen2.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen2.jpg\" alt=\"b2ap3_thumbnail_screen2.jpg\" \/><\/a><\/p>\n<p>I have initialized my two mandatory parameters and perhaps a third one which is optional. It is time to read where my configuration file is located, test this location and initialize the variables.<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen3.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen3.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"b2ap3_thumbnail_screen3.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen3.jpg\" alt=\"b2ap3_thumbnail_screen3.jpg\" width=\"614\" height=\"102\" \/><\/a><\/p>\n<p>I am able now to read my configuration file sequentially to find my VIP Address. I will test first character of each line to avoid comment line and when I will find a non-comment line, check the first parameter of the line to test if it is equal to my VIP Address enter into the command line.<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen4.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen4.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_screen4.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen4.jpg\" alt=\"b2ap3_thumbnail_screen4.jpg\" \/><\/a><\/p>\n<p>I have found my VIP Address in my configuration file, I will now split my configuration line to collect all informations I need and connect to my second node to get back the different IP Addresses attached to Network Adapters.<\/p>\n<p>If the second node doesn&#8217;t respond we stop the script to avoid to create a local IP Address which already exists on the second node. But if the optional parameter &#8220;-F&#8221; has been entered we force the creation.<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen5.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen5.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_screen5.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen5.jpg\" alt=\"b2ap3_thumbnail_screen5.jpg\" \/><\/a><\/p>\n<p>If we run the command &#8220;Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName $node2 -erroraction stop&#8221;, we have a list of each Network Adapter with its IP Addresses associated.<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen6.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen6.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_screen6.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen6.jpg\" alt=\"b2ap3_thumbnail_screen6.jpg\" \/><\/a><\/p>\n<p>We have now to search in the different lines if our VIP Address exists. If we find it, we have to delete this IP Address and if it doesn&#8217;t exist, we should print a message.<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen7.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen7.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_screen7.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen7.jpg\" alt=\"b2ap3_thumbnail_screen7.jpg\" \/><\/a><\/p>\n<p>For the moment, we have to check remotely if our IP Address existed on the remote server and if it was the case we have to delete this IP Address.<br \/>\nNow, based on our parameter, we will stop or start this IP Address locally.<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen8.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen8.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_screen8.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen8.jpg\" alt=\"b2ap3_thumbnail_screen8.jpg\" \/><\/a><\/p>\n<p>Our VIP address is now started or stopped locally depending on the defined parameters. Finally, if we have not found the VIP Address in the configuration file, an error will be displayed and the script ends.<\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"screen9.jpg\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/99\/screen9.jpg\"><img decoding=\"async\" title=\"b2ap3_thumbnail_screen9.jpg\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/b2ap3_thumbnail_screen9.jpg\" alt=\"b2ap3_thumbnail_screen9.jpg\" \/><\/a><\/p>\n<p>At present, we have a local VIP Address where the client can come to connect. If our node goes down for whatever reason when it comes back, our VIP address will by always in the same node. If we want to change for node 1 to node 2, we just\u00a0have to run our script on node 2 and go for the parameter start. This will stop the IP Address on node 1 and start the IP Address on node 2.<\/p>\n<p>I hope this script and the different functions I have shown here were able to help you.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>One of my colleague asked me some days ago if I could create a PowerShell script to get rid from Windows Server Failover Cluster. The reason is that it has, in some specific cases, the bad habit to failover a resource or a service even when we don&#8217;t want it. To be honest, I use [&hellip;]<\/p>\n","protected":false},"author":21,"featured_media":3802,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[38,49,272],"type_dbi":[],"class_list":["post-3801","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-application-integration-middleware","tag-cluster","tag-microsoft","tag-powershell"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to avoid Failover Cluster with PowerShell scripting - dbi Blog<\/title>\n<meta name=\"description\" content=\"One of my colleague asked me some days ago if I could create a PowerShell script to get rid from Windows Server Failover Cluster. The reason is that it has, in some specific cases, the bad habit to failover a resource or a service even when we don&#039;t want it.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to avoid Failover Cluster with PowerShell scripting\" \/>\n<meta property=\"og:description\" content=\"One of my colleague asked me some days ago if I could create a PowerShell script to get rid from Windows Server Failover Cluster. The reason is that it has, in some specific cases, the bad habit to failover a resource or a service even when we don&#039;t want it.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2014-06-05T00:15:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"225\" \/>\n\t<meta property=\"og:image:height\" content=\"224\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"St\u00e9phane Savorgnano\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"St\u00e9phane Savorgnano\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/\"},\"author\":{\"name\":\"St\u00e9phane Savorgnano\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/b6bce7d75118b35bdb3b439ad6a9ca3c\"},\"headline\":\"How to avoid Failover Cluster with PowerShell scripting\",\"datePublished\":\"2014-06-05T00:15:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/\"},\"wordCount\":818,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg\",\"keywords\":[\"Cluster\",\"Microsoft\",\"PowerShell\"],\"articleSection\":[\"Application integration &amp; Middleware\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/\",\"name\":\"How to avoid Failover Cluster with PowerShell scripting - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg\",\"datePublished\":\"2014-06-05T00:15:00+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/b6bce7d75118b35bdb3b439ad6a9ca3c\"},\"description\":\"One of my colleague asked me some days ago if I could create a PowerShell script to get rid from Windows Server Failover Cluster. The reason is that it has, in some specific cases, the bad habit to failover a resource or a service even when we don't want it.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg\",\"width\":225,\"height\":224},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to avoid Failover Cluster with PowerShell scripting\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/b6bce7d75118b35bdb3b439ad6a9ca3c\",\"name\":\"St\u00e9phane Savorgnano\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/88d2a790f775c52c1012ec644d883431da758f2cbcfc16067ade04d2ef625ef5?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/88d2a790f775c52c1012ec644d883431da758f2cbcfc16067ade04d2ef625ef5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/88d2a790f775c52c1012ec644d883431da758f2cbcfc16067ade04d2ef625ef5?s=96&d=mm&r=g\",\"caption\":\"St\u00e9phane Savorgnano\"},\"description\":\"St\u00e9phane Savorgnano has more than fifteen years of experience in Microsoft software development and in SQL Server database solutions. He is specialized in SQL Server installation, performance analysis, best practices, etc. St\u00e9phane Savorgnano is Microsoft Certified Solutions Associate (MCSA) and\u00a0Microsoft Certified Solutions Expert (MCSE) for SQL Server 2012. He is also Microsoft Certified Technology Specialist (MCTS) and Microsoft Certified IT Professional (MCITP) for SQL Server 2008 as well as ITIL Foundation V3 certified. Prior to joining dbi services, he was software engineer at Ciba Specialty Chemicals in Basel. St\u00e9phane Savorgnano holds a Master of Informatics from Mulhouse University (F). His branch-related experience covers Banking \/ Financial Services, Chemicals &amp; Pharmaceuticals, etc.\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/stephane-savorgnano\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to avoid Failover Cluster with PowerShell scripting - dbi Blog","description":"One of my colleague asked me some days ago if I could create a PowerShell script to get rid from Windows Server Failover Cluster. The reason is that it has, in some specific cases, the bad habit to failover a resource or a service even when we don't want it.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/","og_locale":"en_US","og_type":"article","og_title":"How to avoid Failover Cluster with PowerShell scripting","og_description":"One of my colleague asked me some days ago if I could create a PowerShell script to get rid from Windows Server Failover Cluster. The reason is that it has, in some specific cases, the bad habit to failover a resource or a service even when we don't want it.","og_url":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/","og_site_name":"dbi Blog","article_published_time":"2014-06-05T00:15:00+00:00","og_image":[{"width":225,"height":224,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg","type":"image\/jpeg"}],"author":"St\u00e9phane Savorgnano","twitter_card":"summary_large_image","twitter_misc":{"Written by":"St\u00e9phane Savorgnano","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/"},"author":{"name":"St\u00e9phane Savorgnano","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/b6bce7d75118b35bdb3b439ad6a9ca3c"},"headline":"How to avoid Failover Cluster with PowerShell scripting","datePublished":"2014-06-05T00:15:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/"},"wordCount":818,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg","keywords":["Cluster","Microsoft","PowerShell"],"articleSection":["Application integration &amp; Middleware"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/","url":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/","name":"How to avoid Failover Cluster with PowerShell scripting - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg","datePublished":"2014-06-05T00:15:00+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/b6bce7d75118b35bdb3b439ad6a9ca3c"},"description":"One of my colleague asked me some days ago if I could create a PowerShell script to get rid from Windows Server Failover Cluster. The reason is that it has, in some specific cases, the bad habit to failover a resource or a service even when we don't want it.","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_PowerShell_logo.jpg","width":225,"height":224},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/how-to-avoid-failover-cluster-with-powershell-scripting\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to avoid Failover Cluster with PowerShell scripting"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/b6bce7d75118b35bdb3b439ad6a9ca3c","name":"St\u00e9phane Savorgnano","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/88d2a790f775c52c1012ec644d883431da758f2cbcfc16067ade04d2ef625ef5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/88d2a790f775c52c1012ec644d883431da758f2cbcfc16067ade04d2ef625ef5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/88d2a790f775c52c1012ec644d883431da758f2cbcfc16067ade04d2ef625ef5?s=96&d=mm&r=g","caption":"St\u00e9phane Savorgnano"},"description":"St\u00e9phane Savorgnano has more than fifteen years of experience in Microsoft software development and in SQL Server database solutions. He is specialized in SQL Server installation, performance analysis, best practices, etc. St\u00e9phane Savorgnano is Microsoft Certified Solutions Associate (MCSA) and\u00a0Microsoft Certified Solutions Expert (MCSE) for SQL Server 2012. He is also Microsoft Certified Technology Specialist (MCTS) and Microsoft Certified IT Professional (MCITP) for SQL Server 2008 as well as ITIL Foundation V3 certified. Prior to joining dbi services, he was software engineer at Ciba Specialty Chemicals in Basel. St\u00e9phane Savorgnano holds a Master of Informatics from Mulhouse University (F). His branch-related experience covers Banking \/ Financial Services, Chemicals &amp; Pharmaceuticals, etc.","url":"https:\/\/www.dbi-services.com\/blog\/author\/stephane-savorgnano\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/3801","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=3801"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/3801\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/3802"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=3801"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=3801"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=3801"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=3801"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}