ClusterListener

Version 11

    The ClusterListener allows a standalone JBoss Web to work with a mod_cluster proxy. It also works in JBoss AS.

    To enable it just add in server.xml:

     

     

     

     

    The following parameters are supported:

     

    • proxyList: list of proxy frond-end that will use us as backend that is a coma separed list of host:port example:

     

    ProxyList="localhost:6666,neo:6666"localhost:7666"

     

    • proxyURL: URL prefix to send with the commands default is no prefix

     

    proxyURL="/bla"

     

    • socketTimeout: Socket timeout for connections to the httpd servers default 20000ms

     

    socketTimeout="20000"

     

    • domain: domain

     

    domain="domain1"

     

    • flushPackets: How mod_proxy should flush the packets.

     

    flushPackets="on"

     

    • flushWait: Time in millisecond before flushing a packet

     

    flushWait="500"

     

    • ping: Max time to wait for a cpong after a cping (Asynchronous and Synchronous ping/pong)

     

    ping="10"

     

    • smax: Max number of connection a process will handle in one worker.

     

    smax="100"

     

    • ttl: Max time an unused connection is allowed to live in mod_cluster.

     

    ttl="600"

     

    • nodeTimeout: Max time mod_cluster is going to wait for a node to answer. Value in seconds.

     

    nodeTimeout="10"

     

    • balancer: Name of the balancer.

     

    balancer="cluster1"

     

    • stickySession: Use sticky session.

     

    stickySession="true"

     

    • stickySessionRemove: Remove the session id is the JVMRoute can't be used to route the request.

     

    stickySessionRemove="true"

     

    • stickySessionForce: Return an error is the worker corresponding to the JVMRoute can't be used.

     

    stickySessionForce="true"

     

    • workerTimeout: Max time to wait for a free worker. Note that is a kind of poll try to find the best worker. Value in seconds.

     

    workerTimeout="1"

     

    • maxAttempts: Number of retry before giving up (and returning an error)

     

    maxAttempts="3"

     

     

    Using mod_advertise:

     

    mod_advertise is a small httpd module that allows to discover the httpd front-end instead defining them in proxyList. 3 parameters are supported:

     

    • Advertise: Default is true if proxyList is not filled.

    • AdvertiseGroupAddress: Address of the multicast to join. Must be the same value as the mod_advertise directive AdvertiseGroup.

     

      AdvertiseGroupAddress="232.0.0.2"

    • AdvertisePort: Port of the multicast to join. Must be the same value as the mod_advertise directive (mod_advertise default 23364).

     

      AdvertisePort="23364"

    • AdvertiseSecurityKey: Key the front-end is going to send. Default no key no check.

     

     

    Using SSL:

     

    • ssl: Use SSL to connect to httpd, default false

     

    ssl="true"

     

    • sslCiphers: Ciphers to be used for the SSL connection

     

    sslCiphers="cipher1,cipher2"

    • sslProtocol: SSL protocol to be used for connection, default "TLS"

     

    sslProtocol="name"

     

    • sslCertificateEncodingAlgorithm: Encoding algorithm used for certificates

     

    sslCertificateEncodingAlgorithm="alg"

     

    • sslKeyStore: Certificate store, default to "~/.keystore"

     

    sslKeyStore="myCertificate"

     

    • sslKeyStorePass: Password for the certificate, default "changeit"

     

    sslKeyStorePass="changeit"

     

    • sslKeyStoreType: Certificate store type, default "JKS"

     

    sslKeyStoreType="type"

     

    • sslKeyStoreProvider: Certificate store provider

     

    sslKeyStoreProvider="provider"

     

    • sslKeyAlias: Alias name for the key

     

    sslKeyAlias="alias"

     

    • sslTrustAlgorithm: Encoding algorithm used for the trust certificates

     

    sslTrustAlgorithm="alg"

     

    • sslCrlFile: Certificate revocation list

     

    sslCrlFile="file"

     

    • sslTrustMaxCertLength: Maximum certificate chain length, default 5

     

    sslTrustMaxCertLength="6"

     

    • sslTrustStore: Trust certificate store

     

    sslTrustStore="myTrustStore"

     

    • sslTrustStorePassword: Password for the trust store, default is to use the main certificate password

     

    sslTrustStorePassword="pass"

     

    • sslTrustStoreType: Certificate store type

     

    sslTrustStoreType="type"

     

    • sslTrustStoreProvider: Certificate store provider

     

    sslTrustStoreProvider="provider"