Followers

Saturday, January 18, 2014

Setting up Redirection from Oracle HTTP Server Load Balancer to Internet Information Services

Generally, in the absence of a standard load balancer, you can configure an Oracle HTTP Server to load balance web applications deployed on multiple IIS Servers. Complete this procedure to redirect requests from the Oracle HTTP Server that is used as the load balancer to the IIS Servers that the following components use:
  • Performance Management Architect
  • Financial Management
  • FDM
  • Strategic Finance
  • Oracle Hyperion Data Relationship Management, Fusion Edition
The steps in the following procedure assume the following:
  • EPM System component, for example, Financial Management, is deployed on two IIS Servers.
  • Some EPM System components, for example, Shared Services and EPM Workspace, are deployed on WebLogic Server.
  • EPM System components are configured to use Oracle HTTP Server as the web server.
    The logical web application for EPM System components deployed on IIS Server is defined as http://epm.myCompany.com:19000.

  To configure redirection from Oracle HTTP Server:
  1. Using a text editor, open EPM_ORACLE_INSTANCE/httpConfig/ohs/config/OHS/ohs_component/httpd.conf.
  2. Ensure that the following entry is not commented out. If the entry is missing, add it.
    LoadModule proxy_balancer_module “${ORACLE_HOME}/ohs/modules/mod_proxy_balancer.so”
    
  3. Ensure that the mod_header module is loaded by including or uncommenting the following directive.
    LoadModule headers_module “${ORACLE_HOME}/ohs/modules/mod_headers.so”
    
  4. Create proxy balancer definition for EPM System components (Financial Management, Performance Management Architect, FDM, and Strategic Finance) hosted on IIS Servers by adding definitions similar to the following:
    You must create a Proxy balancer definition for each EPM System component deployed on the IIS Server. Within the Proxy balancer definition, you must add a BalanceMember directive for each IIS Server that hosts EPM System components.
    <Proxy balancer://iisappshfm>
        BalancerMember http://myIISserver1.mycompany.com:80/hfm 
           loadfactor=1 route=1 
        BalancerMember http://myIISserver2.mycompany.com:80/hfm 
           loadfactor=1 route=2
        ProxySet lbmethod=bytraffic
    </Proxy>
    <Proxy balancer://iisappshfmlcmserver>
        BalancerMember http://myIISserver1.mycompany.com:80/hfmlcmserver 
           loadfactor=1 route=1 
        BalancerMember http://myIISserver2.mycompany.com:80/hfmlcmserver 
           loadfactor=1 route=2
        ProxySet lbmethod=bytraffic
    </Proxy> 
    <Proxy balancer://iisappshfmsmartviewprovider>
        BalancerMember http://myIISserver1.mycompany.com:80/hfmsmartviewprovider 
           loadfactor=1 route=1 
        BalancerMember http://myIISserver2.mycompany.com:80/hfmsmartviewprovider 
           loadfactor=1 route=2
        ProxySet lbmethod=bytraffic
    </Proxy> 
    <Proxy balancer://iisappshfmapplicationservice>
        BalancerMember http://myIISserver1.mycompany.com:80/hfmapplicationservice 
           loadfactor=1 route=1 
        BalancerMember http://myIISserver2.mycompany.com:80/hfmapplicationservice 
           loadfactor=1 route=2
        ProxySet lbmethod=bytraffic
    </Proxy>
    <Proxy balancer://iisappshfmlcmservice>
        BalancerMember http://myIISserver1.mycompany.com:80/hfmlcmservice 
           loadfactor=1 route=1 
        BalancerMember http://myIISserver2.mycompany.com:80/hfmlcmservice 
           loadfactor=1 route=2
        ProxySet lbmethod=bytraffic
    </Proxy>
    <Proxy balancer://iisappsdrm>
        BalancerMember http://myIISserver1.mycompany.com:80/drm-web-client
        loadfactor=1 route=1
        BalancerMember http://myIISserver2.mycompany.com:80/drm-web-client
        loadfactor=1 route=2
    ProxySet lbmethod=bytraffic
    </Proxy>
    
    In the preceding example, values such as iisappshfm and iisappshfmlcmserver are references and not URLs. myIISserver1.myCompany.com and myIISserver2.myCompany.com are the names of the IIS Server host machines.
  5. Enable sticky load balancing by adding directives similar to the following. These sample directives instruct Oracle HTTP Server to insert a cookie that keeps track of the route for sticky load balancing of the proxy balancers you defined in step 4.
    Header add Set-Cookie "ORA_EPM_IIShfm_ROUTE_ID=iisappshfm .%{BALANCER_WORKER_ROUTE}e; path=/hfm ;" env=BALANCER_ROUTE_CHANGED
    Header add Set-Cookie "ORA_EPM_IIShfmofficeprovider_ROUTE_ID=iisappshfmofficeprovider.%{BALANCER_WORKER_ROUTE}e; path=/hfmofficeprovider;" env=BALANCER_ROUTE_CHANGED
    Header add Set-Cookie "ORA_EPM_IIShfmlcmserver_ROUTE_ID=iisappshfmlcmserver.%{BALANCER_WORKER_ROUTE}e; path=/hfmlcmserver;" env=BALANCER_ROUTE_CHANGED
    Header add Set-Cookie "ORA_EPM_IIShfmsmartviewprovider_ROUTE_ID=iisappshfmsmartviewprovider.%{BALANCER_WORKER_ROUTE}e; path=/hfmsmartviewprovider;" env=BALANCER_ROUTE_CHANGED
    Header add Set-Cookie "ORA_EPM_IIShfmapplicationservice_ROUTE_ID=iisappshfmapplicationservice.%{BALANCER_WORKER_ROUTE}e; path=/hfmapplicationservice;" env=BALANCER_ROUTE_CHANGED
    Header add Set-Cookie "ORA_EPM_IIShfmlcmservice_ROUTE_ID=iisappshfmlcmservice.%{BALANCER_WORKER_ROUTE}e; path=/hfmlcmservice;" env=BALANCER_ROUTE_CHANGED
    Header add Set-Cookie "ORA_EPM_IIS_ROUTE_ID=iisapps.%{BALANCER_WORKER_ROUTE}e; path=/;" env=BALANCER_ROUTE_CHANGED
    Header add Set-Cookie "BALANCEID= iisappsdrm.%
    {BALANCER_WORKER_ROUTE}e; path=/drm-web-client;" env=BALANCER_ROUTE_CHANGED
    
  6. Replace the existing ProxyPass directive for EPM System components (Financial Management, Performance Management Architect, FDM, Oracle Hyperion Data Relationship Management, Fusion Edition, and Strategic Finance) deployed on IIS Server with definitions similar to the following:
    ProxyPass /hfm balancer://iisappshfm/ stickysession=ORA_EPM_IIShfm_ROUTE_ID nofailover=On
    ProxyPassReverse /hfm http://epm.myCompany.com:19000/hfm 
    ProxyPreserveHost ON
    
    ProxyPass /hfmofficeprovider balancer://iisappshfmofficeprovider/ stickysession=ORA_EPM_IIShfmofficeprovider_ROUTE_ID nofailover=On
    ProxyPassReverse /hfmofficeprovider http://epm.myCompany.com:19000/hfmofficeprovider
    ProxyPreserveHost ON
    
    ProxyPass /hfmlcmserver balancer://iisappshfmlcmserver/ stickysession=ORA_EPM_IIShfmlcmserver_ROUTE_ID nofailover=On
    ProxyPassReverse /hfmlcmserver http://epm.myCompany.com:19000/hfmlcmserver 
    ProxyPreserveHost ON
    
    ProxyPass /hfmsmartviewprovider balancer://iisappshfmsmartviewprovider/ stickysession=ORA_EPM_IIShfmsmartviewprovider_ROUTE_ID nofailover=On
    ProxyPassReverse /hfmsmartviewprovider http://epm.myCompany.com:19000/hfmsmartviewprovider 
    ProxyPreserveHost ON
    
    ProxyPass /hfmapplicationservice balancer://iisappshfmapplicationservice/ stickysession=ORA_EPM_IIShfmapplicationservice_ROUTE_ID nofailover=On
    ProxyPassReverse /hfmapplicationservice http://epm.mycompany.com:19000/hfmapplicationservice 
    ProxyPreserveHost ON
    
    ProxyPass /hfmlcmservice balancer://iisappshfmlcmservice/ stickysession=ORA_EPM_IIShfmlcmservice_ROUTE_ID nofailover=On
    ProxyPassReverse /hfmlcmservice http://epm.mycompany.com:19000/hfmlcmservice 
    ProxyPreserveHost ON
    
    ProxyPass /drm-web-client balancer://iisappsdrm stickysession=BALANCEID nofailover=Off
    ProxyPassReverse /drm-web-client http://epm.mycompany.com:19000/drm-web-client
    ProxyPassReverse /drm-web-client http://epm.mycompany1.com:19000/drm-web-client
    
  7. Save and close httpd.conf.

No comments:

Post a Comment