{"id":490,"date":"2021-12-31T16:11:10","date_gmt":"2021-12-31T15:11:10","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/2021\/12\/31\/jboss-eap-7-cluster-in-domain-mode\/"},"modified":"2022-04-06T08:26:25","modified_gmt":"2022-04-06T06:26:25","slug":"jboss-eap-7-cluster-in-domain-mode","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/","title":{"rendered":"JBoss EAP 7 \u2013 Cluster in Domain mode"},"content":{"rendered":"<p>It is time to show you how to build a cluster with Domain mode within JBoss EAP 7. Before you read this blog I suggest you to review the following blogs: <a href=\"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-modules-extensions-subsystems-and-profiles\/\" rel=\"noopener\" target=\"_blank\">JBoss terminologies<\/a>, <a href=\"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-domain-architecture-understanding\/\" rel=\"noopener\" target=\"_blank\">the Domain architecture understanding<\/a>, and <a href=\"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-domain-creation\/\" rel=\"noopener\" target=\"_blank\">how to create a Domain<\/a>. All these bogs will help you to better understand what we will do today \ud83d\ude09<br \/>\n<!--more--><\/p>\n<h2>Environment Preparation<\/h1>\n<p>The domain will look like the below architecture:<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-arch.png\" alt=\"Domain Architecture\" \/><\/p>\n<p>On three VMs:<\/p>\n<ul>\n<li>vmjboss: master, hosting the Domain Controller<\/li>\n<li>vmjboss1: slave1<\/li>\n<li>vmjboss2: slave2<\/li>\n<\/ul>\n<p>I already installed JBoss EAP 7.0.0 on these VMs under $JBOSS_HOME, and created the domain according to the above architecture. If you need any help to create the domain please check this <a href=\"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-domain-creation\/\" rel=\"noopener\" target=\"_blank\">blog<\/a>.<\/p>\n<h3>Start the Domain<\/h3>\n<p>I started the domain, I can see that both slaves joined the master:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;Host Controller] 16:53:44,707 INFO  &#x5B;org.jboss.as.domain.controller] (Host Controller Service Threads - 36) WFLYHC0019: Registered remote slave host &quot;slave1&quot;, JBoss JBoss EAP 7.0.0.GA (WildFly 2.1.2.Final-redhat-1)\n&#x5B;Host Controller] 16:54:28,710 INFO  &#x5B;org.jboss.as.domain.controller] (Host Controller Service Threads - 37) WFLYHC0019: Registered remote slave host &quot;slave2&quot;, JBoss JBoss EAP 7.0.0.GA (WildFly 2.1.2.Final-redhat-1)\n<\/pre>\n<p>On slave1 and slave2, you should see the below in the logs:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;Host Controller] 16:54:26,644 INFO  &#x5B;org.jboss.as.host.controller] (Controller Boot Thread) WFLYHC0148: Connected to master host controller at remote:\/\/vmjboss:9999\n&#x5B;Host Controller] 16:54:26,689 INFO  &#x5B;org.jboss.as] (Controller Boot Thread) WFLYSRV0025: JBoss EAP 7.0.0.GA (WildFly Core 2.1.2.Final-redhat-1) (Host Controller) started in 13192ms - Started 43 of 44 services (13 services are lazy, passive or on-demand)\n<\/pre>\n<h3>Create Server Group<\/h3>\n<p>Now, our domain is up and running, we will create the ServerGroup named GroupHA.<br \/>\nYou can use the <em>&#8211;command<\/em> argument to provide a single CLI command to execute. The management CLI will terminate once the commands have completed.<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;jboss@vmjboss ~]$ $JBOSS_HOME\/bin\/jboss-cli.sh -c --controller=vmjboss:9990 --command=&quot;\/server-group=GroupHA:add(profile=ha,socket-binding-group=ha-sockets)&quot;\n{\n    &quot;outcome&quot; =&gt; &quot;success&quot;,\n    &quot;result&quot; =&gt; undefined,\n    &quot;server-groups&quot; =&gt; undefined\n}\n<\/pre>\n<p>To build a cluster the profile should be ha or full-ha where needed subsystems are configured by default:<\/p>\n<ul>\n<li><strong>Infinispan<\/strong>: An architecture used for caching objects and also replicating objects between caches. The Infinispan subsystem provides caching, state replication, and state distribution support.<\/li>\n<li><strong>JGroups<\/strong>: A framework for nodes to communicate with each other using either UDP or TCP.<\/li>\n<\/ul>\n<p>For more information about profiles read this <a href=\"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-modules-extensions-subsystems-and-profiles\/\" rel=\"noopener\" target=\"_blank\">blog <\/a> \ud83d\ude09<\/p>\n<h3>Create Servers<\/h3>\n<p>From the master, create the server1 on slave1:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;jboss@vmjboss ~]$ $JBOSS_HOME\/bin\/jboss-cli.sh -c --controller=vmjboss:9990 --command=&quot;\/host=slave1\/server-config=server1:add(group=GroupHA,socket-binding-port-offset=100)&quot;\n{\n    &quot;outcome&quot; =&gt; &quot;success&quot;,\n    &quot;result&quot; =&gt; {\n        &quot;step-1&quot; =&gt; {&quot;outcome&quot; =&gt; &quot;success&quot;},\n        &quot;step-2&quot; =&gt; {&quot;outcome&quot; =&gt; &quot;success&quot;},\n... \n        &quot;step-255&quot; =&gt; {&quot;outcome&quot; =&gt; &quot;success&quot;},\n        &quot;step-256&quot; =&gt; {&quot;outcome&quot; =&gt; &quot;success&quot;}\n    },\n    &quot;server-groups&quot; =&gt; undefined\n}\n<\/pre>\n<p>The port-offset is set to 100 to avoid port conflict with other instances running on the same VM\/IP address.<\/p>\n<p>Create the server2 on slave2:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;jboss@vmjboss ~]$ $JBOSS_HOME\/bin\/jboss-cli.sh -c --controller=vmjboss:9990 --command=&quot;\/host=slave2\/server-config=server2:add(group=GroupHA,socket-binding-port-offset=200)&quot;\n{\n    &quot;outcome&quot; =&gt; &quot;success&quot;,\n    &quot;result&quot; =&gt; {\n        &quot;step-1&quot; =&gt; {&quot;outcome&quot; =&gt; &quot;success&quot;},\n        &quot;step-2&quot; =&gt; {&quot;outcome&quot; =&gt; &quot;success&quot;},\n... \n        &quot;step-255&quot; =&gt; {&quot;outcome&quot; =&gt; &quot;success&quot;},\n        &quot;step-256&quot; =&gt; {&quot;outcome&quot; =&gt; &quot;success&quot;}\n    },\n    &quot;server-groups&quot; =&gt; undefined\n}\n<\/pre>\n<p>Both servers have been assigned to the server group GroupHA created before.<\/p>\n<p>Start both servers:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;jboss@vmjboss ~]$ $JBOSS_HOME\/bin\/jboss-cli.sh -c --controller=vmjboss:9990 --command=&quot;:start-servers(blocking=true)&quot;\n\n{\n    &quot;outcome&quot; =&gt; &quot;success&quot;,\n    &quot;result&quot; =&gt; undefined,\n    &quot;server-groups&quot; =&gt; undefined\n}\n<\/pre>\n<p><strong>What <em>blocking=true<\/em> means?<\/strong><br \/>\nIn fact, if blocking=true is set your command will hang or wait until the operation on the server side returns and tells the CLI that the operation is complete.<\/p>\n<h2>Cluster Creation<\/h2>\n<p>A cluster is a collection of servers that communicate with each other in such a way that they improve the availability of services by providing the following capabilities:<\/p>\n<ul>\n<li><strong>High Availability (HA)<\/strong>: a service has a very high probability of being available.<\/li>\n<li><strong>Scalability<\/strong>: a service can handle a large number of requests by spreading the workload across multiple servers.<\/li>\n<li><strong>Failover<\/strong>: if a service fails, the client can continue processing its tasks as another cluster member takes over the client&#8217;s requests.<\/li>\n<li><strong>Fault Tolerance<\/strong>: a server can guarantee correct behavior even if fail over occurs.<\/li>\n<\/ul>\n<p>The most common way to achieve scalability and high availability is to use the following together:<\/p>\n<ul>\n<li><strong>Load balancer<\/strong>: Often a piece of hardware, or a service like Apache httpd.<\/li>\n<li><strong>Data replication services<\/strong>: A service such as memcached or a framework (Infinispan)<\/li>\n<\/ul>\n<h3>Application Preparation<\/h3>\n<p>To take advantage of the high availability features of clustered servers, an application first has to be marked as being distributable. To do so, include the  tag in the web.xml for the application. The following is extracted from the web.xml of my cluster.war application:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&lt;?xml version=&quot;1.0&quot;?&gt;\n  &lt;web-app ...&gt;\n    &lt;distributable\/&gt;\n  &lt;\/web-app&gt;\n<\/pre>\n<h3>Application Deployment<\/h3>\n<p>Now, I will deploy the cluster.war application on the Server Group GroupHA, so on all servers assigned to this Server Group.<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;jboss@vmjboss ~]$ $JBOSS_HOME\/bin\/jboss-cli.sh -c --controller=vmjboss:9990 --commands=&quot;deploy \/opt\/data\/cluster.war --server-groups=GroupHA,deployment-info --name=cluster.war&quot;\nNAME        RUNTIME-NAME \ncluster.war cluster.war  \n\nSERVER-GROUP       STATE     \nGroupHA            enabled\n<\/pre>\n<p>As you can see the output of deployment-info, the cluster.war application has been deployed and enabled on GroupHA, so on server1 and server2.<\/p>\n<p>Go, and check the slave1 and slave2 logs, you should see:<br \/>\nOn slave1:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;Server:server1] 17:45:51,095 INFO  &#x5B;org.wildfly.extension.undertow] (ServerService Thread Pool -- 68) WFLYUT0021: Registered web context: \/cluster\n&#x5B;Server:server1] 17:45:52,662 INFO  &#x5B;org.infinispan.CLUSTER] (remote-thread--p11-t1) ISPN000310: Starting cluster-wide rebalance for cache cluster.war, topology CacheTopology{id=1, rebalanceId=1, currentCH=DefaultConsistentHash{ns=80, owners = (1)&#x5B;slave1:server1: 80+0]}, pendingCH=DefaultConsistentHash{ns=80, owners = (2)&#x5B;slave1:server1: 40+40, slave2:server2: 40+40]}, unionCH=null, actualMembers=&#x5B;slave1:server1, slave2:server2]}\n&#x5B;Server:server1] 17:45:52,681 INFO  &#x5B;org.infinispan.CLUSTER] (remote-thread--p11-t1) ISPN000310: Starting cluster-wide rebalance for cache routing, topology CacheTopology{id=1, rebalanceId=1, currentCH=DefaultConsistentHash{ns=80, owners = (1)&#x5B;slave1:server1: 80+0]}, pendingCH=DefaultConsistentHash{ns=80, owners = (2)&#x5B;slave1:server1: 40+40, slave2:server2: 40+40]}, unionCH=null, actualMembers=&#x5B;slave1:server1, slave2:server2]}\n..\n&#x5B;Server:server1] 17:45:55,104 INFO  &#x5B;org.jboss.as.server] (ServerService Thread Pool -- 65) WFLYSRV0010: Deployed &quot;cluster.war&quot; (runtime-name : &quot;cluster.war&quot;)\n<\/pre>\n<p>On slave2:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&#x5B;Server:server2] 17:45:52,454 INFO  &#x5B;org.infinispan.remoting.transport.jgroups.JGroupsTransport] (MSC service thread 1-1) ISPN000094: Received new cluster view for channel hibernate: &#x5B;slave1:server1|1] (2) &#x5B;slave1:server1, slave2:server2]\n...\n&#x5B;Server:server2] 17:45:53,777 INFO  &#x5B;javax.enterprise.resource.webcontainer.jsf.config] (ServerService Thread Pool -- 66) Initializing Mojarra 2.2.12-jbossorg-2  for context '\/cluster'\n&#x5B;Server:server2] 17:45:55,334 INFO  &#x5B;org.wildfly.extension.undertow] (ServerService Thread Pool -- 66) WFLYUT0021: Registered web context: \/cluster\n&#x5B;Server:server2] 17:45:55,451 INFO  &#x5B;org.jboss.as.server] (ServerService Thread Pool -- 65) WFLYSRV0010: Deployed &quot;cluster.war&quot; (runtime-name : &quot;cluster.war&quot;)\n<\/pre>\n<p>Which means that a cluster has been created once your distributable application has been deployed on servers server1 and server2 (members of the server group GroupHA). <\/p>\n<p>The application is available from server2:<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-app1.png\" alt=\"Application available on server2\" \/><\/p>\n<p>The application is also available from server1:<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-app.png\" alt=\"Application available on server1\" \/><\/p>\n<p>Now, you can easily create new server(s) and assign it\/them to GroupHA, the application cluster.war will be deployed on it and server3 will join the cluster automatically.<\/p>\n<p>Now, data is replicated between the cluster members, but we will better see clustering benefits with a LB on top. That&#8217;s will be the topic of our my next blog, I will show you how to configure JBoss EAP to play as Load Balancer, in the meanwhile don&#8217;t hesitate to ask questions \ud83d\ude09<\/p>\n<p>Take care and stay safe \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It is time to show you how to build a cluster with Domain mode within JBoss EAP 7. Before you read this blog I suggest you to review the following blogs: JBoss terminologies, the Domain architecture understanding, and how to create a Domain. All these bogs will help you to better understand what we will [&hellip;]<\/p>\n","protected":false},"author":46,"featured_media":491,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[115,116,38,117,118,119,120],"type_dbi":[],"class_list":["post-490","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-application-integration-middleware","tag-application","tag-application-server","tag-cluster","tag-domain","tag-jboss","tag-jboss-eap","tag-web-application"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>JBoss EAP 7 \u2013 Cluster in Domain mode - dbi Blog<\/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.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JBoss EAP 7 \u2013 Cluster in Domain mode\" \/>\n<meta property=\"og:description\" content=\"It is time to show you how to build a cluster with Domain mode within JBoss EAP 7. Before you read this blog I suggest you to review the following blogs: JBoss terminologies, the Domain architecture understanding, and how to create a Domain. All these bogs will help you to better understand what we will [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-12-31T15:11:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-06T06:26:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-arch.png\" \/>\n\t<meta property=\"og:image:width\" content=\"773\" \/>\n\t<meta property=\"og:image:height\" content=\"469\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"David Diab\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"David Diab\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 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\\\/jboss-eap-7-cluster-in-domain-mode\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/\"},\"author\":{\"name\":\"David Diab\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/deb907c3360cacdc6c7df54b4bac3c86\"},\"headline\":\"JBoss EAP 7 \u2013 Cluster in Domain mode\",\"datePublished\":\"2021-12-31T15:11:10+00:00\",\"dateModified\":\"2022-04-06T06:26:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/\"},\"wordCount\":1340,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/01\\\/JBoss-cluster-domain-arch.png\",\"keywords\":[\"application\",\"Application Server\",\"Cluster\",\"domain\",\"JBoss\",\"JBoss EAP\",\"Web Application\"],\"articleSection\":[\"Application integration &amp; Middleware\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/\",\"name\":\"JBoss EAP 7 \u2013 Cluster in Domain mode - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/01\\\/JBoss-cluster-domain-arch.png\",\"datePublished\":\"2021-12-31T15:11:10+00:00\",\"dateModified\":\"2022-04-06T06:26:25+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/deb907c3360cacdc6c7df54b4bac3c86\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/01\\\/JBoss-cluster-domain-arch.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/01\\\/JBoss-cluster-domain-arch.png\",\"width\":773,\"height\":469},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/jboss-eap-7-cluster-in-domain-mode\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JBoss EAP 7 \u2013 Cluster in Domain mode\"}]},{\"@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\\\/deb907c3360cacdc6c7df54b4bac3c86\",\"name\":\"David Diab\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/212b1b2e4650bad3116f644ab4fb4663786d94195d7685d0704c8426da088e60?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/212b1b2e4650bad3116f644ab4fb4663786d94195d7685d0704c8426da088e60?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/212b1b2e4650bad3116f644ab4fb4663786d94195d7685d0704c8426da088e60?s=96&d=mm&r=g\",\"caption\":\"David Diab\"},\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/david-diab\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"JBoss EAP 7 \u2013 Cluster in Domain mode - dbi Blog","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\/jboss-eap-7-cluster-in-domain-mode\/","og_locale":"en_US","og_type":"article","og_title":"JBoss EAP 7 \u2013 Cluster in Domain mode","og_description":"It is time to show you how to build a cluster with Domain mode within JBoss EAP 7. Before you read this blog I suggest you to review the following blogs: JBoss terminologies, the Domain architecture understanding, and how to create a Domain. All these bogs will help you to better understand what we will [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/","og_site_name":"dbi Blog","article_published_time":"2021-12-31T15:11:10+00:00","article_modified_time":"2022-04-06T06:26:25+00:00","og_image":[{"width":773,"height":469,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-arch.png","type":"image\/png"}],"author":"David Diab","twitter_card":"summary_large_image","twitter_misc":{"Written by":"David Diab","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/"},"author":{"name":"David Diab","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/deb907c3360cacdc6c7df54b4bac3c86"},"headline":"JBoss EAP 7 \u2013 Cluster in Domain mode","datePublished":"2021-12-31T15:11:10+00:00","dateModified":"2022-04-06T06:26:25+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/"},"wordCount":1340,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-arch.png","keywords":["application","Application Server","Cluster","domain","JBoss","JBoss EAP","Web Application"],"articleSection":["Application integration &amp; Middleware"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/","url":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/","name":"JBoss EAP 7 \u2013 Cluster in Domain mode - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-arch.png","datePublished":"2021-12-31T15:11:10+00:00","dateModified":"2022-04-06T06:26:25+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/deb907c3360cacdc6c7df54b4bac3c86"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-arch.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/01\/JBoss-cluster-domain-arch.png","width":773,"height":469},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/jboss-eap-7-cluster-in-domain-mode\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"JBoss EAP 7 \u2013 Cluster in Domain mode"}]},{"@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\/deb907c3360cacdc6c7df54b4bac3c86","name":"David Diab","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/212b1b2e4650bad3116f644ab4fb4663786d94195d7685d0704c8426da088e60?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/212b1b2e4650bad3116f644ab4fb4663786d94195d7685d0704c8426da088e60?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/212b1b2e4650bad3116f644ab4fb4663786d94195d7685d0704c8426da088e60?s=96&d=mm&r=g","caption":"David Diab"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/david-diab\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/490","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\/46"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=490"}],"version-history":[{"count":6,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/490\/revisions"}],"predecessor-version":[{"id":17018,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/490\/revisions\/17018"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/491"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=490"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=490"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=490"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=490"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}