<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Chan Chen Coding...

    JBOSS 4.3.0 EAP Clustering with multiple instances running on Same machine balanced with Apache HTTP Server 2.2.11

    JBOSS 4.3.0 EAP Clustering with multiple instances running on Same machine balanced with Apache HTTP Server 2.2.11 
    In case if you want to run two instances on the same machine, copy production machine to two folders with different node names, Search for ports-01 and Uncomment the following in one node and do not uncomment in another node. If you need third instance also running on the same machine then copy the production folder to another node folder as third instance and uncomment the bleow content and change the ports-01 to ports-02. 
    The above ports change to be done on the file <jboss_home>\jboss-as\server\<node name>\conf\serverl.xml 

    1.                  <mbean code="org.jboss.services.binding.ServiceBindingManager"  
    2.                      name="jboss.system:service=ServiceBindingManager">  
    3.                     <attribute name="ServerName">ports-01</attribute>  
    4.                        <attribute name="StoreURL">${jboss.home.url}/docs/examples/binding-manager/sample-bindings.xml</attribute>  
    5.                        <attribute name="StoreFactoryClassName">  
    6.                     org.jboss.services.binding.XMLServicesStoreFactory  
    7.                     </attribute>  
    8.                 </mbean>  



    Note: 
    1. If you comment <mbean> tag section, JBoss considers the default ports. Example: 8080, 1099 etc.., 
    2. If you specify ports-01, JBoss uses the ports by incrementing the second digit by 1. example: 8180, 1199 etc., 
    3. If you specify ports-02, JBoss uses the ports by incrementing the second digit by 2. example: 8280, 1299 etc.., 
    Port numbers will get increased by 100. 


    JBOSS 4.3.0 EAP Clustering with Apache HTTP Server 2.2.11 

    1. Configure Apache HTTP Server 2.0.63(without SSL) 
    1. Install Apache HTTP Server 2.0.63(without SSL). 

    2. Download the mod_jk-1.2.28-httpd-2.0.52.so from below link 
    http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.28/ 
    (Tried with different mod_jk.so/mod_jk.dll’s but not working) 

    If you are using Apache HTTP server 2.2.11, then use the following binary from the location mentioned below 
    Binary Name: mod_jk-1.2.28-httpd-2.2.3.so 
    Location is http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.28/ 


    2. Update httpd.conf file available under <Apache_HOME>\Apache2\conf with the following lines at the end. 

    # Include mod_jk's 
    # specific configuration file 
    Include conf/mod-jk.conf 

    3. Create a file called mod-jk.conf under <Apache_HOME>\Apache2\conf folder with the following content. 

    # Load mod_jk module 
    # Specify the filename of the mod_jk lib 
    LoadModule jk_module modules/mod_jk.so 
    # Where to find workers.properties 
    JkWorkersFile conf/workers.properties 
    # Where to put jk logs 
    JkLogFile logs/mod_jk.log 
    # Set the jk log level [debug/error/info] 
    JkLogLevel info 
    # Select the log format 
    JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" 
    # JkOptions indicates to send SSK KEY SIZE 
    JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories 
    # JkRequestLogFormat 
    JkRequestLogFormat "%w %V %T" 
    # Mount your applications 
    JkMount /* loadbalancer 
    # You can use external file for mount points. 
    # It will be checked for updates each 60 seconds. 
    # The format of the file is: /url=worker 
    # /examples/*=loadbalancer 
    JkMountFile conf/uriworkermap.properties 
    # Add shared memory. 
    # This directive is present with 1.2.10 and 
    # later versions of mod_jk, and is needed for 
    # for load balancing to work properly 
    JkShmFile logs/jk.shm 
    # Add jkstatus for managing runtime data 
    <Location /jkstatus/> 
    JkMount status 
    Order deny,allow 
    Deny from all 
    Allow from 127.0.0.1 
    </Location> 

    4. Create a file called uriworkermap.properties under <Apache_HOME>\Apache2\conf folder with the following content. 

    # Simple worker configuration file 
    # Mount the Servlet context to the ajp13 worker 
    /jmx-console=loadbalancer 
    /jmx-console/*=loadbalancer 
    /web-console=loadbalancer 
    /web-console/*=loadbalancer 

    5. Create a file called workers.properties under <Apache_HOME>\Apache2\conf folder with the following content and change the host name and Port numbers as required. 

    # Define list of workers that will be used 
    # for mapping requests 
    worker.list=loadbalancer,status 

    # Define Node1 
    # modify the host as your host IP or DNS name. 
    worker.node1.port=8009 
    worker.node1.host=agi-607.agi.com 
    worker.node1.type=ajp13 
    worker.node1.lbfactor=1 
    worker.node1.cachesize=10 

    # Define Node2 
    # modify the host as your host IP or DNS name. 
    worker.node2.port=8009 
    worker.node2.host=agi-678.agi.com 
    worker.node2.type=ajp13 
    worker.node2.lbfactor=1 
    worker.node2.cachesize=10 

    # Load-balancing behaviour 
    worker.loadbalancer.type=lb 
    worker.loadbalancer.balance_workers=node1,node2 
    worker.loadbalancer.sticky_session=1 
    #worker.list=loadbalancer 
    # Status worker for managing load balancer 
    worker.status.type=status 

    2. Configuring JBOSS 4.3.0 EAP – CP02 GA Clustering 
    6. Make sure the Java 1.5.0.11 is installed and the JAVA_HOME in environment variable is set as mentioned below. 
    Example: C:\Program Files\Java\jdk1.5.0_10 
    7. Extract JBOSS 4.3.0 Enterprise Application Platform CP02 build in to Hard disk after downloading it from the location. 
    https://support.redhat.com/jbossnetwork/restricted...platform&version=4.3.0.GA_CP02 

    8. Copy the production folder under jboss-eap-4.3\jboss-as\server folder into another folder named Node1 to create a node instance. 
    9. Add the jvmRoute= <Node name> parameter to the given line as shown in the example in the file server.xml available under jboss-eap-4.3\jboss-as\server\Node2\deploy\jboss-web.deployer folder. 
    Eg: 
    <Engine name="jboss.web" defaultHost="localhost" jvmRoute="Node1"> 

    10. Locate the <attribute> element with a name of UseJK, and set its value to true in the file jboss-service.xml available under jboss-eap-4.3\jboss-as\server\Node2\deploy\jboss-web.deployer\META-INF folder. 
    Eg: 
    <attribute name="UseJK">true</attribute> 

    11. Update the tag <distributable/> in the file “web.xml” available at JBoss_HOME\server\all\deploy\jmx-console.war\WEB-INF\web.xml as given below: 
    Eg: 
    <?xml version="1.0"?> 
    <!DOCTYPE web-app PUBLIC 
    "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
    "http://java.sun.com/dtd/web-app_2_3.dtd"> 

    <web-app> 

    ? update the below line after the above content. 
    <distributable/> 


    12. Uncomment the line #admin=admin in the files web-console-users.properties, jmx-console-users.properties files which are available under folders JBOSS_HOME\server\Node3\deploy\management\console-mgr.sar\web-console.war\WEB-INF\classes and JBoss_HOME\server\Node3\conf\props respectively. 



    13. To disable to JMS clustering, change the following parameter to true in the file clustered-hsqldb-persistence-service.xml or if you are using different database then <XXX>-persistence-service.xml file. 

    <attribute name="Clustered">false</attribute> 
    14. Jboss clustered environment will not support exploded war file. Hence the war file should be placed in the farm folder. But each time you restart the jboss server the deployments get restarted due to which the arispwd.dat and property files will change after deployment. The bold lines to be added to the file web.xml which is available under jboss-eap-4.3\jboss-as\server\node1\deploy\jboss-web.deployer\conf to avoid this problem. 

    <init-param> 
    <param-name>fork</param-name> 
    <param-value>false</param-value> 
    </init-param> 
    <init-param> 
    <param-name>enablepooling</param-name> 
    <param-value>false</param-value> 
    </init-param> 
    <init-param> 
    <param-name>development</param-name> 
    <param-value>false</param-value> 
    </init-param> 
    <init-param> 
    <param-name>xpoweredBy</param-name> 
    <param-value>false</param-value> 
    </init-param> 

    15. Perform the steps from 7 to 10 on machine to for Node2. 
    16. Start the JBOSS using run.bat file from the location jboss-eap-4.3\jboss-as\bin after connecting to command prompt, with the parameter –c and argument <Node>. Example given below. 
    a. From Node1 the command should be executed at the dos prompt under folder jboss-eap-4.3\jboss-as\bin as mentioned below 
    i. Run.bat –c Node1 –b agi-607.agi.com 

    b. From Node2 the command should be executed at the dos prompt under folder jboss-eap-4.3\jboss-as\bin as mentioned below 
    i. Run.bat –c Node2 –b agi-678.agi.com 
    17. Verify the cluster by logging into the jmx console using the following with user admin and password as admin. 
    http://agi-607.agi.com/ 
    The following screens will display. 


    Figure 1: JBOSS console page. 

    Figure 2: Username admin and password as admin(as given in the jmx-console-users.properties file in the JBoss_HOME\server\Node3\conf\props folder) 


    Figure 3: Screen after log into jmx console002 




    Figure 4: Service=DefaultPartition under JBOSS section in the jmx console screen. 


    Figure 5: Service=DefaultPartition under JBOSS section in the jmx console screen. Clustered machines shall be viewed in the current view. 

    18. Place the .war file in the folder jboss-eap-4.3\jboss-as\server\Node2\farm, after starting the two nodes. 
    19. Check if the deployment is pushed into the both nodes under farm folder and accessible with the default port number. 
    Example: 
    a. http://agi-607:8080/Admin/wflogin.jsp 
    b. http://agi-678:8080/Admin/wflogin.jsp 


    Note: Any one approach to be chosen to configure the datasource either section 3 or section 4. 
    3. Oracle 10g JDBC Source configuration(Alternative database) 
    1. Copy the JDBC driver ojdbc14.jar from the oracle installation folder Oracle\product\10.1.0\Client_1\jdbc\lib in to the jboss-eap-4.3\jboss-as\server\node1\lib 

    2. JBoss AS connects to relational databases via datasources. These datasource definitions can be found in the jboss-as\server\production\deploy directory. The datasource definitions are deployable just like WAR and EAR files. The datasource files can be recognized by looking for the XML files that end in *-ds.xml. 

    3. Configure default data source to Oracle by following the below steps 

    a) Copy the oracle-ds.xml file from jboss-as\docs\examples\jca to jboss-as\server\Node3\deploy folder. 
    b) Modify as mentioned below 
    <datasources> 
    <local-tx-datasource> 
    <jndi-name>DefaultDS</jndi-name> 
    <connection-url>jdbcracle:thin:@192.167.104.22:1521rcl</connection-url> 
    <!-- 

    Here are a couple of the possible OCI configurations. 
    For more information, see http://otn.oracle.com/docs/products/oracle9i/doc_l...lease2/java.920/a96654/toc.htm 

    <connection-url>jdbcracleci:@youroracle-tns-name</connection-url> 
    Or 
    <connection-url>jdbcracleci:@(description=(address=(host=youroraclehost)(protocol=tcp)(port=1521))(connect_data=(SERVICE_NAME=yourservicename)))</connection-url> 

    Clearly, it’s better to have TNS set up properly. 
    --> 
    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class> 
    <user-name>jbossuser</user-name> 
    <password>jbosspass</password> 
    <!-- Uses the pingDatabase method to check a connection is still valid before handing it out from the pool --> 
    <!--valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name--> 
    <!-- Checks the Oracle error codes and messages for fatal errors --> 
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name> 
    <!-- sql to call when connection is created 
    <new-connection-sql>some arbitrary sql</new-connection-sql> 
    --> 

    <!-- sql to call on an existing pooled connection when it is obtained from pool - the OracleValidConnectionChecker is prefered 
    <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql> 
    --> 

    <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml --> 
    <metadata> 
    <type-mapping>Oracle9i</type-mapping> 
    </metadata> 
    </local-tx-datasource> 

    </datasources> 

    Note: If multiple database schemas to be configured then just replicate the data sources block again by changing the credentials. 

    4. Oracle 10g JDBC Source Configuration(Using shared database) 

    1. Create a database user with name jbossuser and password as jbosspass. 

    2. Copy the JDBC driver ojdbc14.jar from the oracle installation folder Oracle\product\10.1.0\Client_1\jdbc\lib in to the jboss-eap-4.3\jboss-as\server\node1\lib 

    3. JBoss AS connects to relational databases via datasources. These datasource definitions can be found in the jboss-as\server\production\deploy directory. The datasource definitions are deployable just like WAR and EAR files. The datasource files can be recognized by looking for the XML files that end in *-ds.xml. 

    4. Configure default data source to Oracle by following the below steps 

    a) Copy the oracle-ds.xml file from jboss-as\docs\examples\jca to jboss-as\server\Node3\deploy folder. 
    b) Modify as mentioned below 
    <datasources> 
    <local-tx-datasource> 
    <jndi-name>DefaultDS</jndi-name> 
    <connection-url>jdbcracle:thin:@192.167.104.22:1521rcl</connection-url> 
    <!-- 

    Here are a couple of the possible OCI configurations. 
    For more information, see http://otn.oracle.com/docs/products/oracle9i/doc_l...lease2/java.920/a96654/toc.htm 

    <connection-url>jdbcracleci:@youroracle-tns-name</connection-url> 
    or 
    <connection-url>jdbcracleci:@(description=(address=(host=youroraclehost)(protocol=tcp)(port=1521))(connect_data=(SERVICE_NAME=yourservicename)))</connection-url> 

    Clearly, its better to have TNS set up properly. 
    --> 
    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class> 
    <user-name>jbossuser</user-name> 
    <password>jbosspass</password> 
    <!-- Uses the pingDatabase method to check a connection is still valid before handing it out from the pool --> 
    <!--valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name--> 
    <!-- Checks the Oracle error codes and messages for fatal errors --> 
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name> 
    <!-- sql to call when connection is created 
    <new-connection-sql>some arbitrary sql</new-connection-sql> 
    --> 

    <!-- sql to call on an existing pooled connection when it is obtained from pool - the OracleValidConnectionChecker is prefered 
    <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql> 
    --> 

    <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml --> 
    <metadata> 
    <type-mapping>Oracle9i</type-mapping> 
    </metadata> 
    </local-tx-datasource> 

    </datasources> 

    Note: If multiple database schemas to be configured then just replicate the data sources block again by changing the credentials. 

    5. The JMS service in the JBoss AS uses relational databases to persist its messages. For improved performance, you should change the JMS service to take advantage of the external database. To do that, you need to replace the file jboss-as/server/production/deploy/jboss-messaging.sar/clustered-hsqldb-persistence-service.xml with a file oracle-persistence-service.xml in jboss-as/docs/examples/jms folder and restart your server. 

    6. Next, change the jboss-as/server/production/conf/standardjbosscmp-jdbc.xml file so that the fk-constraint property is true. That is needed for all external databases we supported bythe JBoss Enterprise Application Platform. This file configures the database connection settings for the EJB2 CMP beans deployed in the JBoss AS. 

    <fk-constraint>true</fk-constraint> 

    7. The Java Persistence API (JPA) entity manager can save EJB3 entity beans to any backend database. Hibernate provides the JPA implementation in JBoss AS. In order for Hibernate to work correctly with alternative databases, JBOSS recommend you configure the database dialect in the jboss-as/server/production/deploy/ejb3.deployer/META-INF/persistence.properties file. Add the following line below #hibernate.dialect=org.hibernate.dialect.HSQLDialect. 

    hibernate.dialect=org.hibernate.dialect.Oracle10gDialect 

    Perform the entire section 3 on both the nodes of the cluster. 


    -----------------------------------------------------
    Silence, the way to avoid many problems;
    Smile, the way to solve many problems;

    posted on 2012-03-21 13:22 Chan Chen 閱讀(821) 評論(0)  編輯  收藏 所屬分類: Linux

    主站蜘蛛池模板: 亚洲人精品亚洲人成在线| 亚洲中文无码a∨在线观看| 人妻仑刮八A级毛片免费看| 黄网址在线永久免费观看 | 亚洲性线免费观看视频成熟| 中文字幕精品亚洲无线码一区应用| 伊人婷婷综合缴情亚洲五月| jzzijzzij在线观看亚洲熟妇| 99久久成人国产精品免费| 亚洲精品老司机在线观看| 一本一道dvd在线观看免费视频| 精品无码免费专区毛片| 亚洲免费观看网站| 国产成人免费高清激情视频| 久久夜色精品国产噜噜亚洲a| 日韩a级无码免费视频| 亚洲成AV人片在| 最近免费字幕中文大全视频| 在线亚洲午夜片AV大片| 四虎免费久久影院| 97超高清在线观看免费视频| 亚洲精品在线网站| 国产福利免费在线观看| A国产一区二区免费入口| 亚洲精品视频观看| 国产成人免费手机在线观看视频 | 免费在线视频一区| 精品人妻系列无码人妻免费视频| 无码国产精品一区二区免费式影视| 久久精品国产精品亚洲下载 | 自拍偷自拍亚洲精品被多人伦好爽| 国产午夜亚洲精品| 亚洲色图综合在线| 亚洲免费二区三区| 蜜桃传媒一区二区亚洲AV| 国产亚洲av片在线观看16女人 | 亚洲永久中文字幕在线| 免费观看午夜在线欧差毛片| 二个人看的www免费视频| 亚洲免费中文字幕| 亚洲综合伊人久久综合|