5.0

Configuring vFabric Web Server
Instances
21
VMware vFabric Cloud Application
Platform 5.0 21
LoadModule proxy_module "VFWS-INSTALL/httpd-2.2/modules/mod_proxy.so"
LoadModule proxy_http_module "VFWS-INSTALL/httpd-2.2/modules/mod_proxy_http.so"
where VFWS-INSTALL refers to the directory in which you installed vFabric Web Server. If they are not in the file, add
them in the same location as the other LoadModule directives.
Following our example, the directive configurations would be:
LoadModule proxy_balancer_module "/opt/vmware/vfabric-web-server/httpd-2.2/modules/mod_proxy_balancer.so"
LoadModule proxy_module "/opt/vmware/vfabric-web-server/httpd-2.2/modules/mod_proxy.so"
LoadModule proxy_http_module "/opt/vmware/vfabric-web-server/httpd-2.2/modules/mod_proxy_http.so"
The vFabric Web Server configuration file is located in the conf directory of your vFabric Web Server instance (/opt/
vmware/vfabric-web-server/lb-server/conf in our example).
3. In the same httpd.conf file, add the proxy configuration.
Use the <Proxy> element to specify the list of tc Runtime instances and the method of load balancing you want to use.
Then use the ProxyPass and ProxyPassReverse directives to specify the URLs that will use this proxy and load-
balancing (both for requests and responses.) For example:
<Proxy balancer://my-balancer>
BalancerMember http://192.168.0.203:8081 route=instanceOne loadfactor=1
BalancerMember http://192.168.0.203:8082 route=instanceTwo loadfactor=1
ProxySet lbmethod=byrequests
</Proxy>
ProxyPass /my-app balancer://my-balancer/my-app
ProxyPassReverse /my-app http://192.168.0.203:8081/my-app
ProxyPassReverse /my-app http://192.168.0.203:8082/my-app
In the preceding example:
The balancer parameter of the <Proxy> element specifies a unique identifier for this load balancer configuration.
Each tc Runtime instance that is serviced by this load balancer must have its own BalancerMember; the first
parameter of this directive specifies the full IP address (including port number) of the tc Runtime instance.
The route parameter contains session ID information. You later use the value of this parameter in the tc
Runtime configuration file to configure sticky sessions; for now, just ensure that the values are unique for each
BalancerMember.
The loadfactor parameter specifies how much load a particular member carries. If you want each member to carry
the same load, set the numbers equal to each other (as in the example above). If, however, you want one member to work
three times harder than the other, set the load factors to 3 and 1.
Use the lbmethod parameter of the ProxySet directive to specify the load balancing algorithm. The possible values
are as follows:
byrequests: performs weighted request counting. This is the default value.
bytraffic: performs weighted traffic byte count balancing.
bybusyness: performs pending request balancing.
Use the ProxyPass and ProxyPassReverse to specify the context URLs of the application that will be routed to
the tc Runtime instances that you have configured in the load balancing scheme. ProxyPass specifies that when the
vFabric Web Server instance receives a request at the /my-app URL, it routes the request to the load balancer that will
in turn route it to the tc Runtime instance. ProxyPassReverse does the reverse: when the tc Runtime instance sends a
response to a user who is using /my-app, the response appears to come from the vFabric Web Server instance, and not
the tc Runtime instance. Thus the details of the tc Runtime instance are hidden from the user.