Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Use the following steps to configure Apache Httpd as the load balancer for WSO2 products.

  1. Install Apache Httpd using the following command.
    $sudo apt-get install apache2
  2. Enable the following required modules.
    $sudo a2enmod proxy_http
    $sudo a2enmod ssl
    $sudo a2enmod proxy_balancer
  3. Configure to direct the HTTP requests to the worker nodes with load balancing as http://as.wso2.com/<service> via HTTP 80 port.
    $sudo vi /etc/apache2/site-available/wso2.as.com.conf

    Code Block
    languagexml
    <VirtualHost as.wso2.com:80>
    	ServerName as.wso2.com
    
    
    	# disable forward proxy requests
    	ProxyRequests off
    
    
    	<Proxy balancer://wso2.as.com>
    		# Add a member to the load balancing group
    		BalancerMember http://as.wso2.com:9765
    		BalancerMember http://as.wso2.com:9766
    		ProxySet lbmethod=byrequests
    	</Proxy>
    
    
    	ProxyPass / balancer://wso2.as.com/
    	ProxyPassReverse / balancer://wso2.as.com/
    </VirtualHost>
  4. Configure to direct the HTTPS requests to the worker nodes with load balancing as https://as.wso2.com/<service> via HTTPS 443 port.
    $sudo vi /etc/apache2/site-available/wso2.as.com.conf 

    Code Block
    languagexml
    <VirtualHost as.wso2.com:443>
    	ServerName as.wso2.com
    	ProxyRequests off
    
    
    	# creating debug logs
    	LogLevel debug
    
    
    	<Proxy balancer://ssl.wso2.as.com>
    		BalancerMember https://as.wso2.com:9445
    		BalancerMember https://as.wso2.com:9446
    		ProxySet lbmethod=byrequests
    	</Proxy>
    
    
    	ProxyPass / balancer://ssl.wso2.as.com/
    	ProxyPassReverse / balancer://ssl.wso2.as.com/
    
    
    	# enable SSL/TLS for a that virtual host
    	SSLEngine On
    	SSLCertificateFile /etc/apache2/ssl/wrk.crt
    	SSLCertificateKeyFile /etc/apache2/ssl/wrk.key
    
    
    	# enable SSL/TLS for proxy usage in a particular virtual host
    	SSLProxyEngine On
    </VirtualHost>
  5. Configure Apache Httpd to access the management console as https://mgt.as.wso2.com/carbon via HTTPS 443 port.

    Code Block
    <VirtualHost mgt.as.wso2.com:443>
    
    ServerName mgt.as.wso2.com
    ProxyRequests off
    LogLevel debug
    ProxyPass /carbon https://mgt.as.wso2.com:9444/carbon/
    ProxyPassReverse /carbon https://mgt.as.wso2.com:9444/carbon/
    SSLEngine On
    SSLCertificateFile /etc/apache2/ssl/mgt.crt
    SSLCertificateKeyFile /etc/apache2/ssl/mgt.key
    SSLProxyEngine On
    </VirtualHost>
  6. Enable virtual host configurations.
    $sudo a2ensite wso2.as.com.conf
  7. Restart Apache Httpd.
    $sudo /etc/init.d/apache2 restart

...

While creating keys, enter the host name (as.wso2.com or mgt.as.wso2.com) as the Common Name.What is your first and last name?
[Unknown]: mgt.as.wso2.com
…….
Is CN=mgt.as.wso2.com, OU=Eng, O=Wso2, L=Colombo, ST=Colombo, C=SL correct?
[no]: yes