{"id":107,"date":"2017-04-20T14:31:19","date_gmt":"2017-04-20T14:31:19","guid":{"rendered":"http:\/\/cogin.com\/blog\/?p=107"},"modified":"2017-12-03T15:07:29","modified_gmt":"2017-12-03T15:07:29","slug":"queueproxy-msmq-cluster","status":"publish","type":"post","link":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/","title":{"rendered":"QueueProxy on MSMQ cluster"},"content":{"rendered":"<p>Managing clustered MSMQ was always tricky, since it runs as a separate instance, i.e. more or less like a separate &#8220;virtual&#8221; computer with MSMQ installed. When you try to manage it from QueueExplorer you&#8217;ll see that there are some <a href=\"https:\/\/www.cogin.com\/mq\/qelimitations.php\">limitations<\/a>\u00a0since it&#8217;s done in remote mode, either from one of cluster nodes or from some other machine. You can&#8217;t create or modify queues, you can&#8217;t find out queue&#8217;s transactional status, etc.<\/p>\n<p>QueueProxy allows you to bypass these limitations. It&#8217;s a small app which can be installed as a generic cluster application, and since it runs as a part of a\u00a0cluster, it can connect to clustered MSMQ locally. QueueExplorer then talks with QueueProxy and not with remote MSMQ, eliminating all these problems.<\/p>\n<h2>How to run QueueProxy on a cluster?<\/h2>\n<p>Here are step by step instructions:<\/p>\n<ul>\n<li><a href=\"\/QueueExplorer\/QueueProxy.php\">Download QueueProxy<\/a><\/li>\n<li>Unzip it on\u00a0<strong>both<\/strong> cluster nodes, and put in same folders.<\/li>\n<li>Open &#8220;Failover Cluster Manager&#8221;<\/li>\n<li>Locate MSMQ role you created before. While it&#8217;s selected, pick &#8220;Add resource&#8221; and select &#8220;Generic Application&#8221;.<\/li>\n<li>Type path to QueueProxy.exe. It should be on the\u00a0same path on both cluster nodes! Finish wizard.<\/li>\n<li>Before bringing &#8220;QueueProxy\u00a0Application&#8221; resource online, open its Properties.<\/li>\n<li>Go to Dependencies tab, and add MSMQ resource. Click apply but don&#8217;t close the tab. If it&#8217;s not applied next step won&#8217;t work.<\/li>\n<li>Go to General tab and check &#8220;Use Network Name for computer name&#8221;.<br \/>\n<a href=\"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-111 size-full\" src=\"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png\" alt=\"\" width=\"478\" height=\"568\" srcset=\"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png 478w, https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806-252x300.png 252w\" sizes=\"auto, (max-width: 478px) 100vw, 478px\" \/><\/a><\/li>\n<li>Now close properties and you can bring &#8220;QueueProxy Application&#8221; online.<\/li>\n<\/ul>\n<p>If everything is ok, once you connect to clustered MSMQ from QueueExplorer &#8211; you should see that queues have correct transactional\/non\u00a0transactional\u00a0status, and you&#8217;ll be able to create new queues and edit their properties, same as for local MSMQ.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Managing clustered MSMQ was always tricky, since it runs as a separate instance, i.e. more or less like a separate &#8220;virtual&#8221; computer with MSMQ installed. When you try to manage it from QueueExplorer you&#8217;ll see that there are some limitations\u00a0since it&#8217;s done in remote mode, either from one of cluster nodes or from some other [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,3],"tags":[7,5],"class_list":["post-107","post","type-post","status-publish","format-standard","hentry","category-msmq","category-queueexplorer","tag-cluster","tag-msmq"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>QueueProxy on MSMQ cluster<\/title>\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.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"QueueProxy on MSMQ cluster\" \/>\n<meta property=\"og:description\" content=\"Managing clustered MSMQ was always tricky, since it runs as a separate instance, i.e. more or less like a separate &#8220;virtual&#8221; computer with MSMQ installed. When you try to manage it from QueueExplorer you&#8217;ll see that there are some limitations\u00a0since it&#8217;s done in remote mode, either from one of cluster nodes or from some other [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/\" \/>\n<meta property=\"og:site_name\" content=\"Cogin blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-04-20T14:31:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-12-03T15:07:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png\" \/>\n<meta name=\"author\" content=\"Dejan Grujic\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Dejan Grujic\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/\"},\"author\":{\"name\":\"Dejan Grujic\",\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/#\\\/schema\\\/person\\\/e0c4fd92043868daa052d5978d69ed22\"},\"headline\":\"QueueProxy on MSMQ cluster\",\"datePublished\":\"2017-04-20T14:31:19+00:00\",\"dateModified\":\"2017-12-03T15:07:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/\"},\"wordCount\":297,\"image\":{\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png\",\"keywords\":[\"Cluster\",\"MSMQ\"],\"articleSection\":[\"MSMQ\",\"QueueExplorer\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/\",\"url\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/\",\"name\":\"QueueProxy on MSMQ cluster\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png\",\"datePublished\":\"2017-04-20T14:31:19+00:00\",\"dateModified\":\"2017-12-03T15:07:29+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/#\\\/schema\\\/person\\\/e0c4fd92043868daa052d5978d69ed22\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png\",\"contentUrl\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png\",\"width\":478,\"height\":568},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/msmq\\\/queueproxy-msmq-cluster\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"QueueProxy on MSMQ cluster\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/\",\"name\":\"Cogin blog\",\"description\":\"Queuing tools and articles\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/#\\\/schema\\\/person\\\/e0c4fd92043868daa052d5978d69ed22\",\"name\":\"Dejan Grujic\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7edfd9071a535694242755af2736da7972b73f5d026be6563586a9b0ff7829d0?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7edfd9071a535694242755af2736da7972b73f5d026be6563586a9b0ff7829d0?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7edfd9071a535694242755af2736da7972b73f5d026be6563586a9b0ff7829d0?s=96&d=mm&r=g\",\"caption\":\"Dejan Grujic\"},\"sameAs\":[\"http:\\\/\\\/www.cogin.com\"],\"url\":\"https:\\\/\\\/www.cogin.com\\\/blog\\\/author\\\/gruja\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"QueueProxy on MSMQ cluster","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.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/","og_locale":"en_US","og_type":"article","og_title":"QueueProxy on MSMQ cluster","og_description":"Managing clustered MSMQ was always tricky, since it runs as a separate instance, i.e. more or less like a separate &#8220;virtual&#8221; computer with MSMQ installed. When you try to manage it from QueueExplorer you&#8217;ll see that there are some limitations\u00a0since it&#8217;s done in remote mode, either from one of cluster nodes or from some other [&hellip;]","og_url":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/","og_site_name":"Cogin blog","article_published_time":"2017-04-20T14:31:19+00:00","article_modified_time":"2017-12-03T15:07:29+00:00","og_image":[{"url":"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png","type":"","width":"","height":""}],"author":"Dejan Grujic","twitter_misc":{"Written by":"Dejan Grujic","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/#article","isPartOf":{"@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/"},"author":{"name":"Dejan Grujic","@id":"https:\/\/www.cogin.com\/blog\/#\/schema\/person\/e0c4fd92043868daa052d5978d69ed22"},"headline":"QueueProxy on MSMQ cluster","datePublished":"2017-04-20T14:31:19+00:00","dateModified":"2017-12-03T15:07:29+00:00","mainEntityOfPage":{"@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/"},"wordCount":297,"image":{"@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png","keywords":["Cluster","MSMQ"],"articleSection":["MSMQ","QueueExplorer"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/","url":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/","name":"QueueProxy on MSMQ cluster","isPartOf":{"@id":"https:\/\/www.cogin.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/#primaryimage"},"image":{"@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png","datePublished":"2017-04-20T14:31:19+00:00","dateModified":"2017-12-03T15:07:29+00:00","author":{"@id":"https:\/\/www.cogin.com\/blog\/#\/schema\/person\/e0c4fd92043868daa052d5978d69ed22"},"breadcrumb":{"@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/#primaryimage","url":"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png","contentUrl":"https:\/\/www.cogin.com\/blog\/wp-content\/uploads\/2017\/04\/Server-2012-R2-Cluster-Node-1-2017-04-20-16-28-30-e1492698656806.png","width":478,"height":568},{"@type":"BreadcrumbList","@id":"https:\/\/www.cogin.com\/blog\/msmq\/queueproxy-msmq-cluster\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.cogin.com\/blog\/"},{"@type":"ListItem","position":2,"name":"QueueProxy on MSMQ cluster"}]},{"@type":"WebSite","@id":"https:\/\/www.cogin.com\/blog\/#website","url":"https:\/\/www.cogin.com\/blog\/","name":"Cogin blog","description":"Queuing tools and articles","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cogin.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.cogin.com\/blog\/#\/schema\/person\/e0c4fd92043868daa052d5978d69ed22","name":"Dejan Grujic","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/7edfd9071a535694242755af2736da7972b73f5d026be6563586a9b0ff7829d0?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/7edfd9071a535694242755af2736da7972b73f5d026be6563586a9b0ff7829d0?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7edfd9071a535694242755af2736da7972b73f5d026be6563586a9b0ff7829d0?s=96&d=mm&r=g","caption":"Dejan Grujic"},"sameAs":["http:\/\/www.cogin.com"],"url":"https:\/\/www.cogin.com\/blog\/author\/gruja\/"}]}},"_links":{"self":[{"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/posts\/107","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/comments?post=107"}],"version-history":[{"count":4,"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/posts\/107\/revisions"}],"predecessor-version":[{"id":129,"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/posts\/107\/revisions\/129"}],"wp:attachment":[{"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/media?parent=107"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/categories?post=107"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cogin.com\/blog\/wp-json\/wp\/v2\/tags?post=107"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}