标签: mod-cluster

Ubuntu上的apache + mod_cluster + wildfly

我正在尝试使用以下设置:

apache 2.4 + mod_cluster 1.3 Final + ubuntu 14.04.2-server + Wildfly 8.1.0 Final

我成功地将wildfly上下文广告给了apache,但是当我尝试击中负载均衡器时,我得到了500.

此外,当我启动wildfly后重新启动apache时,我收到以下错误:

MODCLUSTER000042: Error MEM sending STATUS command to 192.168.56.101/192.168.56.101:10001, configuration will be reset: MEM: Can't read node
Run Code Online (Sandbox Code Playgroud)

这是我的配置:

mod_cluster.conf

<IfModule manager_module>
   Listen *:10001
   ManagerBalancerName modcluster
   ProxyPass /cluster-demo balancer://modcluster stickysession=JSESSIONID|jsessionid nofailover=On
   ProxyPassReverse /cluster-demo balancer://modcluster
   ProxyPreserveHost On

<VirtualHost *:10001>

  <Location />
    Require all granted
  </Location>

  KeepAliveTimeout 60
  MaxKeepAliveRequests 0
  EnableMCPMReceive On
  AdvertiseFrequency 5
  ServerAdvertise On http://192.168.56.101:10001
  AdvertiseGroup 224.0.1.105:23364

  <Location /mod_cluster-manager>
   SetHandler mod_cluster-manager
   Require all granted
  </Location>

 </VirtualHost> …
Run Code Online (Sandbox Code Playgroud)

apache ubuntu jboss mod-cluster wildfly-8

13
推荐指数
1
解决办法
3044
查看次数

Wildfly 9 - TCP上的mod_cluster

我们目前正在测试从Wildfly 8.2.0迁移到Wildfly 9.0.0.CR1(或从快照构建的CR2).系统是使用mod_cluster的集群,并且在VPS上运行,实际上阻止它使用多播.

在8.2.0我们一直使用以下配置的modcluster运行良好:

      <mod-cluster-config proxy-list="1.2.3.4:10001,1.2.3.5:10001" advertise="false" connector="ajp">
          <dynamic-load-provider>
              <load-metric type="cpu"/>
          </dynamic-load-provider>
      </mod-cluster-config>
Run Code Online (Sandbox Code Playgroud)

不幸的是,在9.0.0上,不推荐使用proxy-list,服务器的启动将以错误结束.可怕的文档缺乏,但经过几次尝试后,我发现代理列表被替换为代理,这些代理是出站套接字绑定列表.因此,配置如下所示:

      <mod-cluster-config proxies="mc-prox1 mc-prox2" advertise="false" connector="ajp">
          <dynamic-load-provider>
              <load-metric type="cpu"/>
          </dynamic-load-provider>
      </mod-cluster-config>
Run Code Online (Sandbox Code Playgroud)

并且应该将以下内容添加到相应的socket-binding-group中(在我的情况下为full-ha):

    <outbound-socket-binding name="mc-prox1">
        <remote-destination host="1.2.3.4" port="10001"/>
    </outbound-socket-binding>
    <outbound-socket-binding name="mc-prox2">
        <remote-destination host="1.2.3.5" port="10001"/>
    </outbound-socket-binding>
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.在此之后,httpd集群开始注册节点.但是我从负载均衡器得到错误.当我查看/ mod_cluster-manager时,我看到一些Node REMOVED行,还有很多错误,如:

ERROR [org.jboss.modcluster] (UndertowEventHandlerAdapter - 1) MODCLUSTER000042: Error MEM sending STATUS command to node1/1.2.3.4:10001, configuration will be reset: MEM: Can't read node
Run Code Online (Sandbox Code Playgroud)

在mod_cluster的日志中有相应的警告:

manager_handler STATUS error: MEM: Can't read node

据我所知,问题是虽然wildfly/modcluster能够连接到httpd/mod_cluster,但它不能以其他方式工作.不幸的是,即使经过广泛的努力,我也被困住了.

有人可以帮助为没有广告的Wildfly 9.0.0设置mod_cluster吗?非常感谢.

wildfly mod-cluster

5
推荐指数
1
解决办法
5739
查看次数

我无法让会话复制与 wildfly 10 一起使用

我们已经把 httpd 作为负载均衡器放在了wildfly 前面。我正在使用wildfly 10.1.0。

我有 3 台机器,一台主机和两台从机。

在主人的 domain.xml 中,我有:

<subsystem xmlns="urn:jboss:domain:modcluster:2.0">
                <mod-cluster-config proxies="mc-prox1" connector="ajp">
                    <dynamic-load-provider>
                        <load-metric type="busyness"/>
                    </dynamic-load-provider>
                </mod-cluster-config>
            </subsystem>

