Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
Appendix A. Apache HTTP Server proxy modules
This section contains expanded definitions of the Apache HTTP Server proxy modules that mod_cluster includes.
A.1. Mod_manager module and directives Link kopierenLink in die Zwischenablage kopiert!
The cluster manager module, mod_manager, receives and acknowledges messages from nodes, including worker node registrations, worker node load data, and worker node application life cycle events.
LoadModule manager_module modules/mod_manager.so
Configurable directives for mod_manager
Configurable directives in the <VirtualHost> element are as follows:
- EnableMCPMReceive
-
Allows the
VirtualHostto receive the mod_cluster Protocol Message(MCPM)from nodes. Add oneEnableMCPMReceivedirective to the Apache HTTP Server configuration to allowmod_clusterto operate correctly.EnableMCPMReceivemust be added in theVirtualHostconfiguration at the location whereadvertiseis configured. - MaxMCMPMaxMessSize
-
Defines the maximum size of mod_cluster Management Protocol
(MCMP)messages. The default value is calculated from otherMaxdirectives. The minimum value is1024. - AllowDisplay
-
Toggles the additional display on the
mod_cluster-managermain page. The default value isoff, which causes only version information to display on themod_cluster-managermain page. - AllowCmd
-
Toggles permissions for commands using
mod_cluster-managerURL. The default value ison, which allows commands. - ReduceDisplay
-
Toggles the reduction of information displayed on the
mod_cluster-managerpage. Reducing the information allows more nodes to display on the page. The default value isoff, which allows all the available information to display. - MemManagerFile
-
Defines the location for the files in which mod_manager stores configuration details. mod_manager also uses this location for generated keys for shared memory and lock files. This must be an absolute path name. It is recommended that this path be on a local drive, and not an NFS share. The default value is
/logs/. - Maxcontext
-
The maximum number of contexts mod_cluster will use. The default value is
100. - Maxnode
-
The maximum number of worker nodes mod_cluster will use. The default value is
20. - Maxhost
-
The maximum number of hosts (aliases) mod_cluster will use. This is also the maximum number of load balancers. The default value is
20. - Maxsessionid
-
The maximum number of active session identifiers stored. A session is considered inactive when no information is received from that session for five minutes. This is used for demonstration and debugging purposes only. The default value is
0, which disables this logic. - ManagerBalancerName
-
The name of the load balancer to use when the worker node does not provide a load balancer name. The default value is
mycluster. - PersistSlots
-
When set to
on, nodes, aliases, and contexts are persisted in files. The default value isoff. - CheckNonce
When set to
on, session identifiers are checked to ensure that they are unique and have not occurred before. The default ison.NoteSetting this directive to
offcan leave your server vulnerable to replay attacks.- SetHandler mod_cluster-manager
Defines a handler to display information about worker nodes in the cluster. This is defined in the
Locationelement:<Location $LOCATION> SetHandler mod_cluster-manager Require ip 127.0.0.1 </Location>When accessing the
$LOCATIONdefined in theLocationelement in your browser, you will see something like the following. (In this case,$LOCATIONwas also defined asmod_cluster-handler.)
Transferred corresponds to the POST data sent to the worker node. Connected corresponds to the number of requests that had been processed when this status page was requested. Sessions corresponds to the number of active sessions. This field is not present when Maxsessionid is 0.
A.2. Mod_proxy_cluster module and directives Link kopierenLink in die Zwischenablage kopiert!
The Proxy Balancer Module, mod_proxy_cluster, handles the routing of requests to cluster nodes. The Proxy Balancer selects the appropriate node to forward the request to based on the application location in the cluster, the current state of each of the cluster nodes, and the Session ID (if a request is part of an established session).
LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
Configurable directives for mod_proxy_cluster
You can also configure the following directives in the <VirtualHost> element to change the load balancing behavior.
- CreateBalancers
Defines how load balancers are created in the Apache HTTP Server virtual hosts. The following values are valid in
CreateBalancers:-
0: Create load balancers in all virtual hosts defined in Apache HTTP Server. Remember to configure the load balancers in theProxyPassdirective. -
1: Do not create balancers. When using this value, you must also define the load balancer name inProxyPassorProxyPassMatch. -
2: Create only the main server. This is the default value forCreateBalancers.
-
- UseAlias
Defines whether to check that the defined
Aliascorresponds to theServerName. The following values are valid forUseAlias:-
0: Ignore alias information from worker nodes. This is the default value forUseAlias. -
1: Verify that the defined alias corresponds to a worker node’s server name.
-
- LBstatusRecalTime
-
Defines the interval in seconds between the proxy calculating the status of a worker node. The default interval is
5seconds. - ProxyPassMatch; ProxyPass
ProxyPassmaps remote servers into the local server namespace. If the local server has an address such ashttp://local.com/, the followingProxyPassdirective converts a local request forhttp://local.com/requested/file1into a proxy request forhttp://worker.local.com/file1.ProxyPass /requested/ http://worker.local.com/ProxyPassMatchuses regular expressions to match local paths to which the proxied URL should apply.For either directive,
!indicates that a specified path is local, and a request for that path should not be routed to a remote server. For example, the following directive specifies thatgiffiles should be served locally.ProxyPassMatch ^(/.*\.gif)$ !
A.3. Mod_advertise module and directives Link kopierenLink in die Zwischenablage kopiert!
The Proxy Advertisement Module, mod_advertise, broadcasts the existence of the proxy server via UDP multicast messages. The server advertisement messages contain the IP address and port number where the proxy is listening for responses from nodes that wish to join the load-balancing cluster.
The mod_advertise module must be defined along with the mod_manager module in the VirtualHost element. In the following example, the identifier for the mod_advertise module is advertise_module.
LoadModule advertise_module modules/mod_advertise.so
Configurable directives for mod_advertise
The mod_advertise module is configurable by using the following directives:
- ServerAdvertise
Defines how the advertising mechanism is used.
The default value is
Off. When set toOff, the proxy does not advertise its location.When set to
On, the advertising mechanism is used to tell worker nodes to send status information to this proxy. You can also specify a host name and port with the following syntax:ServerAdvertise On http://HOSTNAME:PORT/. This is only required when using a name-based virtual host, or when a virtual host is not defined.- AdvertiseGroup
Defines the multicast address to advertise on. The syntax is
AdvertiseGroup ADDRESS:PORT, whereADDRESSmust correspond toAdvertiseGroupAddress, andPORTmust correspond toAdvertisePortin your worker nodes.If your worker node is JBoss EAP-based, and the
-uswitch is used at startup, the defaultAdvertiseGroupAddressis the value passed via the-uswitch.The default value is
224.0.1.105:23364. If a port is not specified, the port defaults to23364.- AdvertiseFrequency
-
The interval (in seconds) between multicast messages advertising the IP address and port. The default value is
10. - AdvertiseSecurityKey
-
Defines a string that is used to identify
mod_clusterin JBoss Web Server. By default this directive is not set and no information is sent. - AdvertiseManagerUrl
- Defines the URL that the worker node should use to send information to the proxy server. By default this directive is not set and no information is sent.
- AdvertiseBindAddress
-
Defines the address and port over which to send multicast messages. The syntax is
AdvertiseBindAddress ADDRESS:PORT. This allows an address to be specified on machines with multiple IP addresses. The default value is0.0.0.0:23364.
A.4. Mod_proxy module and directives Link kopierenLink in die Zwischenablage kopiert!
The mod_proxy module is a standard Apache HTTP Server module that enables the server to act as a proxy for data that is transferred over the Apache JServ Protocol (AJP), FTP, CONNECT (for SSL), and HTTP protocols. The mod_proxy module does not require additional configuration. The identifier for the mod_proxy module is proxy_module.
The configurable directives for mod_proxy, such as ProxyIOBufferSize, are used to configure the mod_cluster module.
A.5. Mod_proxy_ajp module and directives Link kopierenLink in die Zwischenablage kopiert!
The mod_proxy_ajp module is a standard Apache HTTP Server module that provides support for Apache JServ Protocol (AJP) proxying. The mod_proxy module is also required if you want to use mod_proxy_ajp.
A.6. Mod_cluster_slotmem module and directives Link kopierenLink in die Zwischenablage kopiert!
The mod_cluster_slotmem module s a shared memory provider for creating and accessing a shared memory segment in which the data sets are organized in "slots".
The mod_cluster_slotmem module does not require any configuration directives.