5 Replies Latest reply on May 5, 2017 5:07 AM by adityan

    Wildfly 10 session replication in domain mode

    mfatih

      I followed instructions which is given at Clustering and Domain Setup Walkthrough - WildFly 10 - Project Documentation Editor.

      I used mod_cluster 1.2.6 and wildfly 10. Slave node registers to master domain controller.  Load balancing is working as i seen but session replication is not working.

      I realized artemismq should be configured (previously hornetq) which is not mentioned.

      Is there something else to be configured.

      If there is tutorial or sample configuration i will be really grateful.

        • 1. Re: Wildfly 10 session replication in domain mode
          pferraro
          1. Make sure your server group references the "ha" or "full-ha" profile.
          2. If your nodes do not reside on the same physical host, make sure to configure the "private" interface to use a non-loopback address.
          3. Make sure your web.xml contains <distributable/>.
          4. Make sure your nodes can communicate with each other.  Your server log should indicate your cluster membership.
          • 2. Re: Wildfly 10 session replication in domain mode
            mfatih

            nodes run on two different physical hosts. I updated as below

            <interfaces>

                 <interface name="management" />

            <interface name="public">

                 <any-address/>

            </interface>

            <interface name="private">

                 <inet-address value="${jboss.bind.address.private:10.0.15.168}"/>

            </interface>

            <interface name="unsecure">

                 <inet-address value="${jboss.bind.address:127.0.0.1}"/>

            </interface>

            </interfaces>

             

            Then given error is thrown.

             

            2016-06-29 16:23:30,881 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC000001: Failed to start service jboss.network.private: org.jboss.msc.service.StartException in service jboss.network.private: WFLYSRV0082: failed to resolve interface private

            at org.jboss.as.server.services.net.NetworkInterfaceService.start(NetworkInterfaceService.java:91)

            at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)

            at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)

            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

            at java.lang.Thread.run(Thread.java:745)

             

            2016-06-29 16:23:30,975 INFO [org.jboss.modcluster] (ServerService Thread Pool -- 69) MODCLUSTER000001: Initializing mod_cluster version 1.3.1.Final

            2016-06-29 16:23:30,991 INFO [org.wildfly.extension.undertow] (MSC service thread 1-7) WFLYUT0006: Undertow HTTP listener default listening on 10.0.15.168:8330

            2016-06-29 16:23:31,006 INFO [org.jboss.modcluster] (ServerService Thread Pool -- 69) MODCLUSTER000032: Listening to proxy advertisements on /224.0.1.105:23364

            2016-06-29 16:23:31,271 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-1) WFLYJCA0001: Bound data source [java:jboss/datasources/ExampleDS]

            2016-06-29 16:23:31,396 INFO [org.wildfly.iiop.openjdk] (MSC service thread 1-2) WFLYIIOP0009: CORBA ORB Service started

            2016-06-29 16:23:31,427 INFO [org.jboss.as.server.deployment] (MSC service thread 1-4) WFLYSRV0027: Starting deployment of "test-demo.war" (runtime-name: "test-demo.war")

            2016-06-29 16:23:31,490 INFO [org.jboss.ws.common.management] (MSC service thread 1-7) JBWS022052: Starting JBossWS 5.1.3.Final (Apache CXF 3.1.4)

            2016-06-29 16:23:31,864 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([("interface" => "private")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.network.private" => "org.jboss.msc.service.StartException in service jboss.network.private: WFLYSRV0082: failed to resolve interface private"}}

            2016-06-29 16:23:31,864 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("socket-binding-group" => "full-ha-sockets"),

              ("socket-binding" => "jgroups-udp-fd")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => ["org.wildfly.network.socket-binding.jgroups-udp-fd"],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,880 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("socket-binding-group" => "full-ha-sockets"),

              ("socket-binding" => "jgroups-udp")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => ["org.wildfly.network.socket-binding.jgroups-udp"],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,880 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([("subsystem" => "jgroups")]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => [

              "jboss.clustering.dispatcher.default",

              "jboss.clustering.nodes.default",

              "jboss.jgroups.factory.default"

              ],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,880 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("subsystem" => "jgroups"),

              ("channel" => "ee")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => [

              "jboss.jgroups.channel.ee",

              "jboss.jgroups.channel.ee.connector",

              "jboss.jgroups.channel.ee.factory"

              ],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,880 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("subsystem" => "jgroups"),

              ("stack" => "udp")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => ["jboss.jgroups.factory.udp"],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,880 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("subsystem" => "jgroups"),

              ("stack" => "udp"),

              ("protocol" => "FD_SOCK")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => ["jboss.jgroups.factory.udp.FD_SOCK"],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,880 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("subsystem" => "jgroups"),

              ("stack" => "udp"),

              ("transport" => "UDP")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => ["jboss.jgroups.factory.udp.UDP"],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,880 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("subsystem" => "messaging-activemq"),

              ("server" => "default")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => [

              "jboss.messaging-activemq.default",

              "jboss.messaging-activemq.default.jms.manager"

              ],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,896 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("subsystem" => "infinispan"),

              ("cache-container" => "web")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => [

              "jboss.clustering.group.web.routing",

              "jboss.clustering.nodes.web.routing",

              "jboss.clustering.registry.web.routing",

              "jboss.clustering.registry.web.routing.factory",

              "jboss.infinispan.web.default.config",

              "jboss.infinispan.web.routing",

              "jboss.infinispan.web.routing.config"

              ],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,896 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([

              ("subsystem" => "infinispan"),

              ("cache-container" => "web"),

              ("transport" => "jgroups")

            ]) - failure description: {"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => [

              "jboss.clustering.dispatcher.web",

              "jboss.clustering.nodes.web"

              ],

              "Services that may be the cause:" => ["jboss.naming.context.java.jboss.DefaultJMSConnectionFactory"]

            }}

            2016-06-29 16:23:31,896 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([("deployment" => "test-demo.war")]) - failure description: {"WFLYCTL0180: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.test-demo.test-demo.DefaultJMSConnectionFactory is missing [jboss.naming.context.java.jboss.DefaultJMSConnectionFactory]"]}

            2016-06-29 16:23:31,995 INFO [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0010: Deployed "test-demo.war" (runtime-name : "test-demo.war")

            2016-06-29 16:23:32,046 INFO [org.jboss.as.controller] (Controller Boot Thread) WFLYCTL0183: Service status report

            WFLYCTL0184: New missing/unsatisfied dependencies:

              service jboss.naming.context.java.jboss.DefaultJMSConnectionFactory (missing) dependents: [service jboss.naming.context.java.module.test-demo.test-demo.DefaultJMSConnectionFactory]

            WFLYCTL0186: Services which failed to start: service jboss.network.private: org.jboss.msc.service.StartException in service jboss.network.private: WFLYSRV0082: failed to resolve interface private

            • 3. Re: Wildfly 10 session replication in domain mode
              pferraro

              Thanks for the stack trace - this would have been useful detail for your initial post.

               

              "WFLYSRV0082: failed to resolve interface private" suggests that "10.0.15.168" is not valid network interface. If this configuration is coming from your domain.xml, you certainly don't want to define your interfaces this way (as that address will only be valid on one host, but not the other). Instead, you should either:

              • 4. Re: Wildfly 10 session replication in domain mode
                mfatih

                I defined private interface in host.xml and referenced that in domain.xml

                Also, activemq password is set

                subsystem xmlns="urn:jboss:domain:messaging-activemq:1.0">

                                <server name="default">

                                    <cluster password="${jboss.messaging.cluster.password:A123456.}"/>

                ........

                 

                Then session replication is working

                Thanks for your help

                • 5. Re: Wildfly 10 session replication in domain mode
                  adityan

                  Hello Paul,

                  I am working to set up cluster for JBoss EAP 7 using mod_cluster 1.3.1. I have deployed to instances of JBoss EAP 7 in standalone mode and load balancing them using mod_cluster. I am facing issue of sticky session. The sticky session is not being maintained. I have set sticky session as true in standalone-ha.xml of both servers. Can you look into my configuration? I have configured mod_cluster and JBoss EAP 7 as per red hat configuration guide.

                  Link: Load Balancing Cluster not working with Apache HTTP Server 2.4.6 and JBoss EAP 7