<socket-binding-groups>
    <socket-binding-group name="full-ha-sockets" default-interface="public">
        <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>
        <socket-binding name="http" port="${jboss.http.port:8080}"/>
        <socket-binding name="https" port="${jboss.https.port:8443}"/>
        <socket-binding name="iiop" interface="unsecure" port="3528"/>
        <socket-binding name="iiop-ssl" interface="unsecure" port="3529"/>
        <socket-binding name="jgroups-mping" interface="private" port="0" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>
        <socket-binding name="jgroups-tcp" interface="private" port="7600"/>
        <socket-binding name="jgroups-tcp-fd" interface="private" port="57600"/>
        <socket-binding name="jgroups-udp" interface="private" port="55200" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45688"/>
        <socket-binding name="jgroups-udp-fd" interface="private" port="54200"/>
        <socket-binding name="modcluster" port="0" multicast-address="224.0.1.105" multicast-port="23364"/>
        <socket-binding name="txn-recovery-environment" port="4712"/>
        <socket-binding name="txn-status-manager" port="4713"/>

        <outbound-socket-binding name="mail-smtp"> …
Run Code Online (Sandbox Code Playgroud)

infinispan wildfly mod-cluster

5
推荐指数
1
解决办法
1313
查看次数

负载平衡集群不适用于 Apache HTTP Server 2.4.6 和 JBoss EAP 7

我正在 JBoss EAP 7 上认证我的应用程序。我的应用程序在独立模式下工作,但在集群模式下,我的应用程序已部署,但我无法登录。我再次重新路由到登录网址。
我已经使用 mod_cluster 设置了集群。

Load Balancer Server 日志中没有错误日志,也没有在集群的各个节点上。
在我的测试环境中,我的负载均衡器和 2 个服务器节点在同一台机器上。我为 JBoss 节点提供了不同的端口和实例 ID 以区分节点。
我正在从集群中的一个节点共享我的 mod_cluster.conf 和 JBoss standalone-ha.xml 提取物。

以下是 standalone-ha.xml 文件中的片段:

Modcluster 设置是:

    <subsystem xmlns="urn:jboss:domain:modcluster:2.0">
    <mod-cluster-config advertise-socket="modcluster" proxies="proxy1" balancer="testcluster" advertise="true" connector="ajp">
        <dynamic-load-provider>
            <load-metric type="busyness"/>
        </dynamic-load-provider>
    </mod-cluster-config>  
</subsystem> 
Run Code Online (Sandbox Code Playgroud)

暗流设置是:

    <subsystem xmlns="urn:jboss:domain:undertow:3.1" instance-id="node1">
    <buffer-cache name="default"/>
    <server name="default-server">
        <ajp-listener name="ajp" socket-binding="ajp"/>
        <http-listener name="default" socket-binding="http" redirect-socket="https"/>
         <host name="default-host" alias="localhost">
            <location name="/" handler="welcome-content"/>
            <filter-ref name="server-header"/>
            <filter-ref name="x-powered-by-header"/>
        </host>
    </server>
   <servlet-container name="default">
        <jsp-config/>
        <websockets/>
    </servlet-container>
    <handlers>
        <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/> …
Run Code Online (Sandbox Code Playgroud)

apache jboss load-balancing mod-cluster

5
推荐指数
1
解决办法
1845
查看次数

Wildfly 9负载平衡

我有两个以独立模式运行的Wildfly 9节点.

192.168.1.34 - node1 - Listening on 8080
192.168.1.35 - node2 - Listening on 8080

192.168.1.33 - myserver - Listening on 8080
Run Code Online (Sandbox Code Playgroud)

我想在两个节点之间进行负载平衡,以便进入myserver的请求在两个节点之间分配.我是Wildfly的新手,但我看到许多对内置mod_cluster的引用.

在多个JBoss节点之间进行负载平衡的最简单方法是什么?

jboss mod-cluster

4
推荐指数
1
解决办法
3379
查看次数

403在尝试访问/ mod_cluster-manager时?

我用Apache 2.4.6运行CentOS 7.我正在尝试使用mod_cluster 1.2.6创建Wildfly/JBoss集群.我已经在Mac OSX上成功实现了这一点,我只是想在服务器环境中启动并运行它.

我的群集和虚拟主机配置如下所示:

 LoadModule slotmem_module       modules/mod_slotmem.so
 LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
 LoadModule advertise_module     modules/mod_advertise.so
 LoadModule manager_module       modules/mod_manager.so

 MemManagerFile /var/cache/httpd

<VirtualHost *:80>

  <Directory />
    Order deny,allow
    Allow from all
  </Directory>

  KeepAliveTimeout 60
  MaxKeepAliveRequests 0
  ManagerBalancerName myBalancer
  ServerAdvertise On
  AdvertiseFrequency 3
  EnableMCPMReceive

  <Location /mod_cluster-manager>
    SetHandler mod_cluster-manager
    Order deny,allow
    Allow from all
  </Location>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

服务器启动正常,但是当我尝试访问时,http://localhost/mod_cluster-manager我得到403说拒绝权限.这是我的error_log文件中的确切消息:

[Wed Jul 30 11:53:21.547109 2014] [authz_core:error] [pid 6012] [client 127.0.0.1:36425] AH01630: client denied by server configuration: /mod_cluster-manager
Run Code Online (Sandbox Code Playgroud)

我没有遇到任何这样的问题,让它在OSX上工作,所以我不完全确定问题是什么或为什么我得到403.据我了解,该Allow from all指令应该足以授予我访问权限通过localhost连接.有没有其他人碰到类似的东西?我错过了什么吗?

apache jboss wildfly mod-cluster

3
推荐指数
1
解决办法
2991
查看次数