Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 IBM Content Manager v8.4.2 High Availability configuration using Oracle Database 10g Release 2 with Oracle Real Application Clusters and IBM WebSphere Application Server v6.1 with IBM WebSphere Application Server Network Deployment on Sun Solaris 10 SPARC 64-bit Jin Pei JP Hu Oracle HA/DR Tester, System Verification Test IBM China Development Lab, Beijing, China Holger Koenig IBM Content Manager Center of Excellence IBM Boeblingen Development Lab, Germany Steve Soria Lead Architect for Content Manager HA/DR solutions IBM Silicon Valley Lab, San Jose, California, USA Copyright© IBM (2004, 2009). This information contained within this document is the property of IBM. The above notice and this paragraph must be included on all copies of this document that are made. Copyright © 2004, 2009 IBM Page 1 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Table of Contents 1. SPECIAL NOTICES ............................................................................................................................4 2. ABOUT THIS DOCUMENT..................................................................................................................5 3. PREFACE...........................................................................................................................................6 3.1 3.2 3.3 3.4 4. DESIGN CONSIDERATIONS FOR A HIGHLY AVAILABLE TOPOLOGY .............................................9 4.1 4.2 5. PLANNING AN HA ENVIRONMENT FOR CONTENT MANAGER ................................................................... 11 CONTENT MANAGER PRODUCT PRE-REQUISITES FOR HA ENVIRONMENTS................................................... 12 SCENARIO DESCRIPTION...............................................................................................................15 5.1 6. IBM’S CAVEATS REGARDING HIGHLY AVAILABLE ENVIRONMENTS .............................................................. 7 AUDIENCE AND PREREQUISITE SKILLS ......................................................................................................... 8 WHAT WE HOPE YOU WILL LEARN ............................................................................................................ 8 COMMENTS, CRITIQUES, AND CRITICISM .................................................................................................. 8 TWO NODE SCENARIO ......................................................................................................................... 15 HARDWARE SETUP..........................................................................................................................17 6.1 SERVER ................................................................................................................................................ 17 6.2 STORAGE ............................................................................................................................................. 17 6.2.1 Internal Disk ............................................................................................................................ 17 6.2.2 Fiber Channel attached storage (IBM DS4200)................................................................. 17 6.2.3 Network attached storage (IBM N3700)............................................................................. 19 6.3 NETWORK ............................................................................................................................................ 20 7. OPERATING SYSTEM CONFIGURATION ........................................................................................21 7.1 BASIC SOLARIS INSTALLATION ................................................................................................................ 21 7.2 KERNEL OPTIONS .................................................................................................................................. 22 7.3 CREATE USERS AND GROUPS ................................................................................................................ 22 7.4 CREATE USER PROFILE ........................................................................................................................... 23 7.5 STORAGE CONFIGURATION ................................................................................................................... 25 7.5.1 ASM Volume .......................................................................................................................... 26 7.5.2 Oracle Cluster Register and Voting Disk............................................................................. 27 7.5.3 Mount Point............................................................................................................................ 28 7.6 NFS CONFIGURATION .......................................................................................................................... 28 7.7 USER EQUIVALENCE USING SSH ............................................................................................................. 29 8. ORACLE CLUSTERWARE INSTALLATION.........................................................................................31 8.1 PRE-INSTALL VALIDATION ...................................................................................................................... 31 8.2 INSTALLATION ....................................................................................................................................... 32 8.2.1 Oracle Clusterware 10.2.0.1................................................................................................. 32 8.2.2 Applying Patch Set 10.2.0.4 ................................................................................................. 32 8.2.3 Post-Install Validation ............................................................................................................ 33 8.2.4 Starting and Stopping Oracle Clusterware........................................................................ 33 9. ORACLE DATABASE SOFTWARE INSTALLATION............................................................................33 9.1 PRE-INSTALL VALIDATION ...................................................................................................................... 33 9.1.1 Oracle Database 10.2.0.1 .................................................................................................... 33 9.1.2 Applying Patch Set 10.2.0.4 ................................................................................................. 34 9.2 AUTOMATIC STORAGE MANAGEMENT CONFIGURATION ......................................................................... 34 Copyright © 2004, 2009 IBM Page 2 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 9.3 10. 2009.12.28 ORACLE RAC ENVIRONMENT ACCEPTANCE TESTING............................................................................... 35 WEBSPHERE APPLICATION SERVER................................................................................................35 10.1 WEBSPHERE APPLICATION SERVER NETWORK DEPLOYMENT INSTALLATION .............................................. 35 10.2 IBM HTTP SERVER AND IBM HTTP SERVER PLUG-IN INSTALLATION........................................................ 43 10.3 APPLYING WEBSPHERE FIXPACKS ....................................................................................................... 53 10.4 WEBSPHERE APPLICATION SERVER PROFILE MANAGEMENT ................................................................... 54 10.4.1 WebSphere Application Server Deployment Manager Installation ............................... 54 10.4.2 Federation to WebSphere Application Server Network Deployment Cluster ............... 60 10.4.3 Create WebSphere Application Server Network Deployment Cluster .......................... 64 10.4.4 Service Messaging Database.............................................................................................. 68 10.4.5 Add Web Server Definition................................................................................................... 68 10.4.6 SSL configuration for http server (Optional) ....................................................................... 71 10.4.7 IP Sprayer Definition .............................................................................................................. 71 10.4.8 WebSphere Application Server and WebSphere Application Server Network Deployment environment acceptance testing............................................................................. 71 11. IBM CONTENT MANAGER INSTALLATION .....................................................................................72 11.1 INSTALLATION OF IBM CONTENT MANAGER ........................................................................................ 72 11.2 DATABASE CREATION USING DBCA TOOL ......................................................................................... 78 11.3 LISTENER AND TNSNAMES CONFIGURATION ...................................................................................... 79 11.4 IBM CONTENT MANAGER CONFIGURATION ....................................................................................... 80 11.5 WEBSPHERE DATA SOURCE PRETEST CONFIGURATION ......................................................................... 105 11.6 ADDITIONAL CONFIGURATION OF RESOURCE MANAGER ................................................................... 107 11.6.1 Modify Oracle JDBC Path .................................................................................................. 107 11.6.2 Modify JDBC Data Sources ................................................................................................ 108 11.6.3 Start WebSphere Network Deployment Cluster .............................................................. 110 11.6.4 Modify Resource Manager Properties for SSL .................................................................. 110 11.6.5 IP Sprayer Definition ............................................................................................................ 111 11.6.6 Updating Messaging Database ........................................................................................ 112 11.6.7 Client Configuration............................................................................................................ 126 11.6.8 Library Server Monitor ......................................................................................................... 127 12. VALIDATION AND TEST ................................................................................................................129 12.1 VALIDATING ACTIVE COMPONENTS.................................................................................................. 129 12.1.1 Node Application and Database (Library Server, Resource Manager Database).... 129 12.1.2 Application Server (Resource Manager) ......................................................................... 129 12.1.3 HTTP Server (Resource Manager) ...................................................................................... 131 12.2 IBM CONTENT MANAGER COMPONENT FAILURES............................................................................. 131 12.2.1 Database (Library Server, Resource Manager Database) ............................................ 131 12.2.2 Application Server (Resource Manager) ......................................................................... 132 12.2.3 HTTP Server (Resource Manager) ...................................................................................... 132 13. APPENDIX ....................................................................................................................................132 13.1 13.2 13.3 REFERENCE LINKS ............................................................................................................................ 132 LIST OF FIGURES............................................................................................................................... 132 LIST OF TABLES................................................................................................................................. 134 Copyright © 2004, 2009 IBM Page 3 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 1. Special Notices The information contained in this publication was derived under specific operating and environmental conditions and is distributed on an "as is" basis without any warranty either expressed or implied. IBM specifically disclaims any implied warranties of merchantability or fitness for any particular purpose. IBM assumes no responsibility for any errors that may appear in this document. The use of this information or the implementation of any of these techniques are the responsibility of the user and depends on the user's ability to evaluate and integrate them into the user's operational environment. While each item might have been reviewed by IBM for accuracy in a specific situation, there is no guarantee that the same or similar results will be obtained elsewhere. Users attempting to adapt these techniques to their own environments do so at their own risk. The information contained in this document is subject to change without any notice. IBM reserves the right to make any such changes without obligation to notify any person of such revision or changes. IBM makes no commitment to keep the information contained herein up to date. Information about Oracle RAC technology and products contained in this document was obtained from publically available Oracle product documentation at http://docs.oracle.com/. References in this publication to IBM products, programs, or services do not imply that IBM intends to make these available in all countries in which IBM operates. Any reference to an IBM licensed program in this publication is not intended to state or imply that only IBM's program may be used. Any functionally equivalent program may be used instead. Equivalent product, program, or services that do not infringe any of the intellectual property rights of IBM may be used instead of the IBM product, program, or service. The evaluation and verification of operation in conjunction with other products, except those expressly designated by IBM, are the responsibility of the user. IBM may have patents or pending patent application covering the subject matter in this document. The furnishing of this document does not give you license to these patents. Any information about non-IBM ("vendor") products in this document has been supplied by the vendor and IBM assumes no responsibility for its accuracy or completeness. IBM, the IBM logo, ibm.com, AIX, DB2, Tivoli, and WebSphere are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at http://www.ibm.com/legal/copytrade.shtml. Sun, Sun Microsystems, the Sun logo, Java, MySQL, Netra, Solaris, Sun Blade, Sun Fire, Sun Ray, Sun Ultra, SunSpectrum, Sun StorEdge, StorageTek, The Network is the Computer, all trademarks and logos that contain Sun, Solaris, or Java, and certain other trademarks and logos appearing in this document, are trademarks or registered trademarks of Sun Microsystems, Inc. or its subsidiaries in the United States and other countries. All SPARC trademarks are trademarks or registered trademarks of SPARC International, Inc. in the United States and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. UNIX is a registered trademark of The Open Group in the United States and other countries. Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Other company, product, or service names may be trademarks or service marks of others. © Copyright International Business Machines Corporation 2004, 2009. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Copyright © 2004, 2009 IBM Page 4 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 2. About this Document This white paper provides hands-on guidance for how to install and set up an IBM® DB2® Content Manager V8.4.2 system on Sun™ Solaris™ 10 (SPARC® 64-bit platform) using Oracle® Database 10g Release 2 in an Oracle® Real Application Cluster (RAC) and deploying an active-active high availability environment. For the Content Manager resource manager (“RM”) web application, the document shows how to configure a managed cell with two nodes using IBM® WebSphere® Application Server Network Deployment and one cluster running two RM application server instances (cluster members) using IBM® WebSphere® Application Server. The topics covered in this white paper include the following: ● In-depth installation and configuration recommendations for the Content Manager library server (“LS”) and RM databases ● In-depth installation and configuration recommendations for the resource manager application running in a cluster with WebSphere Application Server, including how to use WebSphere Application Server Network Deployment clustering capabilities. Version Description Author(s) Date 0.1 Initial Draft Jin Pei JP Hu 2009.11.05 0.2 First complete draft Steven Soria 2009.11.23 0.3 Review revisions Jin Pei JP Hu 2009.11.28 0.4 Second complete draft Steven Soria 2009.12.03 0.5 Final Draft Jin Pei JP Hu Steven Soria 2009.12.28 Special thanks to Khalid Alodhaibi and Cataldo Mega for technical advice, comments, reviews etc. in many areas of this document. Copyright © 2004, 2009 IBM Page 5 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 3. Preface This publication is intended to help content management solution designers understand how to enable highly available content management solutions on officially supported platforms using the IBM® DB2® Content Manager Version 8 Release 4 Modification Release 2 product components. It serves as a reference example on how to set up the IBM® DB2® Content Manager stack in a highly available configuration and outlines the relationships between the components in the stack. Due to the fact that Content Manager product components are a hybrid of databases, database applications, web applications, and thick client applications, it is obvious that the reference configuration presented makes strong use of the platform/operating system specific cluster support and the high availability (“HA”) capabilities built into the database and web application server products. HA environments are designed to eliminate single points of failure (“SPOF”) throughout the application stack. In this whitepaper, we accomplish this by leveraging the HA capabilities and services in Oracle® Database 10g Release 2, IBM® WebSphere® Application Server, and the clustering software support provided by the underlying operating systems. Despite the fact that the Content Manager high availability concepts discussed here may be applicable to many different operating systems, the actual Content Manager high availability environment that is implemented depends heavily on the individual hardware and software components used, thus making a direct comparison of the different operational scenarios impossible. Implementations will vary and some concepts or details of how we configured our environment may not apply to another specific environment or configuration. We strongly encourage anyone who intends to set up a high availability configuration with these or any other products to employ experienced, professionals who understand the technical complexities inherent in such environments. Setting up and maintaining any type of clustering environment is expensive, time consuming, complex, and very prone to error. With that said, it should be obvious that it is imperative to thoroughly test the overall setup. Setup of an HA environment requires a deep understanding of the various HA, storage, and networking technologies involved in addition to familiarity of the underlying applications. Clustering solutions cannot be considered an out-of-box solution. In fact, building and maintaining clustering solutions requires a range of skills, tasks, resources, and extensive testing in order to failover resources properly to alternate nodes. We strongly encourage anyone who intends to set up a high availability configuration with these or any other products to employ experienced professionals who understand the technical complexities inherent in such environments. Malfunctions of the HA environment can often be attributed to insufficient testing of the various resources that might become unavailable at some point in time. We recognize that there are many possible different configuration variants and that setting up such an environment correctly is complex. For existing Content Manager customers who wish to modify an existing Content Manager architecture to take advantage of the architecture described in this document, or for customers with requirements that are incompatible with the architecture described in this document, such services are not available as part of IBM standard product support. It is, therefore, highly recommended to use consulting services, such as IBM® Global Business Services®, for high availability planning, testing, implementation, maintenance, and support for your Content Manager product. IBM standard product support for HA configurations is strictly limited to the HA reference configuration and Content Manager product version described in this document, as well as the method of installing and configuring Content Manager on the HA reference configuration for the stated Content Manager product version. Although beyond the scope of this document, IBM standard product support also includes the application of maintenance releases (“fixpacks”) to the HA reference configuration and Content Manager product version described herein. The remainder of this document assumes you will be performing a clean installation of Content Manager, in an environment that has no existing Content Manager installations or databases, whether partially installed, installed but not running, or running. Please be aware that IBM standard support does not include troubleshooting or advising on Sun, Oracle, physical storage, network topologies, or other non-IBM high availability infrastructure components. For problems with IBM-branded products used in your highly available infrastructure which are not part of Content Manager, you must contact IBM support specific to those IBM products. Copyright © 2004, 2009 IBM Page 6 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 3.1 2009.12.28 IBM’s Caveats Regarding Highly Available Environments Clustering should be left to experts. This document is not intended to be a generic high availability support statement of system-specific cluster services. Content Manager is an enterprise-class application that customers might want to install and set up in a high availability configuration. Installing this kind of application in a clustered environment is not an out-of-thebox solution. Customers have the choice of installing Content Manager in a great number of configurations and, as such, IBM has not tested all potential configurations on all of the various hardware platforms given the considerable number of possible configurations of Content Manager in a high availability environment. IBM has published a number of white papers as reference material for those interested in high availability configurations. Each of these white papers targeted a different operating system and environment, with the main objective of each to describe a tested, high availability implementation with detailed configuration procedures. These configurations might require a separate agreement with Global Business Services (or another IBM certified vendor certified to provide high availability solutions in a Content Manager context) for support. In general, proper design, installation, configuration, fail-over testing of Content Manager, and support for running Content Manager in an HA environment needs to be considered as a complex endeavor potentially prone to errors. Therefore, again, IBM advises the end-user and organization implementing an HA system to contract with an authorized consulting organization certified to provide support of high availability environments. IBM standard product support is strictly limited to the reference configuration and Content Manager product version described in this document, as well as the method of installing and configuring the reference configuration for the stated Content Manager product version. Although beyond the scope of this document, IBM standard product support also includes the application of maintenance releases (“fixpacks”) to the reference configuration and Content Manager product version described herein. For existing Content Manager customers who wish to modify an existing Content Manager architecture to take advantage of the architecture described in this document, or for customers with requirements that are incompatible with the architecture described in this document, such services are not available as part of IBM standard product support. It is, therefore, highly recommended to use consulting services, such as Global Business Services, for high availability planning, testing, implementation, maintenance, and support for your Content Manager product. Setting up any type of clustering environment is expensive, time consuming, complex, and very prone to error. With that said, it is imperative to thoroughly test the overall setup. We consider it ill advised for any entity to set up a clustering environment unless they already have a competent staff solely dedicated to testing and maintaining such an environment. HA environments require considerable investment in additional hardware, skilled people, and time to create a proper test environment that is separate from a production environment. Our experience has been that many entities attempt to set up a clustered environment, but failed to budget correctly for such projects. In other words, these companies try to implement HA environments without allocating a reasonable amount of resources. We believe that, among the keys to success, are: • Allocating appropriate amounts of resources when implementing a clustered environment can make for a more successful outcome. • Working closely with an HA qualified vendor. The most common sources of failure are: • Not testing the various potential scenarios before going into production: Production is the wrong time to find out your cluster does not work as expected. • Failure to properly budget sufficient funds for an HA project, both capital & expense. • Poor scheduling and rushed delivery time frame that prevents proper testing. • Poor Change Control procedures within the organization. • Failure of having skilled personnel competent with clustering technologies Copyright © 2004, 2009 IBM Page 7 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris • 2009.12.28 Not having a Test Lab. As a reminder, the information in this white paper is intended to complement, not to substitute the Content Manager for Multiplatform product documentation provided by IBM. See the publications section of the IBM Programming Announcement for Content Manager for more information about what publications are considered to be product documentation. Further, the information in this white paper about Oracle and Sun products are not intended to substitute for or replace their product documentation or information and materials they provide about their offerings. You most certainly want to refer to and take appropriate guidance from the vendor regarding installation, configuration and usage of such products. Ensure you have the proper license(s) for all products and components referenced in this document before proceeding. In the interest of full disclosure, IBM competes with Oracle in many areas of our product portfolios. 3.2 Audience and prerequisite skills Throughout this paper, it is presumed that the reader has a good understanding of the business requirements for high availability in an Content Manager environment. If available, operating system-specific knowledge of all software components used for this solution will also help to better understand the technical details described. Given the complexity of the Content Manager product itself and the many prerequisite applications, it is almost impossible to document all variations of possible Content Manager high availability scenarios. Therefore, while we will refer at times to alternative configurations or choices we could have made in setting up our HA environment, we will primarily focus on details of the specific HA reference configuration we set up. We will also not try to fully describe how to configure the related and required co-products, but rather focus on details relevant to the configuration of the chosen Content Manager high availability environment. 3.3 What We Hope you will learn After you read this paper, we would like for you to understand: 3.4 • the basics of a design approach for implementing high availability using Content Manager and its coproducts on Sun Solaris and Oracle Database in the specific environment we chose • components in production • how high availability is achieved using the Content Manager product components • general concepts for planning for an HA environment • general concepts for installing an HA environment Comments, Critiques, and Criticism Reader comments and critiques regarding this report are welcome. Please send your thoughts, comments, critique, or other feedback to [email protected]. Copyright © 2004, 2009 IBM Page 8 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 4. Design Considerations for a Highly Available topology At the IBM Information On Demand 2009 conference, statistics were presented highlighting the tremendous explosion of content: 15 petabytes of data generated per day, 200 billion emails per day, and 80% of that from unstructured content. Significantly, the leading cause of this data explosion is no longer due to human-generated content, but rather machine-generated content. This has naturally led to huge investments in content management systems, transforming ever-increasing volumes of content into genuine assets. With the increasing need of businesses to leverage this information efficiently and effectively, one of the key challenges of an information-led transformation has been to implement cost-effective measures that ensure this new asset, this content, remains available. But what does it mean to be “highly available”, and what does it mean in the context of an enterprise application such as Content Manager? The answers to these questions are highly dependent on the goals of the organization requiring a highly-available solution. Companies must have a clear understanding of what they expect to achieve from such configurations before embarking upon the implementation of a solution. For example, it may be acceptable for some to limit the definition of availability to end-users simply being able to access mission-critical systems, that the servers are “up” and responding to requests, even if the responses generate errors. For others, availability may additionally require that end-users be able to retrieve business data from mission-critical systems, even if the data is not necessarily the most recent version of that data. Or, perhaps availability means that endusers can not only access systems and retrieve data, but that that data must be accurate, current, and reliable. Availability may also mean that recovery is transparent to the end-user, perceived as “continuous availability”, or that the end-user may experience some down time but that recovery capability does exist, with the full capabilities of the system and its data restorable. The graph below illustrates the tradeoffs between cost to implement versus time to recover, representing the sophistication of the solution with respect to the evaluated criticality of business data and applications. The benefits of a highly available solution must be weighed against the expense, time to implementation, and personnel expertise in designing the solution. Certainly, these are not trivial considerations. Copyright © 2004, 2009 IBM Page 9 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Broadly, there are three approaches toward solving the availability problem. It is common to combine multiple methods to achieve higher levels of availability. Coordinated backup and recovery The general objective of a coordinated backup and recovery strategy is to ensure the system can holistically be restored such that all normal operations are resumed with no data loss, a state of consistency, within a recovery time that fulfills established mean-time-to-recovery (“MTTR”) objectives, and to a point-in-time closest to the time of failure. Complete backups must be taken for all file systems relevant to the applications and data that are mission-critical. If databases or offline storage, such as IBM® Tivoli® Storage Manager or shared storage, are utilized, they too will require a backup strategy. There are often many strategies for backup policies, with considerations including the use of operating system, vendor-provided, or third-party backup tools, the frequency and scheduling of backups that seek to balance end-user usage patterns with MTTR requirements, and the appropriate ratio of incremental to full backup versus storage costs required to archive the backups and compliance requirements dictating how long the backups must be kept. In cases where mission-critical business data resides on multiple machines and/or storage devices, coordination of backups is required to ensure consistency and reliability of systems and data. Duplicates of the backups may be stored in a different geography to ensure their survival in the event of some disaster at the primary site. A backup and recovery strategy is generally considered the “poor man’s high availability” due to its manual-intensive nature and lack of flexibility. This means it is likely to take a day or longer to fully recover from an outage. However, it provides low total-costof-ownership (TCO) because it can generally be implemented using existing hardware, operating system tools, and simple scripting. Disaster Recovery (“DR”) This availability strategy is intended to protect against failure at a site-wide or data center level. The idea is that a secondary site is standing by, ready to take over from the primary site in the event a natural or catastrophic disaster, such as an earthquake, fire, or flood, renders the primary inaccessible. Because such a disaster is assumed to occur over a large area, primary and standby sites are typically geographically disparate from one another. The secondary site is typically an exact duplicate of the primary, even in terms of hardware, number of servers, hardware capability, storage capacity, and so on. Storage-level replication, cluster server replication, database replication, or other technologies provide data duplication at the secondary site. To ensure the secondary site is as closely matched as possible to the primary, hardware mirroring or software-based synchronous replication is generally preferred such that a write is not complete until the data is written to both the primary and Copyright © 2004, 2009 IBM Page 10 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 secondary site. The drawback, of course, is that this extends response times due to the synchronicity of every operation. Thus, MTTR in a DR scenario often has an inverse relationship to performance. Observe also that DR focuses on mirroring or data duplication from one site to another; it does not generally deal with processes. In classical DR, when a failure occurs at the primary site, the secondary site must be manually transitioned and an integrity/data verification process completed. Some cluster service providers can perform the failover automatically via a heartbeat server that is remote from both the primary and standby site. Even in this scenario, however, there is often a manual verification process since the data on the standby site is not guaranteed to be insync with the primary. An individual business must assess at what point it is appropriate to restore services to end-users. Recovery time for a DR strategy is typically in terms of hours and is considered a high availability solution. Although typically an inter-site recovery strategy, it is common for DR strategies to be implemented within a single site as well, and thus it becomes more of a high availability solution than a true DR solution. High Availability (“HA”) Whereas DR focuses on site-wide disaster, an HA strategy deals with the reality that machines fail, even within a single site or data center. It deals with two primary requirements: that hardware failures are recovered in terms of minutes or even seconds, not hours or days, and that recovery is automatic and nearly transparent to end-users. In an HA configuration, multiple servers are ready to takeover in case another fails in what is known as a server cluster. Depending on the underlying technology, cluster members can be all active (“active-active” configurations), or one member can be active while all others are passive (“active-passive” configurations). Cluster members are often referred to as nodes and are monitored via heartbeat mechanisms between each node in the cluster. Although the exact logic varies, the general idea is that when a heartbeat is “missed”, that node is marked as unavailable and incoming requests are automatically re-routed to other available nodes. This is accomplished through floater IP addresses (“virtual IP’s”) than the clustering software automatically remaps to the physical IP’s of other nodes. Additionally, HA configurations make use of shared storage, with identical mount points on each node. Applications are installed at identical locations on each node along with operating system user equivalence. Mission-critical data is placed on the shared storage device to allow all nodes to access the same copy of data. This allows for very fast failover time because everything is “ready to go” on each node: there is no data integrity issue between nodes because it’s on shared storage and there is no need to reconfigure applications because common mount points, virtual IP’s, and operating system user equivalence make this transparent. Typically, in-flight operations (those transactions which were executing during a node failure) return an error and need to be retried. Depending on the underlying technology and if all nodes are active, a load balancing can strategy can be put in place to improve scalability and hardware utilization. Observe that cluster nodes can be physically separate machines, logical partitions (“LPAR’s”), or virtualized servers. Combining strategies As stated, it is very common to combine multiple strategies. “Cluster farms” combine HA and DR technologies, benefiting from the transparency of a single machine failure, while also providing a solution for data center or site-wide failure. Shops that use an HA+DR strategy may sometimes choose not to implement a backup strategy since multiple DR sites generally suffice. However, others consider backups to be a fail-safe method in the event all other strategies fail. All of these strategies can also be employed as the underlying infrastructure of a cloud computing environment. 4.1 Planning an HA environment for Content Manager For this whitepaper, we have chosen to focus on installing and configuring Content Manager in an HA environment. In doing so, we are prioritizing the need for content stored in a Content Manager repository to be available to end-users, as part of a critical business process that utilizes content as an information asset. The most common, and therefore disruptive, source of downtime is at the machine-level. Various types of failure at the machine-level are common, whether it be from hard drive failure, network controller failure, or motherboard and CPU failure. The need to guard against such common single points of failure (“SPOF”) and maintain availability warrants the investment and skills development in an HA solution. While DR is a viable alternative to HA, the costs involved in duplication of both server and storage components better serve a site-based recovery strategy as opposed to a single-server recovery strategy. Benefitting from the use of shared storage and reduced failover times allows the HA configuration implemented here to result in a robust IBM Content Manager server environment, minimizing the likelihood that any SPOF prevents critical access to content. Content Manager is an enterprise-class product which utilizes two or more Content Manager server components, Copyright © 2004, 2009 IBM Page 11 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 one or more database servers, one or more IBM WebSphere servers, and potentially many C-based or Web-based client applications. Providing sufficient redundancies to mitigate the impact of SPOF’s is not a trivial task and requires significant up-front planning, design, and testing to ensure success. Therefore, you should consider this whitepaper a guide that describes one possible HA solution. Ultimately, the HA capabilities of Content Manager rest primarily on the HA infrastructure itself. The intent of this whitepaper is not to impose a single HA solution, but merely to present one that is fully-tested and supported, and represents what we believe to be a ‘best practices’ HA architecture for Content Manager. If, after reviewing this whitepaper, you conclude that another HA solution would best meet your requirements, IBM Services stands ready to assist you. Remember that only the HA solution described in this document, with the specific method of installation and configuration performed, is supported through IBM standard support for HA configurations. Otherwise, IBM standard support covers only runtime behavior that is re-producible in a non-HA environment. Although Content Manager client applications are the end-user interface to the Content Manager servers, clients typically do not contain mission-critical business data or server applications. Clients are typically deployed to many workstations, thereby implicitly redundant, or distributed via web application servers, which generally also have a method of providing high availability. For client-side configuration or other files, a simple backup policy is generally sufficient. On the other hand, without Content Manager server availability, there can be no access to content and client applications are useless. Thus, this whitepaper does not address client-side applications but rather focuses on the mission-critical pieces, the Content Manager servers. This whitepaper will also not address technologies external to Content Manager servers, particularly with respect to the content stores themselves. Because there are many options for content storage, such as local file system or IBM® Tivoli Storage Manager, Network Attached Storage (NAS) or IBM® General Parallel File System® (GPFS), IBM® Tivoli Storage Manager replication or Direct Access Storage Device (DASD) mirroring, customers are advised to consult the documentation or manufacturer of their respective storage devices to assess appropriate availability solutions. In this whitepaper, we make no assumption as to the location or availability infrastructure of content, so long as it is available and servable by the Content Manager Resource Manager. 4.2 Content Manager product pre-requisites for HA environments Note that this document assumes that your environment meets all normal Content Manager product pre-requisite hardware, software, version, and patch-level requirements as stated in IBM DB2 Content Manager v8.4.2 product documentation. In addition, the HA environment described in this document uses other Oracle products not required for a normal, non-HA Content Manager installation. Specifically, this HA configuration requires the use of Oracle® Clusterware and Oracle® Automatic Storage Management (ASM). Non-HA Content Manager installations do not need to install these Oracle products or components. Customers should ensure they have the proper Oracle licenses prior to the use of any of these Oracle products or components. Unless otherwise stated, all other Content Manager hardware and software pre-requisites are the same as those listed in IBM DB2 Content Manager v8.4.2 product documentation. Copyright © 2004, 2009 IBM Page 12 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 In the diagram above, we identify the major Content Manager components and illustrate various potential SPOF’s. As stated, this whitepaper will not address Content Manager client applications although typical strategies are shown in the box at far left: clustering technology, mirroring or replication, virtualization, backup and recovery, etc. The box at far right shows the Content Manager resource manager application server. Content Manager has long supported WebSphere Application Server Network Deployment and this continues to be the strategy recommended in this whitepaper as well for the Content Manager resource manager web application. In this whitepaper, you will configure the Content Manager resource manager web application in a WebSphere Application Server Network Deployment environment with redundant IBM HTTP Servers. Although beyond the scope of this whitepaper, customers may choose to implement a similar strategy for their web-based Content Manager client applications. Also beyond the scope of this document, the Tivoli Storage Manager cluster shown above is optional but can be used to provide content replication and Tivoli Storage Manager server redundancy in the event of failure of a single Tivoli Storage Manager server. In the center are the Content Manager library server and Content Manager resource manager database servers. For the databases, you will configure Oracle stack technologies to provide a highly available, active-active database configuration. In choosing to use Oracle RAC for database failover, our view is that the database server is to the Content Manager server what the Content Manager server is to client applications. In other words, just as client applications are useless if the Content Manager servers are not up and running, so too are the Content Manager servers useless if the database server is not up and running. Thus, at the most basic level, the database is the critical availability component for a Content Manager server environment. While it is true that cluster server providers can be configured to monitor a process, they cannot monitor the integrity of the database itself. Some cluster servers monitor only the operating system, storage subsystems, and network communication, which won’t account for dead database server processes at all. The results can be imprecise and unreliable. Database vendorprovided HA technology, therefore, provides the lowest level of granularity for determining whether a database and all its intrinsic components represent an available state. For this reason, we have chosen to utilize Oracle stack technologies. To implement a solution that provides availability for the Content Manager library server database, Content Manager resource manager database, and Content Manager resource manager application, known collectively as the Content Manager server components, while also minimizing total-cost-of-ownership, this whitepaper uses Copyright © 2004, 2009 IBM Page 13 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 software technologies available in the pre-requisite products already required by Content Manager v8.4.2. Specifically, we will use Oracle Clusterware and ASM technologies, shipped as part of Oracle Database 10g Release 2 – Enterprise Edition, to provide Oracle database failover. We’ll use Storage Area Network (SAN) storage with Fibre Channel as the shared storage for database files and NAS storage as the shared storage for Content Manager resource manager Local Area Network-based Object Server (LBOS) data, or content. Lastly, we’ll use WebSphere Application Server Network Deployment to manage a cluster of WebSphere Application Server and HTTP servers for Content Manager resource manager application availability. Although beyond the scope of this whitepaper, we recommend the use of an IP sprayer in front of the HTTP servers to load balance incoming requests to the Content Manager resource manager application. We also recommend that SAN and NAS storage each employ RAID mirroring and controller redundancy, as well as multiple Fibre Channel adapters in each database server node, to eliminate additional SPOF’s. The diagram above focuses and illustrates the basic premise of our database HA configuration. Oracle RAC is capable of active-active configurations for all nodes in the cluster. Our HA reference configuration will take advantage of this to provide increased scalability. In this scenario, the Content Manager library server and resource manager will be in the same database under separate schemas. Both will be active on all nodes, able to service requests. The Oracle listener provides load balancing by default, which can be disabled or modified by the Oracle DBA. There are opportunities for the DBA to refine workload further by creating multiple TNS aliases. Refer to Oracle product documentation for more details on Oracle listener configuration. The diagram does not show redundancies for the Fibre Channel or Ethernet controllers, although we recommend them. Notice that Content Manager library server runtime binaries will be copied to each member in the cluster. While it is possible to place the LS binaries on shared storage, we recommend against that for optimal performance and redundancy. Note that it is not required for the LS and RM to be in the same database. If your Content Manager library server and Content Manager resource manager databases will be on separate Oracle database servers (or if you have multiple RM’s), then you will trivially create multiple Oracle RAC instances for each LS and RM database. While we do not describe how to do this in this whitepaper, the steps for creating a RAC-enabled database are here and during Content Manager installation you would simply specify the unique RM connection string instead of a shared LS connection string. Copyright © 2004, 2009 IBM Page 14 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 The Oracle Clusterware component performs heartbeats with other cluster members based on the private interconnects between the nodes (eth1 pairs in the diagram above). Again, we recommend installing redundant Ethernet controllers wherever possible to eliminate SPOF’s. Refer to Oracle product documentation for more details. When a heartbeat is missed, Oracle RAC fails-over marks the node as unavailable, performs recovery, and re-routes incoming workload to the remaining active nodes. Since all nodes are active, failover time is reduced since no file system checks or mounts need to be performed. Note that in-flight transactions will fail and an error returned to the application. In most cases, Content Manager clients will need to reconnect to the LS since the initial Content Manager connection is stateful. Because the Content Manager library server monitor is native PL/SQL, it is fully participatory in RAC semantics. It will run again at its next scheduled time on an available, active node. Oracle® Text is also fully supported by Oracle RAC with the same failover semantics as the database. Please see Oracle product documentation for more details. 5. Scenario Description IBM DB2 Content Manager is an enterprise class application, which consists of several specialized components. The core components of every Content Manager implementation are the library server and one or many resource managers. The library server itself is mostly a database application, all its logic is implemented within the database (currently as stored procedures) and its data is stored within database tables and views. The library server implements functions such as authentication and authorization, data modeling, document routing, search and the storage of descriptive information for each object (so called metadata). The library server can also maintain relationships between different objects and can provide referential integrity. The resource manager is responsible for storing the actual content (files). Currently the resource manager logic is implemented as a web application, running in a web application server. The content is typically stored to local disk, but can be stored also to storage devices managed by IBM Tivoli Storage Manager or as blobs in the database. The resource manager also maintains internal information, which is again stored in a relational database. 5.1 Two Node Scenario In the scenario used for this document, we wanted to implement a high availability Content Manager environment using the services provided by Oracle database and WebSphere Application Server. The goal was to implement all components in an active-active manner, meaning that the software stack is always started and ready to process requests on all nodes. For Oracle database, such services are provided by Oracle Clusterware and the Oracle RAC feature. For WebSphere Application Server, this is provided with the Network Deployment version. As you can see in Figure 1: Overall Scenario (2 Node Configuration), we have implemented a two node configuration. The yellow and green horizontal bars are software components running active-active on our two server nodes, named cmsun17 and cmsun19. The orange box, the WebSphere Application Server Deployment Manager, exists only on the node cmsun17, but since it is only doing administration task, there is no need for high availability. The last missing software component is the IBM® HTTP Server. Ideally you would place an IP/HTTP Sprayer in front of the server, to get perfect load balancing. In our scenario, the IBM HTTP Server is started on both nodes, but only one will be used at a time. Between all the components, load balancing occurs between both nodes. For example, the Oracle listener for the database ICMNLSDB on node cmsun17, will distribute load to both nodes. The same applies to the IBM HTTP Server, which will load balance to both nodes in the WebSphere Application Server cluster. Copyright © 2004, 2009 IBM Page 15 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris Copyright © 2004, 2009 IBM 2009.12.28 Page 16 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 1: Overall Scenario (2 Node Configuration) Both servers are connected by two independent networks, one public which is also used by all remote client connections, and one private which is exclusively reserved for Oracle RAC heartbeat and cache fusion. Both server also have access to storage devices, The fiber channel attached IBM DS4100 used to store an raw device(OCR, Voting Disk), Oracle ASM disks and the objects from the resource manager component. Content Manager required two databases, one for the library server and one for the resource manager. Using Oracle as the database, Content Manager provides the option to create both as independent databases, or to store both into the same Oracle database separated by individual schemes. Content Manager provides different templates for both configurations. In our configuration we chose the second option, storing the data for both the library server and the resource manager into the same Oracle database (Content Manager calls this a “shared database”). This database will be created in an Oracle RAC environment and will have a dedicated listener associated with it. 6. Hardware Setup This chapter summarizes the hardware we have used to setup Content Manager, including the servers, network and storage. We understand that there is a wide range of options available, and there are many different ways to implement such a solution. We have chosen to use a configuration with just 2 servers, each running all components of Content Manager. 6.1 Server We have used two identical SUN240 machine. Here are the most important characteristics of the SUN240: • Processors: 2x SUNW,UltraSPARC-IIIi sparcv9 processor operates at 1280 MHz • Hard Disk: 2x ST373307LSUN72G 70 GB • Memory: 4GB • Swap Memory: 4GB • Fiber Channel Adapter: EMULEX 10N8620 FC HBA • Network Cards: Dual 1 GB ethernet card The SUN240 is connected via Gigabit Ethernet to the public network, and two Ethernet switches handle the network traffic. Also included into SUN240 is a Fiber Channel Switch, which handles the connection to the IBM® TotalStorage® DS4200. 6.2 6.2.1 Storage Internal Disk We used one internal disk to store the operating system as well as installed software. This information is NOT shared between the nodes in the cluster. Also on this internal disk, we placed the Paging Space. 6.2.2 Fiber Channel attached storage (IBM DS4200) Attached to all nodes in our cluster is an IBM DS4200, a storage subsystem, which is connected via redundant fiber channel connections to the SUN240. In our scenario we will use the DS4200 to store Oracle® Cluster Registry (OCR), Voting Disk and Oracle database related files. The benefit of using fiber attached storage is its resilience, which in most configurations includes redundant communication paths and redundant disks (RAID). Copyright © 2004, 2009 IBM Page 17 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 The configuration of your storage subsystem is a very important factor for the performance of Content Management solution. The number of operations per second and the throughput of your storage subsystem directly influence the performance of your database. Frequently, individual table spaces, database log files, recovery files etc. are separated onto individual disk arrays, to achieve high performance and no blocking access. In our scenario, we kept the configuration of the DS4200 simple. Our DS4200 was filled with 16x1TB hard disks, which have been configured into a single RAID-5 array of 15 disks and one hot spare. This is certainly not the perfect configuration for performance but easy to setup and maintain. On this array we created 6 logical drives that are shared by both two nodes (in our case , cmsun17 and cmsun19). Among these are 6 logical drives: one for storing the OCR and Voting Disk, and five volumes to be used as Oracle ASM volumes. This can easily be done by using the IBM® System Storage™ Manager. # luxadm -e port /devices/pci@1d,700000/lpfc@1/fp@0,0:devctl CONNECTED /devices/pci@1d,700000/lpfc@1,1/fp@0,0:devctl NOT CONNECTED # luxadm -e dump_map /devices/pci@1d,700000/lpfc@1/fp@0,0:devctl Pos Port_ID Hard_Addr 0 10c00 0 1 20e00 0 Port WWN Node WWN Type 200200a0b84249bf 200200a0b84249be 0x0(Disk device) 202400a0b83abfce 200400a0b83abfce 0x0(Disk device) This command will list the WWPN available on your Solaris servers. Depending on your hardware configuration, you might get several WWPNs listed. In our case, the WWPNs are: • Node1 (CMSUN17) : 200200a0b84249bf • Node2 (CMSUN19) : 202400a0b83abfce With this information, define your logical drives on your storage server and map them to the WWPNs. Below Table 1: Logical Drive definitions on DS4200, contains our definitions: Name Size Host OS Mapping CMSUN17_19_LUN2 10GB Solaris 200200a0b84249bf 202400a0b83abfce CMSUN17_19_LUN3 30GB Solaris 200200a0b84249bf 202400a0b83abfce CMSUN17_19_LUN4 30GB Solaris 200200a0b84249bf 202400a0b83abfce CMSUN17_19_LUN5 20GB Solaris 200200a0b84249bf 202400a0b83abfce CMSUN17_19_LUN6 20GB Solaris 200200a0b84249bf 202400a0b83abfce CMSUN17_19_LUN7 160GB Solaris 200200a0b84249bf 202400a0b83abfce Table 1: Logical Drive definitions on DS4200 Figure 2: DS4200 Configuration shows the definitions in the System Storage Manager configuration GUI. You can see the 2 defined logical drives and its mapping to the host group CMSUN17_19. Note that in this screenshot, the mapping has been defined to two nodes: cmsun17 and cmsun19 as mentioned above. Copyright © 2004, 2009 IBM Page 18 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 2: DS4200 Configuration When you do your storage system configuration, the most important questions are: • How many logical drives will I need? • How large should the logical drives be? You will need at least two logical drives, one (CMSUN17_19_LUN2) to store the OCR and Voting Disk. Here we will use the raw device instead of OCFS2 to store these two components. Another one is for an ASM volume. If you want to separate the database onto several disk groups, you might want to define additional ASM volumes. In our configuration, 10GB are a reasonable size and it will later store just the OCR, the cluster voting disks. The content of this file system will not grow. In contrast, the left 5 logical volumes were used as ASM volumes will contain the database files (tablespaces etc.) which will grow. Please see your IBM representative for sizing information for a given number of documents and workload to better size your ASM volumes and database files. 6.2.3 Network attached storage (IBM N3700) To store the actual documents, Content Manager can use several storage options, for example file systems or Tivoli Storage Manager (for Tivoli Storage Manager Setup see http://publib.boulder.ibm.com/infocenter/cmgmt/v8r4m0/index.jsp?topic=/com.ibm.administeringcm.doc/mosh00 64.htm and then follow the instructions for your system). It requires the administrator to create the mount point and define it to Content Manager. In our sample configuration, we have used a Network File System (NFS) file system hosted on an IBM N3700 as storage volume. On your NAS Server, create the volume to be exported. Figure 3: IBM N3700 Volume Definition shows the values we have used. We created a volume of 50GB and then defined the NFS exports. Copyright © 2004, 2009 IBM Page 19 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 3: IBM N3700 Volume Definition When you define the NFS exports, you basically have to define the following settings: Path: /vol/Lbosdata Read-Write access for the following hosts: • cmsun17.cn.ibm.com • cmsun19.cn.ibm.com Root access for the following hosts: • cmsun17.cn.ibm.com • cmsun19.cn.ibm.com Security: UNIX System (sys) 6.3 Network In our scenario, each server requires two physical network interfaces (NIC) and a total of 3 IP addresses. The servers are accessible via a public network, and are interconnected via a private network. The public network is used by client applications to access the servers services and for maintenance usage. The private network should be used exclusively for cluster interconnect operations, such as Heartbeat and Cache fusion on both nodes. On the public network, two IP addresses are required per server. One will be the “real” IP address of the server. The second IP address on the public network is a virtual IP address and will be managed by Oracle Clusterware. Both of these IP addresses must be on the same subnet. On the private network, one IP address is required per server, and is typically in a non-routed subnet such as 192.168.x.x for example. Below Table 2: IP Configuration shows the network settings we have used in our sample: Hostname IP address Used for cmsun17 9.123.112.176 Public Network Copyright © 2004, 2009 IBM Page 20 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 cmsun17-vip 9.123.112.233 Public Network for VIP cmsun17-private 192.168.0.176 Private Network cmsun19 9.123.112.175 Public Network cmsun19-vip 9.123.112.232 Public Network for VIP cmsun19-private 192.168.0.175 Private Network Table 2: IP Configuration It is important that all host names can be resolved. For the physical and virtual IP address on the public subnet, you should add them into your DNS. For the private interconnect, you can optionally add them to your /etc/hosts files on both nodes in cluster environment. Below is the sample for /etc/hosts files: $ cat /etc/hosts # Internet host table # 127.0.0.1 localhost 9.123.112.175 cmsun19 9.123.112.232 cmsun19-vip 192.168.0.175 cmsun19-private cmsun19-private.cn.ibm.com 9.123.112.176 cmsun17 9.123.112.233 cmsun17-vip 192.168.0.176 cmsun17-private cmsun17-private.cn.ibm.com cmsun19.cn.ibm.com loghost cmsun19-vip.cn.ibm.com cmsun17.cn.ibm.com loghost cmsun17-vip.cn.ibm.com 7. Operating System Configuration This section contains information on how to prepare Sun Solaris 10 Operating System for the user of Content Manager. It describes necessary changes to your Solaris configuration to run Content Manager and Oracle RAC. Note all the steps described in this section must be done on all nodes participating in the cluster! 7.1 Basic Solaris Installation For our setup, we installed SunOS™ 5.10 SPARC 64-bit. During the installation we've selected default options, including the package selection. During the installation, make sure that you assign sufficient swap space. A rule of thumb is to create a swap partition of at least the size of your physical memory. To build the Oracle RAC environment on SunOS 10 some of the necessary package needs to be applied on all nodes after operating system default installation. Firstly we should download the J2SE_Solaris_10_Recommended.zip as patch for Sun Solaris 10 from Sun official website (http://sunsolve.sun.com/show.do?target=patches/patch-access) # unzip J2SE_Solaris_10_Recommended.zip # ./install_cluster After patch installation run the following command to make a verification for patch apply: # pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibm SUNWlibms SUNWsprot SUNWtoo Copyright © 2004, 2009 IBM Page 21 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 SUNWi1of SUNWxwfnt system SUNWarc Lint Libraries (usr) system SUNWbtool CCS tools bundled with SunOS system SUNWhea system SUNWi1of ISO-8859-1 (Latin-1) Optional Fonts system SUNWlibC Sun Workshop Compilers Bundled libC system SUNWlibm Math & Microtasking Library Headers & Lint Files (Usr) system SUNWlibms Math & Microtasking Libraries (Usr) system SUNWsprot Solaris Bundled tools system SUNWtoo system SUNWxwfnt X Window System platform required fonts SunOS Header Files Programming Tools 7.2 Kernel Options Oracle Database requires a number of kernel parameters to be set for the proper operation of its software. Please review the recommended values for your environment in Oracle product documentation, following the instructions for your operating system. The following lists the settings we've used in our environment. Add these settings to /etc/system using a text editor and rebooting nodes to take effect. set noexec_user_stack=1 set semsys:seminfo_semmni=100 set semsys:seminfo_semmns=1024 set semsys:seminfo_semmsl=256 set semsys:seminfo_semvmx=32767 set shmsys:shminfo_shmmax=21474836479 set shmsys:shminfo_shmmin=1 set shmsys:shminfo_shmmni=100 set shmsys:shminfo_shmseg=10 7.3 Create Users and Groups Both Oracle software and Content Manager, require certain operating system users and groups to exist. For Oracle, typically two groups (oinstall and dba), and one user (oracle) are required. Content Manager requires the group ibmcmgrp and the user ibmcmadm. It is important to create the users and groups in an identical way, sharing the same numerical ids and names, on all nodes in the cluster. Refer to Oracle product documentation for the operating system users and groups required. The settings below, in Table 3, are what we used for our environment. User or Group Role ID Group: oinstall Access to Oracle libraries 100 Group: dba Default DBA for Oracle 101 Copyright © 2004, 2009 IBM Page 22 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Group: ibmcmgrp All Content Manager users 102 User: oracle Oracle software owner 100 User: ibmcmadm Content Manager configuration owner 101 Table 3: Users and Groups The following commands will create these definitions. It uses the group ids 100 through 102 for the groups and the user ids 100 and 101. Note that the user ibmcmadm becomes a member of the oinstall group, because this user must be able to read Oracle libraries. Run them on each node: # groupadd oinstall # groupadd dba # mkdir -p /export/home/oracle # useradd -g oinstall -G dba -d /export/home/oracle oracle # chown oracle:oinstall /export/home/oracle # chown oracle:oinstall /oracle # passwd oracle New Password: Re-enter new Password: passwd: password successfully changed for oracle # groupadd ibmcmgrp # mkdir -p /export/home/ibmcmadm # useradd -g ibmcmgrp -G oinstall -d /export/home/ibmcmadm ibmcmadm # chown ibmcmadm:ibmcmgrp /export/home/ibmcmadm # passwd ibmcmadm New Password: Re-enter new Password: passwd: password successfully changed for ibmcmadm Finally, verify that the user nobody exists on your servers: # id nobody uid=60001(nobody) gid=60001(nobody) 7.4 Create user profile In this section, we will define a number of environment variables to $HOME/.profile for those oracle, ibmcmadm, root users individually on all nodes. For ROOT User: Copyright © 2004, 2009 IBM Page 23 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 IBMCMROOT=/opt/IBM/db2cmv8 export IBMCMROOT ORACLE_HOME=/oracle/product/10.2/database export ORACLE_HOME ORA_CRS_HOME=/oracle/product/10.2/crs export ORA_CRS_HOME LD_LIBRARY_PATH=/oracle/product/10.2/database/lib32:/oracle/product/10.2/database/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH PATH=$PATH:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:$IBMCMROOT/bin export PATH JDBCPATH=/oracle/product/10.2/database/jdbc/lib export JDBCPATH WAS_HOME=/was/IBM/WebSphere/AppServer export WAS_HOME For ORACLE User: umask 022 ORACLE_SID=icmnlsdb1 export ORACLE_SID ORACLE_BASE=/oracle export ORACLE_BASE ORACLE_HOME=/oracle/product/10.2/database export ORACLE_HOME ORA_CRS_HOME=/oracle/product/10.2/crs export ORA_CRS_HOME LD_LIBRARY_PATH=/oracle/product/10.2/database/lib32:/oracle/product/10.2/database/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH PATH=$PATH:/usr/bin:/usr/sbin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin export PATH DISPLAY=9.123.112.176:1.0 export DISPLAY For IBMCMADM User: We also need to complete some minor changes on the profile of the ibmcmadm user id. This user is used during configuration time to run a few Oracle scripts, and therefore needs two environment settings. If you forget to add these settings, the Content Manager Configuration Wizard will fail to load Oracle® Call Interface (OCI) libraries and will be unable to connect to your database. Copyright © 2004, 2009 IBM Page 24 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 IBMCMROOT=/opt/IBM/db2cmv8 export IBMCMROOT ORACLE_HOME=/oracle/product/10.2/database export ORACLE_HOME ORA_CRS_HOME=/oracle/product/10.2/crs export ORA_CRS_HOME LD_LIBRARY_PATH=/oracle/product/10.2/database/lib32:/oracle/product/10.2/database/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH PATH=$PATH:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:$IBMCMROOT/bin export PATH 7.5 Storage Configuration The first external storage we want to attach is an IBM DS4200, which is a fiber channel attached storage server. Previously we have already defined six volumes on the DS4200 and mapped them to the WWPN of our servers. In our case, we did have redundant fiber channel connections between the SUN240 and the DS4200 storage server. With Solaris, driver is integrated, and multipath support is build into the fiber channel adapter driver. The DS4200 can be assigned to each server with steps in previous chapter; We can find six disks on each server After OS fresh installation, disk status will look similar to: # format Searching for disks...done c2t200300A0B84249BFd2: configured with capacity of 10.00GB c2t200200A0B84249BFd3: configured with capacity of 30.00GB c2t200300A0B84249BFd4: configured with capacity of 30.00GB c2t200300A0B84249BFd6: configured with capacity of 20.00GB c2t200200A0B84249BFd5: configured with capacity of 20.00GB c2t200300A0B84249BFd7: configured with capacity of 159.99GB AVAILABLE DISK SELECTIONS: 0. c1t0d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424> /pci@1c,600000/scsi@2/sd@0,0 1. c1t1d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424> /pci@1c,600000/scsi@2/sd@1,0 2. c2t200200A0B84249BFd0 <IBM-1814 FAStT-2916 cyl 35838 alt 2 hd 64 sec 64> /pci@1d,700000/lpfc@1/fp@0,0/ssd@w200200a0b84249bf,0 3. c2t200200A0B84249BFd2 <IBM-1814 FAStT-2916 cyl 5118 alt 2 hd 64 sec 64> /pci@1d,700000/lpfc@1/fp@0,0/ssd@w200200a0b84249bf,2 4. c2t200200A0B84249BFd3 <IBM-1814 FAStT-2916 cyl 15358 alt 2 hd 64 sec 64> Copyright © 2004, 2009 IBM Page 25 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 /pci@1d,700000/lpfc@1/fp@0,0/ssd@w200200a0b84249bf,3 5. c2t200200A0B84249BFd4 <IBM-1814 FAStT-2916 cyl 15358 alt 2 hd 64 sec 64> /pci@1d,700000/lpfc@1/fp@0,0/ssd@w200200a0b84249bf,4 6. c2t200200A0B84249BFd5 <IBM-1814 FAStT-2916 cyl 10238 alt 2 hd 64 sec 64> /pci@1d,700000/lpfc@1/fp@0,0/ssd@w200200a0b84249bf,5 7. c2t200200A0B84249BFd6 <IBM-1814 FAStT-2916 cyl 10238 alt 2 hd 64 sec 64> /pci@1d,700000/lpfc@1/fp@0,0/ssd@w200200a0b84249bf,6 Each server has access to two different types of hard disk storage devices: internal disk, fiber channel attached storage (IBM DS4200). We used the different storage types for different components of the Content Manager software stack. Specially, the objects from the resource manager component will be stored to Network File System (IBM N3700), which is both mounted by cmsun17 and cmsun19. We used different storage types for different components of the Content Manager software stack. Table 4: Storage Allocation is the storage allocation plan used as fiber channel attached storage (IBM DS4200). All of the disks were enable as RAW device for ASM and OCR, Voting Disk usage, this allocation can be retrieved from both nodes. Hostname CMSUN 17 CMSUN 19 Path Size Purpose Diskgroup /dev/rdsk/c2t200200A0B84249BFd2 10G OCR , Voting Disk N/A /dev/rdsk/c2t200300A0B84249BFd3 30G ASM Disk /dev/rdsk/c2t200200A0B84249BFd4 30G ASM Disk /dev/rdsk/c2t200300A0B84249BFd5 20G ASM Disk /dev/rdsk/c2t200200A0B84249BFd6 20G ASM Disk /dev/rdsk/c2t200200A0B84249BFd7 160G ASM DIsk DG1 RECOVERYDEST BACKUP Table 4: Storage Allocation 7.5.1 ASM Volume ASM disk which will be the member of ASM Disk Group is made as character device (raw device) in our environment. Solaris support this raw interface for each disk by default. So in this step we can directly seek and use the raw device like /dev/rdsk/c2t2*, when create the ASM Disk Group in the later section. Following is to define proper ownership as oracle user and oinstall group for those raw devices on both nodes which will be specified during ASM instance creation from the Oracle® Universal Installer (OUI). On Node1 (CMSUN17) # chown oracle:oinstall /dev/rdsk/c2t200300A0B84249BFd3s6 # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd4s6 # chown oracle:oinstall /dev/rdsk/c2t200300A0B84249BFd5s6 # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd6s6 # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd7s6 On Node2 (CMSUN19) Copyright © 2004, 2009 IBM Page 26 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 # chown oracle:oinstall /dev/rdsk/c2t200300A0B84249BFd3s6 # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd4s6 # chown oracle:oinstall /dev/rdsk/c2t200300A0B84249BFd5s6 # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd6s6 # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd7s6 7.5.2 Oracle Cluster Register and Voting Disk The Oracle Cluster Register (OCR) and Voting Disk will also reside in a raw device in our environment. Below is to show how to configure / allocate the raw device for OCR and Voting Disk, The partition s1 is for OCR and partition s2 is for Voting Disk For /dev/rdsk/c2t200200A0B84249BFd2 Total disk cylinders available: 5118 + 2 (reserved cylinders) Part Tag Flag Cylinders Size 2.00GB Blocks 0 unassigned wm 0 - 1023 (1024/0/0) 4194304 1 unassigned wm 1030 - 2565 3.00GB (1536/0/0) 6291456 2 unassigned wm 2600 - 4135 3.00GB (1536/0/0) 6291456 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0 We have to change owner of OCR and Voting Disk to oracle user and group oinstall so that the OUI will configure the OCR and Voting Disk during Oracle Clusterware Installation. On Node1 (CMSUN17) # mkdir /dev/rac # ln -s -f /dev/rdsk/c2t200200A0B84249BFd2s1 /dev/rac/ocr # ln -s -f /dev/rdsk/c2t200200A0B84249BFd2s2 /dev/rac/vot # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd2s1 # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd2s2 On Node2 (CMSUN19) # mkdir /dev/rac # ln -s -f /dev/rdsk/c2t200200A0B84249BFd2s1 /dev/rac/ocr # ln -s -f /dev/rdsk/c2t200200A0B84249BFd2s2 /dev/rac/vot # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd2s1 # chown oracle:oinstall /dev/rdsk/c2t200200A0B84249BFd2s2 Copyright © 2004, 2009 IBM Page 27 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Note that: Do NOT use the s0 as shared raw device, otherwise the error of “Failed to upgrade Oracle Cluster Registry configuration” will be arised after executed the root.sh during the Oracle Installation. In Solaris when you configure OCR (or even Voting Disk) on RAW Device you must skip first 1 MB or first few cylinders to avoid overwriting on Disk VTOC. 7.5.3 Mount Point Next, we want to prepare the directories and mount points for the Oracle software installation. We will install the binaries of both Oracle Database and Oracle Clusterware into the directory of /oracle/product/10.2. Oracle Database will be installed into /oracle/product/10.2/database (which will be $ORACLE_HOME) and Oracle Clusterware into /oracle/product/10.2/crs (which will be $ORACLE_CRS_HOME). Since RAW device will be used to store OCR and Voting Disk residence, it is not necessary to create a mount point for it this time. The commands below will create the necessary directories. They will also define proper ownership and permissions for these directories. su – oracle Sun Microsystems Inc. SunOS 5.10 Generic January 2005 $ mkdir -p /oracle/product/10.2 $ mkdir /oracle/oraInventory $ mkdir /oracle/product/10.2/crs $ mkdir /oracle/product/10.2/database $ chown –R oracle:oinstall /oracle 7.6 NFS Configuration The last piece of external storage we need is the default storage volume for the resource manager. Earlier we have defined both, an NFS export on the IBM N3700 and a directory (/lbosdata) to become the mount point. All that is missing is the mount itself. To mount the NFS volume, add to your /etc/fstab the following line: cmaix27:/Vol/SUNLbos - /lbosdata nfs - yes vers=3 In this sample, cmaix27.cn.ibm.com is the hostname of the NFS server, /Vol/Lbosdata the name of the exported volume, /lbosdata the mount point on the client side, nfs is the file system type and the remaining parts are options for the mount command. The volume will be automatically mounted after a reboot. To mount the volume immediately, run: # mount -F nfs -o vers=3 cmaix27:/Vol/SUNLbos /lbosdata Repeat the above steps on all nodes participating in the cluster. Now verify that all required file systems are mounted. Below is the output for one of our servers: -bash-3.00# df -k Filesystem cmaix27:/Vol/SUNLbos kbytes used avail 20971520 15620 20955900 Copyright © 2004, 2009 IBM capacity 1% Mounted on /lbosdata Page 28 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 7.7 User Equivalence using SSH During the installation of both Oracle Clusterware and Oracle Database software, files and configuration settings are pushed by the OUI to all nodes participating in the cluster. In order to do so, OUI must be able to transparently log on to all nodes in the cluster, without being prompted for the password. OUI supports two different remote login protocols: RSH and SSH. We know that using SSH a trusted relationship is created using certificates and provides higher security. Because of that, in this document we use of the SSH protocol to achieve the user equivalence. The SSH server and client protocol is typically installed and configured at install time of SunOS. Below is the step about how to build trust relationship using SSH on all nodes. First, we have to create folder to store the certificate. Login to one of your server nodes (in our case the node is cmsun17) as oracle, then run: # su - oracle Sun Microsystems Inc. SunOS 5.10 Generic January 2005 $ mkdir .ssh $ chmod 700 .ssh Then we have to create the certificate using ssh-keygen on one of your server nodes (in our case the node is cmsun17), When prompted for a passphrase, you may just hit enter. If you want to use a passphrase, you have to use ssh-agent additionally. Below is to create the certificate of RSA $ /usr/bin/ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/export/home/oracle/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /export/home/oracle/.ssh/id_rsa. Your public key has been saved in /export/home/oracle/.ssh/id_rsa.pub. The key fingerprint is: 00:9a:6f:bd:9a:e0:fc:87:c3:a5:2b:dd:2f:77:56:9f oracle@cmsun1 Following is to create the certificate of DSA $ /usr/bin/ssh-keygen -t dsa Generating public/private dsa key pair. Enter file in which to save the key (/export/home/oracle/.ssh/id_dsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /export/home/oracle/.ssh/id_dsa. Your public key has been saved in /export/home/oracle/.ssh/id_dsa.pub. The key fingerprint is: f2:29:3a:89:ec:5b:3c:4d:26:3b:b6:45:ea:8d:ea:ca oracle@cmsun17 Copyright © 2004, 2009 IBM Page 29 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Finally create a file named “.authorized_keys” under the .ssh folder. The following operations should be done by Oracle operating system user (e.g. “oracle”). $ touch .ssh/authorized_keys On another node cmsun19, we will perform the same step that was done on node cmsun17, also including the file creation named “.authorized_keys” # su - oracle Sun Microsystems Inc. SunOS 5.10 Generic January 2005 $ mkdir .ssh $ chmod 700 .ssh $ /usr/bin/ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/export/home/oracle/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /export/home/oracle/.ssh/id_rsa. Your public key has been saved in /export/home/oracle/.ssh/id_rsa.pub. The key fingerprint is: 8d:ab:0b:7d:09:66:ae:1a:e2:a2:e7:db:02:39:2f:76 oracle@cmsun19 $ /usr/bin/ssh-keygen -t dsa Gnerating public/private dsa key pair. Enter file in which to save the key (/export/home/oracle/.ssh/id_dsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /export/home/oracle/.ssh/id_dsa. Your public key has been saved in /export/home/oracle/.ssh/id_dsa.pub. The key fingerprint is: 33:79:d7:c5:38:4b:f8:d3:a6:11:e1:3d:b6:e7:90:47 oracle@cmsun19 $ $ touch .ssh/authorized_keys After done for above operation, all the nodes of cmsun17 and cmsun19 should have its own RSA and DSA certificate under the folder named ‘.SSH’. Then we will integrate the RSA and DSA on both nodes together. But we will do this on only one of the node cmsun17 or cmsun19. Here is the example on cmsun17 as below: $ cat .ssh/id_rsa.pub >> .ssh/authorized_keys $ cat .ssh/id_dsa.pub >> .ssh/authorized_keys Copyright © 2004, 2009 IBM Page 30 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 $ ssh cmsun19 cat .ssh/id_rsa.pub >> .ssh/authorized_keys The authenticity of host 'cmsun19 (9.123.112.175)' can't be established. RSA key fingerprint is 0b:40:92:e9:37:04:3b:ed:d7:c9:b6:6d:0f:b1:78:ba. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'cmsun19,9.123.112.175' (RSA) to the list of known hosts. Password: $ ssh cmsun19 cat .ssh/id_dsa.pub >> .ssh/authorized_keys Password: $ scp .ssh/authorized_keys cmsun19:.ssh/authorized_keys Password: authorized_keys 100% |*****************************| 1656 00:00 After done for building SSH relationship, we have to verify the transparent connectivity between two nodes. Run the following command on both nodes. ssh cmsun17 date ssh cmsun19 date ssh cmsun17-private date ssh cmsun19-private date ssh cmsun17.cn.ibm.com date ssh cmsun19.cn.ibm.com date ssh cmsun17-private.cn.ibm.com date ssh cmsun19-private.cn.ibm.com date Note that the first time you establish an SSH connection, an additional message will be displayed. Respond “yes” to the prompt. 8. Oracle Clusterware Installation You should now be ready to start the installation of Oracle Clusterware. Oracle Clusterware provides the load balancing and high availability features of Oracle RAC for Oracle Database. Although previous sections in this document configured the network and storage, installed operating system patches, and created operating system users with Oracle in mind, you should verify that your current environment meets all Oracle product prerequisites before proceeding. Also, verify that you have the license(s) necessary for the proper use of such Oracle products. The steps outlined in this document should only be performed on one node (in our case, cmsun17) with an Oracle operating system user authorized to perform Oracle product installations (e.g. “oracle”), since the Oracle® Universal Installer (OUI) will automatically push the software to the other nodes participating in the cluster. Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, for more information. 8.1 Pre-Install Validation Oracle supplies a verification utility, cluvfy, which verifies most of the prerequisites for a successful installation of both Oracle Clusterware and Oracle Database. The utility is included in the Oracle Clusterware Copyright © 2004, 2009 IBM Page 31 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 installation package. It is critical that you run this utility whenever and exactly as requested in Oracle documentation. If, by the end of this chapter, your Oracle high availability environment is not operating as you expect it to, and cluvfy does not report any errors, you should contact Oracle support to resolve such issues before proceeding further in this document. The high availability of Content Manager using Oracle high availability features and components depends on a properly operating Oracle high availability environment. When running the Oracle cluster verification utility, you will be asked to provide the names of all nodes which will participate in the cluster. In this whitepaper, the names of the nodes in our cluster are cmsun17 and cmsun19. The first test is to verify pre-installation tasks for CRS. Another test is to test the hardware and operating system requirements, as well as additional verification for shared storage. In case of any errors, review the report carefully as any component test marked as unsuccessful may cause later failures when performing other software installation and configuration. 8.2 Installation 8.2.1 Oracle Clusterware 10.2.0.1 To perform the Oracle Clusterware installation, refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, for more information. In this whitepaper, we chose to perform the installation from node cmsun17, as operating system user oracle, with the following values for other inputs as requested during Oracle Clusterware installation as shown in Table 5: Oracle Clusterware 10.2.0.1 : Oracle Clusterware Input Option Value Oracle Inventory Directory /oracle/oraInventory Operating System group name Oinstall Oracle Clusterware Home Path /oracle/product/10.2/crs Oracle Clusterware name OraCrs10g_home1 Cluster Name crs_cm OCR location /dev/rac/ocr OCR Voting Disk /dev/rac/vot Redundancy mode External Table 5: Oracle Clusterware 10.2.0.1 After the installation finishes, run the Oracle cluster verification utility to verify and make sure the Oracle Clusterware installation completed successfully. Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, or Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide 10g Release 2 (10.2), for more information. 8.2.2 Applying Patch Set 10.2.0.4 Next, upgrade the Oracle Clusterware installation above with the Oracle Clusterware 10.2.0.4 patch set, according to the instructions provided by Oracle with the patch set. As before, run the Oracle cluster verification utility to verify the upgrade completed successfully. Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating Copyright © 2004, 2009 IBM Page 32 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 System, or Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide 10g Release 2 (10.2), for more information. 8.2.3 Post-Install Validation After your Oracle Clusterware installation is complete, you should be sure that your system is functioning properly by using the Oracle command-line utility such as crsctl query css votedisk (to check the voting disk status), crsctl query crs (to check the CRS version), olsnodes (to check the nodes), oifcfg (to check the cluster network), crs_stat (to check the CRS status and service), ocrcheck (to check the ocr status) etc. Perform these checks from each node to verify the result. Please refers to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, or Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide 10g Release 2 (10.2), for more information. 8.2.4 Starting and Stopping Oracle Clusterware To start and stop Oracle Clusterware, you can use the Oracle command-line utility as srvctl and crsctl to control and manage the CRS service. Please refers to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, or Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide 10g Release 2 (10.2), for more information on using srvctl and crsctl to start and stop Oracle CRS. 9. Oracle Database Software Installation With Oracle Clusterware installed, we will now install Oracle Database 10g Release 2 – Enterprise Edition software. Like the Oracle Clusterware installation, you should verify that your current environment meets all Oracle product pre-requisites before proceeding. Also, verify that you have the license(s) necessary for the proper use of such Oracle products. Again, the steps outlined in this document should only be performed on one node (in our case, cmsun17) with an Oracle operating system user authorized to perform Oracle product installations (e.g. “oracle”), since the OUI will automatically push the software to the other nodes participating in the cluster. Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, for more information. 9.1 Pre-Install Validation For Oracle database software installation in clustered environment, again run the Oracle cluster verification utility, cluvfy, whenever and exactly as requested in Oracle documentation. If, by the end of this chapter, your Oracle high availability environment is not operating as you expect it to, and cluvfy does not report any errors, you should contact Oracle support to resolve such issues before proceeding further in this document. When running the Oracle cluster verification utility, you will be asked to provide the names of all nodes which will participate in the cluster. In this whitepaper, the names of the nodes in our cluster are cmsun17 and cmsun19. In case of any errors, review the report carefully as any component test marked as unsuccessful may cause failures when performing other software installation and configuration. 9.1.1 Oracle Database 10.2.0.1 To perform the Oracle Database 10g Release 2 software installation in a clustered environment, you can refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, or Oracle® Database Installation Guide Copyright © 2004, 2009 IBM Page 33 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 10g Release 2 (10.2) for Solaris Operating System (x86-64), for more information. In this whitepaper, we chose to perform the installation from node cmsun17 by Oracle user, with the following values for inputs requested during Oracle Clusterware installation as shown in Table 6: Oracle Database 10.2.0.1 Oracle Clusterware Input Option Value Installation Type Enterprise Edition Oracle Home Name OraDb10g_home1 Oracle Home Path /oracle/product/10.2/database Cluser Installation Mode Cluster Installation for both Nodes Configuration Option Install database Software only Table 6: Oracle Database 10.2.0.1 After the installation completed, and because we installed Oracle Database in a clustered environment, run the Oracle cluster verification utility to verify the installation completed successfully. Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, or Oracle® Database Installation Guide 10g Release 2 (10.2) for Solaris Operating System (x86-64), for more information on using this utility to verify the installation result. 9.1.2 Applying Patch Set 10.2.0.4 Next, upgrade your Oracle Database installation from above with the 10.2.0.4 patch set according to the instructions provided by Oracle with the patch set. Again, run the Oracle cluster verification utility to verify and make sure the upgrade installation completed successfully. Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, or Oracle® Database Installation Guide 10g Release 2 (10.2) for Solaris Operating System (x86-64), for more information 9.2 Automatic Storage Management Configuration In this step, configure your ASM instance and disk groups using the Oracle DBCA tool. As before, verify that your current environment meets all Oracle product pre-requisites before proceeding and that you have the license(s) necessary for the proper use of such Oracle products. The DBCA steps outlined in this document should only be performed on one node (in our case, cmsun17) with an Oracle operating system user authorized to perform Oracle product installations (e.g. “oracle”) and create Oracle databases. The DBCA prompts for the necessary parameters to create an ASM instance on both nodes by default (+ASM1 on cmsun17 and +ASM2 on cmsun19). The Oracle SYS password for administration of the ASM instance should be provided as well as the location of the parameter file for the ASM instance. Note that an Oracle listener with default prefix LISTENER will be created on cmsun17 and cmsun19. Two ASM disk groups with two raw devices as ASM disk need to be defined and created, with the following values for other inputs requested during ASM configuration as shown in Table 7: Oracle ASM Disk Groups. Disk Group Name Usage Redundancy State DG1 Oracle Data Files Normal MOUNTED(2/2) DECOVERYDEST Flashback Area Normal MOUNTED(2/2) Table 7: Oracle ASM Disk Groups For more detailed information on using the DBCA to configure ASM, refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 Copyright © 2004, 2009 IBM Page 34 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 (10.2) for Solaris Operating System or Oracle(R) Database Oracle Clusterware, and Oracle® Real Application Clusters Administration and Deployment Guide 10g Release 2 (10.2). 9.3 Oracle RAC environment acceptance testing At this point, you should take some time to validate your Oracle operating environment before proceeding any further. Devise tests which will mimic the way you expect to utilize Oracle in the context of Content Manager. For example, if you follow the methodology of this whitepaper, you may wish to create a sample database with two schemas and test various failover scenarios. Does the failover occur as you expect it to, with MTTR consistent with your SLA’s or internal user requirements? Can you failback as you expect to? What considerations might be noteworthy as a result of a failover or failback? Are there manual steps that will need to be performed before users can regain access to the Oracle database server? Develop test scenarios for situations you think might be problematic. Develop as thorough a procedure as possible and be sure you understand all ramifications. Ultimately, the capability of Content Manager to remain highly available depends on the underlying robustness of the infrastructure implemented. If Oracle is not configured in a way that meets your requirements, it is unlikely that Content Manager sitting on top of an Oracle highly available environment, will be able to either. Do not underestimate the importance of testing at this stage. Ensure your Oracle environment is configured properly before proceeding further. IBM standard support does not include troubleshooting or advising on Oracle, physical storage, network topologies, or other non-IBM high availability infrastructure components. For questions or problems with IBMbranded products used in your highly available infrastructure which are not part of Content Manager, you must contact IBM support specific to those IBM products. 10. WebSphere Application Server In this chapter, we will install WebSphere Application Server Network Deployment v6.1. WebSphere Application Server Network Deployment is the edition of WebSphere Application Server designed to provide high availability and load balancing features. We chose to implement a WebSphere Application Server Network Deployment environment consisting of: ● 2x IBM HTTP Server; each with the WebSphere Application Server Network Deployment plug-in ● 2x Application Server, running as a WebSphere Application Server Network Deployment cluster ● 1x WebSphere Application Server Network Deployment Deployment Manager The redundant components (IBM HTTP Server, WebSphere Application Server plug-in, Application Server) will be distributed across both nodes. The Deployment Manager node will not be in a highly available configuration because it is only needed for administration. 10.1 WebSphere Application Server Network Deployment Installation In this first step, we will install the application server component of WebSphere Application Server Network Deployment Version 6.1. You have to complete these steps on all nodes (in our case, cmsun17 and cmsun19) of your planned WebSphere Application Server Network Deployment cluster. Firstly, start the WebSphere Application Server Network Deployment 6.1.0.0 Installation on both Nodes, Following is the Installation step on CMSUN17. # /software_RAC/WAS/WAS /install InstallShield Wizard Copyright © 2004, 2009 IBM Page 35 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Initializing InstallShield Wizard... Searching for Java(tm) Virtual Machine... ........ After few seconds, the Welcome panel will be shown as in Figure 4: WebSphere Application Server Network Deployment Installation-Welcome Screen and click Next Figure 4: WebSphere Application Server Network Deployment Installation-Welcome Screen Accept the License Agreement as shown in Figure 5: WebSphere Application Server Network Deployment Installation-License Agreement and click Next Copyright © 2004, 2009 IBM Page 36 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 5: WebSphere Application Server Network Deployment Installation-License Agreement System Prerequisite Check as shown in Figure 6: WebSphere Application Server Network Deployment Installation-Prerequisite Check, the system check in our case is successful and click Next. Copyright © 2004, 2009 IBM Page 37 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 6: WebSphere Application Server Network Deployment Installation-Prerequisite Check In the Install Sample Applications panel as shown in Figure 7: WebSphere Application Server Network Deployment Installation-Sample Applications, we do not want to use the sample applications, so keep the selection disable, and click Next. Copyright © 2004, 2009 IBM Page 38 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 7: WebSphere Application Server Network Deployment Installation-Sample Applications The next panel will show as Installation Directory as shown in Figure 8: WebSphere Application Server Network Deployment Installation-Directory Path, we will confirm the default installation directory of /opt/IBM/WebSphere/AppServer and click Next. Copyright © 2004, 2009 IBM Page 39 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 8: WebSphere Application Server Network Deployment Installation-Directory Path Select None as shown in Figure 9: WebSphere Application Server Network Deployment InstallationEnvironments. We will create the profiles later using the profile management tool. And click Next. Copyright © 2004, 2009 IBM Page 40 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 9: WebSphere Application Server Network Deployment Installation-Environments A warning message as shown in Figure 10: WebSphere Application Server Network Deployment InstallationProfile Warning Appears. Confirm the message by clicking on Yes. Figure 10: WebSphere Application Server Network Deployment Installation-Profile Warning Following panel is the Summary message for WebSphere Application Server Network Deployment Installation as shown in Figure 11: WebSphere Application Server Network Deployment Installation-Summary. Copyright © 2004, 2009 IBM Page 41 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 11: WebSphere Application Server Network Deployment Installation-Summary Then click Next, the WebSphere Application Server Network Deployment installation will start, you may need to wait a few minutes. After installation, Uncheck the option to create a new profile as shown Figure 12: WebSphere Application Server Network Deployment Installation-Result. We will run this script later manually. Click Finish to close the installation wizard. Copyright © 2004, 2009 IBM Page 42 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 12: WebSphere Application Server Network Deployment Installation-Result 10.2 IBM HTTP Server and IBM HTTP Server Plug-in Installation In this step, we will install the IBM HTTP Server component and the IBM HTTP Server Plug-in of WebSphere Application Server Edge Components Version 6.1, you have to complete these steps on all nodes (in our case, cmsun17 and cmsun19) of your planned WebSphere Application Server Network Deployment cluster. Firstly Start the IBM HTTP Server 6.1.0.0 installation: # /software_RAC/WAS/New_ND/IHS /install InstallShield Wizard Initializing InstallShield Wizard... Searching for Java(tm) Virtual Machine... .......... After few seconds the Welcome Screen was come out as shown in Figure 13: IBM HTTP Server-Welcome Screen and click Next. Copyright © 2004, 2009 IBM Page 43 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 13: IBM HTTP Server-Welcome Screen Review and accept the license Agreement as shown in Figure 14: IBM HTTP Server-License Agreement. Then click Next. Copyright © 2004, 2009 IBM Page 44 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 14: IBM HTTP Server-License Agreement A system prerequisite check will be completed. The result will be failed as shown in Figure 15: IBM HTTP Server-System Prerequisite Check. Then we ignore this error and click Next. Copyright © 2004, 2009 IBM Page 45 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 15: IBM HTTP Server-System Prerequisite Check Confirm the default installation directory of /opt/IBM/HTTPServer as shown in Figure 16: IBM HTTP ServerInstallation Directory and click Next. Copyright © 2004, 2009 IBM Page 46 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 16: IBM HTTP Server-Installation Directory Keep the default port value assignments of 80 and 8008 as shown in Figure 17: IBM HTTP Server-Port Values Assignment and click Next. Copyright © 2004, 2009 IBM Page 47 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 17: IBM HTTP Server-Port Values Assignment In the panel of HTTP Administration Server Authentication as shown in Figure 18: IBM HTTP Server-HTTP Administration Server Authentication, check the selection of create user id and provide a user ID and a password. For example, wasadmin and its password. click Next. Copyright © 2004, 2009 IBM Page 48 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 18: IBM HTTP Server-HTTP Administration Server Authentication On the panel “Setup HTTP Administration Server” as shown in Figure 19: IBM HTTP Server-Setup HTTP Administration Server, uncheck both options. We will not use the administration interface. Then click Next. Copyright © 2004, 2009 IBM Page 49 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 19: IBM HTTP Server-Setup HTTP Administration Server The following panel asks for details about the IBM HTTP Server Plug-in for WebSphere Application Server. On the cmsun17 node, keep the default values as shown in Figure 20: IBM HTTP Server-Plug-In for . On the cmsun19 node, change the web server definition to “webserver2”. Click Next. Copyright © 2004, 2009 IBM Page 50 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 20: IBM HTTP Server-Plug-In for WebSphere Application Server Then the summary is displayed, as shown in Figure 21: IBM HTTP Server-Installation Summary. Copyright © 2004, 2009 IBM Page 51 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 21: IBM HTTP Server-Installation Summary Then click Next, The WebSphere Application Server Network Deployment installation will start. As shown in Figure 22: IBM HTTP Server-Installation Result for Installation result , click Finish to quit the Installation. Copyright © 2004, 2009 IBM Page 52 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 22: IBM HTTP Server-Installation Result 10.3 Applying WebSphere Fixpacks Next, we will update the WebSphere Application Server and Edge components to a higher fixpack level. We used fixpack 23 for our tests. You will need to download 4 components for WebSphere fixpack installation: ● IBM Update Installer ● Fix pack for WebSphere Application Server ● Fix pack for IBM HTTP Server ● Fix pack for IBM HTTP Server Plug-In First, install the update installer (please notice that the update installer should be the version delivered with the fixpack, in our tests, fixpack 13): ● Welcome -> Next ● License Agreement -> Review the agreement. If you agree, select Accept. -> Next ● System Prerequisite Check: Completed Successful -> Next ● Installation Directory: Confirm /opt/IBM/WebSphere/UpdateInstaller > Next ● Installation Summary -> Next ● Installation Complete Keep checkbox selected of Launch IBM Update installer. Copyright © 2004, 2009 IBM Page 53 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 The IBM Update Installer is started and will appear on your screen after a few seconds. ● Welcome -> Next ● Product Selection: In the drop down list, you will find 3 components: ● HTTP Server ● HTTP Plug-in ● WebSphere Application Server Select one of the components. Click Next. ● Maintenance Option Selection: Install maintenance package -> Next ● Specify Directory -> Select the directory where you did download the patches. Click Next. ● Select packages to install the patch ● Installation Complete: Relaunch the wizard for the other 2 components. If you did update all 3 components, click Finish. 10.4 WebSphere Application Server Profile Management Now we will create the necessary profiles in WebSphere Application Server. On cmsun17 node, we will create the deployment manager. The deployment manager is the administrative interface for all our WebSphere Application Server Network Deployment cell clusters. We will also create a custom node on all nodes (in our case, cmsun17 and cmsun19), which we will federate into our deployment manager environment. A custom node does not contain any administrative interface. 10.4.1 WebSphere Application Server Deployment Manager Installation Start the profile management tool on the CMSUN 17 node. Note that we only need to complete these steps on cmsun17 node only! # /opt/IBM/WebSphere/AppServer/bin/ProfileManagement/pmt.sh After few seconds the Welcome Screen was come out as shown in Figure 23: PMT-Welcome Screen and click Next. Copyright © 2004, 2009 IBM Page 54 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 23: PMT-Welcome Screen A panel of “Select the type of environment to create” are shown in Figure 24: PMT-Environment Selection and Select Deployment Manager then click Next. Copyright © 2004, 2009 IBM Page 55 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 24: PMT-Environment Selection In the panel of “Profile Creation Options as shown” in Figure 25: PMT-Profile Creation Options, we selected Typical profile creation and click Next. Copyright © 2004, 2009 IBM Page 56 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 25: PMT-Profile Creation Options In the panel of Administrative Security as shown in Figure 26: PMT-Administrative Security, we will enable the WebSphere Application Server security, and specify a user name and its password to access any WebSphere Application Server Network Deployment administrative function. This user is maintained within WebSphere and is by default not an operating system user. Copyright © 2004, 2009 IBM Page 57 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 26: PMT-Administrative Security Following panel as shown in Figure 27: PMT-Deployment Manager Summary, is the Summary of profile creation, Then click Create to start the WebSphere Application Server Network Deployment Creation. Copyright © 2004, 2009 IBM Page 58 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 27: PMT-Deployment Manager Summary After finished the installation, uncheck Launch the First Step Console as shown in Figure 28: PMT-Deployment Manager Installation Result. Click Finish to close the profile management tool. Copyright © 2004, 2009 IBM Page 59 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 28: PMT-Deployment Manager Installation Result Now start the Deployment Manager on cmsun17 node # /opt/IBM/WebSphere/AppServer/bin/startManager.sh ADMU0116I: Tool information is being logged in file /opt/IBM/WebSphere/AppServer/profiles/Dmgr01/logs/dmgr/startServer.log ADMU0128I: Starting tool with the Dmgr01 profile ADMU3100I: Reading configuration for server: dmgr ADMU3200I: Server launched. Waiting for initialization status. ADMU3000I: Server dmgr open for e-business; process id is 20722 10.4.2 Federation to WebSphere Application Server Network Deployment Cluster Start the profile management tool on the all the nodes (in our case, cmsun17 and cmsun19). Following is the step on cmsun17. # /opt/IBM/WebSphere/AppServer/bin/ProfileManagement/pmt.sh After few seconds the Welcome Screen was come out and click Next. Copyright © 2004, 2009 IBM Page 60 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 A panel of “Select the type of environment to create” are shown in Figure 29: PMT Federation-Environment Selection and Select Custom Profile then click Next. Figure 29: PMT Federation-Environment Selection In the panel of “Profile Creation Options as shown” in Figure 30: PMT Federation-Profile Creation Options, we selected Typical profile creation and Click Next. Copyright © 2004, 2009 IBM Page 61 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 30: PMT Federation-Profile Creation Options In the Federation Panel as shown in Figure 31: PMT Federation-Federation Information, we define if the custom node should become managed by a deployment manager. Provide the deployment manager host name, in our case the Network Deployment is created on cmsun17, Keep the default port number 8879, specify the user name (wasadmin) and its password, and click Next. Copyright © 2004, 2009 IBM Page 62 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 31: PMT Federation-Federation Information Profile Creation Summary is displayed as shown in Figure 32: PMT Federation-Profile Creation Summary. Review the settings and click Next. Copyright © 2004, 2009 IBM Page 63 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 32: PMT Federation-Profile Creation Summary After few minutes, Profile created successful. Uncheck Launch the First Step Console, then click Finish to quit the installation. Repeat the custom profile creation on cmsun19 node that you want to participate in WebSphere Application Server Network Deployment cluster. Note that you should synchronize the time clock among all nodes before federation, otherwise this operation would be failed. 10.4.3 Create WebSphere Application Server Network Deployment Cluster In this step, we will create a cluster between both of our application server nodes. This configuration can be easily accomplished in the WebSphere administration interface, Integrated Solutions Console. Expand Servers in the left navigation panel. Then Click on Clusters. In the right panel, “Server Clusters”, click New. This will start the Create a new cluster wizard, which you will complete in the next steps. First, you need to provide a name for your cluster. You need to remember this name later on for the deployment of the resource manager application of Content Manager. In our case the Cluster name is RMCluster as shown in Figure 33: WebSphere Application Server Network Deployment Create a new Cluster (1). Keep the other settings on default. Click Next. Copyright © 2004, 2009 IBM Page 64 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 33: WebSphere Application Server Network Deployment Create a new Cluster (1) In the step 2 shown in Figure 34: WebSphere Application Server Network Deployment Create a new Cluster (2), create first cluster member, you are required to provide information about your first member and on a template. You can choose the member name freely. In our case, we've chosen a member name as RMCMSUN17, indicating that this application server is assigned to the node cmsun17. In the drop down list below, select the appropriate node. Keep the default weight of 2. With the weight parameter, you can influence the load balancing behavior. Having an equal weight across all nodes will provide an equal balancing. For "Select basis for first cluster member", keep the default selection of "Create the member using an application server template". Then click Next. Copyright © 2004, 2009 IBM Page 65 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 34: WebSphere Application Server Network Deployment Create a new Cluster (2) In the next step, you can add more nodes to the cluster. Type in the member name (RMCMSUN19), select the node and weight, keep “generate unique HTTP ports” checked and click Add member. On the lower section of this panel, a list of all nodes will be populated. When you are done defining all nodes, click Next. The next panel, as shown in Figure 35: WebSphere Application Server Network Deployment Create a new Cluster (Summary), is a summary of your settings. Click Finish to start the creation of the new cluster. Copyright © 2004, 2009 IBM Page 66 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 35: WebSphere Application Server Network Deployment Create a new Cluster (Summary) Finally you are prompted to save your settings. A warning message is like Figure 36: WebSphere Application Server Network Deployment Create a new Cluster (Save Changes). Click on Save to store the configuration and to populate the information to the nodes across your WebSphere Application Server Network Deployment cluster. Figure 36: WebSphere Application Server Network Deployment Create a new Cluster (Save Changes) Copyright © 2004, 2009 IBM Page 67 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 10.4.4 Service Messaging Database The WebSphere Administration API uses Java Messaging Service (JMS) for application event notification when certain device and job events occur. By default, the Device Manager server uses the Service Integration Bus (“SIB”) feature, which was introduced in WebSphere Application Server, version 6, along with the default messaging JMS provider. Refer to the WebSphere Application Server Information Center for information on the Service Integration Bus and messaging resources. Content Manager requires a messaging database in place, to allow the resource manager to exchange information between both nodes for the resource manager services workload: replicator, migrator, purger, stager. To prevent the SIB database from being a SPOF in an HA environment, we want to place this information in our Oracle database environment. At this point in time, however, we do not have the database ready. Further, the deployment of the resource manager will already pre-populate many settings for us. Because of that, we will postpone this task until after the Content Manager configuration. 10.4.5 Add Web Server Definition In this step, we will add our web server definition into our deployment manager. While still in the Integrated Solutions Console. Note that this step should be done twice for both nodes (in our case, cmsun17 and cmsun19). Navigate in the left panel by expanding Servers, then click the Web Servers. Click on new. Then a panel as shown in Figure 37: New Web Server Definition (1) appears. Select your first node from the drop down list and type in the web server name. In our case, the first node is cmsun17Node01 and the web server name is webserver1. Our second node is cmsun19Node01 with a web server name of webserver2. Click Next. Figure 37: New Web Server Definition (1) On the next step, shown in Figure 38: New Web Server Definition (2), you specify the web server template. We use the IBM HTTP Server (IHS). Then click Next. Copyright © 2004, 2009 IBM Page 68 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 38: New Web Server Definition (2) The next step, shown in Figure 39: New Web Server Definition (3), queries information about the web server installation location and its plug-in. In our case, all settings have been correct. Click Next. Figure 39: New Web Server Definition (3) In the last step, shown in Figure 40: New Web Server Definition (Summary), a summary is displayed. Review the settings and click finish to create the definitions. Then click the Finish. Copyright © 2004, 2009 IBM Page 69 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 40: New Web Server Definition (Summary) Then you are prompted to save your settings. A warning message is like Figure 41: New Web Server Definition (Save Changes). Click on Save to store the configuration and to populate the information to the nodes across your WebSphere Application Server Network Deployment cluster. Figure 41: New Web Server Definition (Save Changes) Then fulfill the same steps for adding Web Server Definition for cmsun19. After done that, you can start the IBM HTTP Server from the WebSphere Application Server Integrated Solution Console (WebSphere Application Server Admin Console). Select both web servers (check the two check boxes) and then click the Start button. As a result, both servers should be started and a panel similar to Figure 42: Web Server Start. Figure 42: Web Server Start Copyright © 2004, 2009 IBM Page 70 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 10.4.6 SSL configuration for http server (Optional) By default, the web servers that we installed only support http with port 80. Content Manager needs https support in some cases. As in Content Manager 8.4.2, https is only used for System Administration management by default. This will be optional and will not be described in this document. You can use default https port on any node or define IP sprayer to map to default https port directly. 10.4.7 IP Sprayer Definition As we have two web servers, we must define an IP sprayer to use both of them. Please see your WebSphere Application Server representative for the IP sprayer solution. We’ll not talk technology here, and just assume that IP address of cmrmapp is already assigned to this IP sprayer. 10.4.8 WebSphere Application Server and WebSphere Application Server Network Deployment environment acceptance testing As before with the databases, you should take some time to validate your WebSphere Application Server and WebSphere Application Server Network Deployment cluster environment. Devise tests which will mimic the way you expect to utilize the WebSphere cluster in the context of Content Manager. For example, if you follow the methodology of this whitepaper, you may wish to deploy a sample application to your WebSphere Application Server Network Deployment cell, testing various failover scenarios. Does the failover occur as you expect it to, with MTTR consistent with your SLA’s or internal user requirements? Can you failback as you expect to? What considerations might be noteworthy as a result of a failover or failback? Are there manual steps that will need to be performed before users can regain access to the application? What about the IBM HTTP Server? If it is configured as a SPOF, what additional recovery procedures do you need to develop? If it isn’t, what redundancies, and checks on those redundancies, have you put into place to mitigate outages? Develop test scenarios for situations you think might be problematic. Develop as thorough a procedure as possible and be sure you understand all ramifications. As with the databases, the capability of Content Manager to remain highly available depends on the underlying robustness of the infrastructure implemented. If WebSphere is not configured in a way that meets your requirements, it is unlikely that the Content Manager RM application sitting on top of the WebSphere environment, will be able to either. Do not underestimate the importance of testing at this stage. Ensure your WebSphere Application Server and WebSphere Application Server Network Deployment environment are configured properly before proceeding further. IBM standard support does not include troubleshooting or advising on physical storage, network topologies, or other non-IBM high availability infrastructure components. For questions or problems with IBM-branded products used in your highly available infrastructure which are not part of Content Manager, you must contact IBM support specific to those IBM products. For example, if you suspect problems with or have questions about WebSphere Application Server Network Deployment failover performance or capabilities, you should direct questions to IBM support for WebSphere Application Server Network Deployment. Refer also to the WebSphere Application Server Information Center for more details on WebSphere Application Server and WebSphere Application Server Network Deployment. In particular, the topics, Monitoring overall system health and Using the installation verification tools may prove helpful in diagnosing problems. Acceptance testing is highly correlated to the specific requirements domain of an organization and cannot be generalized. As such testing relates to the underlying infrastructure and are not Content Manager-related, it lies outside the scope of IBM standard support. If you need additional consultancy services, please contact IBM Global Business Services or your IBM sales representative. Copyright © 2004, 2009 IBM Page 71 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 11. IBM Content Manager Installation In this chapter we will install and configure Content Manager. The steps we will complete are: ● Installation of Content Manager on both nodes ● Database creation using DBCA tool ● Configuration of Content Manager Further we will configure a remote client and will setup the WebSphere Application Server Network Deployment messaging database. 11.1 Installation of IBM Content Manager The installation of Content Manager is very simple. Unzip the installation source and run the command install_CM as root. You will complete these steps on one node (in our case cmsun17) only. This node will also become the node where you have to install fix packs at a later point in time! Now we start to perform the Content Manager installation on node cmsun17, # /software_RAC/CM/264_840200/release/cm/install_CM InstallShield Wizard Initializing InstallShield Wizard... Searching for Java(tm) Virtual Machine... ........ After a few seconds, the Content Manager installer appears shown in Figure 43: IBM Content Manager-Software License Agreement. Accept the license and click Next. Copyright © 2004, 2009 IBM Page 72 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 43: IBM Content Manager-Software License Agreement The installation destination is displayed as shown in Figure 44: IBM Content Manager-Installation Destination. The installation target is predefined as /opt/IBM/db2cmv8. Then click Next. Copyright © 2004, 2009 IBM Page 73 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 44: IBM Content Manager-Installation Destination The product component list is displayed as shown in Figure 45: IBM Content Manager-Components Selection, Select the components you want to install. We kept the default selection of all components except for “Information Center”. Mandatory components are the library server, resource manager database and resource manager application. Optional components are the system administration client and the information center. Then click Next. Copyright © 2004, 2009 IBM Page 74 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 45: IBM Content Manager-Components Selection On the panel as shown in Figure 46: IBM Content Manager-Server Database Type, you need to select the server type. Select Oracle Database and click Next. Copyright © 2004, 2009 IBM Page 75 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 46: IBM Content Manager-Server Database Type The summary panel is displayed as shown in Figure 47: IBM Content Manager-Summary Information. Verify the information displayed in the summary and click Next, then the installation will be started. Copyright © 2004, 2009 IBM Page 76 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 47: IBM Content Manager-Summary Information After a short time, the installation should complete. You are asked, if you want to run the configuration wizard. De-select this option, as we are not ready to complete this step yet. To deploy the necessary code of Content Manager onto the second node cmsun19, we will only copy mandatory files. On the cmsun17 node we've installed the library server, resource manager database and Content Manager system administration components. To the second node cmsun19, we will only copy essential runtime files for the library server. The node cmsun19 will not contain the Content Manager system administration client. The resource manager database does not require any Content Manager runtime files. Make sure that you preserve ownership and access permissions during the copy operation! You need to copy the following directories to the node cmsun19: /opt/IBM/db2cmv8/icc (the whole directory including subdirectories) /opt/IBM/db2cmv8/lib/ICMPORSP (just the file) Note: Any time you apply a fixpack to the primary node, you MUST copy these files again to all other nodes in your cluster! Content Manager is NOT aware of this manual copy! On the second node cmsun19, you must also manually create the directories used by Content Manager for its log files as ibmcmadm user. If this directory does not exists, no log file will be written on your secondary node. In the commands below, replace ICMNLSDB with the name of your library server database. # su - ibmcmadm Copyright © 2004, 2009 IBM Page 77 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris Sun Microsystems Inc. SunOS 5.10 2009.12.28 Generic January 2005 $ mkdir -p log/ls/ICMNLSDB $ chmod -R 777 log Alternatively you may copy the whole directory tree structure, starting at /export/home/ibmcmadm/log, from your primary node to your secondary node. Note: At runtime, log information will always be written to the log files on the node actually performing the work. This means, there will be at least 2 independent log files for each component. 11.2 Database Creation using DBCA Tool In this step, we will create the Content Manager database. It will be used as a shared database for both, the library and resource manager components. That means these two database components are using two different schema usage. Further we will later place the WebSphere Application Server Network Deployment messaging data store in this database at a later point in time. As the same to ASM Configuration, we will use the DBCA tool to create and configure the database. The database template and necessary scripts are provided in the Content Manager installation image. Before Content Manager database creation, these database template and scripts should be copied to your local place under the $ORACLE_HOME/assistants/dbca/templates folder. The steps outlined in this document should only be performed on one node (in our case, cmsun17) with an Oracle operating system user authorized to create databases (e.g. “oracle”). During the database configuration, firstly select the Oracle Real Application Cluster option and check the Create a Database option and make sure all the nodes in cluster are selected to the create the cluster database. The following values for other inputs requested during Content Manager database creation as shown below. Oracle Database Creation Options Selected Option Value Database Templates ICM shared database Global Database Name icmnlsdb.cn.ibm.com SID Prefix icmnlsdb Management Options Configure the Database with Enterprise Manager Storage Options Automatic Storage Management (ASM) Database File Locations Use Oracle-Managed Files (DB Area: +DG1) Recovery Configuration Flash Recovery Area (+RECOVERYDEST) Table 8: Database Creation Options During the database configuration, you may define additional database components. The default components entries are fine for use with Content Manager. If you want to use Content Manager Text Search, you must keep Oracle Text selected. Note that for the Content Manager user ids (ICMADMIN, RMADMIN and ICMCONCT) the passwords cannot be defined during the configuration, but at the end of the DBCA wizard. They will have a default password of "password" as the template provided by default after database creation. Once the database has been created, you can change the password for these accounts. For information about change the information for user accounts, refer to Oracle Database Administrator's Reference for UNIX-Based Operating Systems. Through Content Manager Database creation, we will also define a server-side Transparent Application Failover (TAF) service into database for both nodes (cmsun17 and cmsun19) to achieve and simplify the failover and loadbalancing configuration. The following values for TAF service inputs requested during the service configuration as shown in Table 9: Oracle TAF Service Copyright © 2004, 2009 IBM Page 78 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris TAF Service Name ICM_TAF Instance Name Node Role Instance1 Preferred Instance2 Preferred 2009.12.28 TAF Policy Basic Table 9: Oracle TAF Service We should change the compatible parameter from 9.2.0.0.0.0 to 10.2.0.0.0 in All Initialization Parameter part. If you do not change this parameter, the database creation will fail at a later stage. This change is only necessary in Oracle RAC environments. On a non-clustered environment, you can keep the default value for the compatible parameter. At the end of database creation by DBCA, note that you are prompted and should at least unlock and provide a password for the CTXSYS account. This is mandatory for Oracle Text to work. You may also change the passwords for user schemas of ICMCONCT, RMADMIN and ICMADMIN on this step. For more detailed information on using the DBCA to configure and create the database in cluster environment, you can refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, or Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide 10g Release 2 (10.2). The database with its two instances will be started automatically after a few seconds once the database configuration was done, the database should be started on all nodes. You are now ready to start the configuration wizard of Content Manager. 11.3 Listener and TNSNAMES Configuration In this step, we will now add support for EXTPROC32 to our Oracle listener configuration. Most of the Content Manager library server logic is implemented via Oracle external procedures, which are loaded by the Oracle extproc process spawned by the Oracle listener. We will have to modify two files: tnsnames.ora and listener.ora. You need to implement the changes on all nodes! Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System for detailed information on configuring the Listener File (listener.ora) and Net Service Names (tnsnames.ora File). Note that the Net Service Name: ICM_TAF, will be existed in the tnsnames.ora, as we have defined a server-side TAF service into database to achieve the failover and load-balancing. The connection string including the TAF method and policy and its VIP address (in our case, cmsun17-vip and cmsun19-vip). Content Manager will use this Net Service Name to communicate with cluster database directly. For listener.ora on each node, please notice that the listener.ora files on your two nodes are not 100% identical as they contain the local host name as suffix to the listener name! The changes are the extproc key (change EXTPROC to ICMLSEXTPROC) and the complete section SID_LIST_LISTENER_<HOSTNAME>. Note that the listener environment variable path should be appended to the SID_LIST for ICMLSExtProc. In our case the path is ENVS="EXTPROC_DLLS=ONLY:/opt/IBM/db2cmv8/lib/ICMPORSP,IBMCMROOT=/opt/IBM/db2cmv8,LD_LI BRARY_PATH=/oracle/product/10.2/database/lib32:/oracle/product/10.2/database/lib:%LD_LIBRARY_PATH% ". After having implemented these changes on both nodes, stop and restart the listener on both nodes. Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide 10g Release 2, for more information on using srvctl start / stop listener to manage and restart the Oracle listener in an Oracle RAC environment. Copyright © 2004, 2009 IBM Page 79 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 11.4 IBM Content Manager Configuration In this step, we will use the Content Manager configuration wizard to complete our setup. In this step, the wizard will populate the library server and resource manager database with data, deploy the resource manager application into our WebSphere Application Server Network Deployment cluster and update Content Manager configuration files. Note that we only perform the configuration on one node and define these settings to be able to use a JDBCOCI connection string, which provides simplified connectivity to RAC enabled databases but requires access to the Oracle Database 32-bit libraries in the location for root user shown below. LD_LIBRARY_PATH=/oracle/product/10.2/database/lib32:/oracle/product/10.2/database/lib:$LD_LIBRARY_PATH To configure Content Manager run the following command as specific path under /opt/IBM/db2cmv8/bin directory. # /opt/IBM/db2cmv8/config_CM InstallShield Wizard Initializing InstallShield Wizard... Searching for Java(tm) Virtual Machine... After a few seconds, the Content Manager configuration wizard appears as shown in Figure 48: IBM Content Manager Configuration-Welcome Screen, select “Add configuration” and click Next. Copyright © 2004, 2009 IBM Page 80 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 48: IBM Content Manager Configuration-Welcome Screen Note that you can start the configuration wizard several times. You can also use the configuration wizard to remove existing configurations. After few minutes the next panel will be shown as Figure 49: IBM Content Manager Configuration-Components Selection, you can select the components you want to configure. You may select components individually or you may just select all components at once. Since we want to configure the library server, resource manager and the system administration client, we kept all options selected except for Information Center. And click Next. Figure 49: IBM Content Manager Configuration-Components Selection In the panel as shown in Figure 50: IBM Content Manager Configuration-Database Type, we select the Oracle Database options and click Next. Copyright © 2004, 2009 IBM Page 81 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 50: IBM Content Manager Configuration-Database Type Next panel as shown in Figure 51: IBM Content Manager Configuration-Administrative User, you are required to provide information about an administrative user. This user is required to store the log and configuration files of Content Manager and is also used during the installation process. We have already created this user and the associated group, so select ‘Use existing user’ and provide the password information. Click Next. Copyright © 2004, 2009 IBM Page 82 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 51: IBM Content Manager Configuration-Administrative User The panel as shown in Figure 52: IBM Content Manager Configuration-System Information, we provide the fully qualified hostname, here is cmsun17.cn.ibm.com, this value is normally detected automatically and pre-populated into this field and then click Next. Copyright © 2004, 2009 IBM Page 83 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 52: IBM Content Manager Configuration-System Information In the next panel, shown in Figure 53: IBM Content Manager Configuration-Oracle Home, provide the fullyqualified path to your Oracle Database product installation directory (e.g. “ORACLE HOME”). The panel contains a lot of background information, which we already covered in our preparation steps. In our scenario, implemented the second option, making ibmcmadm a member of the oinstall group. Copyright © 2004, 2009 IBM Page 84 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 53: IBM Content Manager Configuration-Oracle Home On the next panel, as shown in Figure 54: IBM Content Manager Configuration-Library Server Information, The information provided in this panel will be used to create a JDBC URL. Provide library server name and Oracle listener port. In the last entry field, provided the Oracle net service name of your database. Here we will use the net service name of TAF (in our case, ICM_TAF) that was defined during database creation. Copyright © 2004, 2009 IBM Page 85 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 54: IBM Content Manager Configuration-Library Server Information We also want to use the same database for the resource manager. So we check the “Share the database with resource manager” option. So check the "Share the database with resource manager" option. Click Next. On the next panel, shown in Figure 55: IBM Content Manager Configuration-JDBC Information. The information we provide will be used to connect to the library server database at install time. Note, since we are using an Oracle RAC environment, we cannot use the preconfigured JDBC type 4 URL, instead replace the JDBC type 2 connection string with jdbc:oracle:oci:@ICM_TAF in our case. On the same panel, complete the library server administrative user (icmadmin) and its password (use the same value specified during DBCA execution). When you click next, this information will be validated immediately. Copyright © 2004, 2009 IBM Page 86 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 55: IBM Content Manager Configuration-JDBC Information The next panel as shown in Figure 56: IBM Content Manager Configuration-Library Server Connection User is the same as previous step. We use the jdbc type 2 format as connection string and provide the user name and password for library server database connection user. This user unlike the administrative user defined before, does not have any special privileges on the database. Copyright © 2004, 2009 IBM Page 87 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 56: IBM Content Manager Configuration-Library Server Connection User When you click next, a progress indicator appears. The configuration wizard connects to the database and verifies a number of settings. It also reads some database structure information. You will not be able to advance to the next step, if this validation fails. In case of an error, a message will be displayed and added to the log file. The next panel, shown in Figure 57: IBM Content Manager Configuration-Library Server Table Space, allows the selection of table spaces for the Content Manager library server database. The default table spaces will be preselected. If you want to use custom table spaces, you may select them now. We keep the default value and click Next. Copyright © 2004, 2009 IBM Page 88 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 57: IBM Content Manager Configuration-Library Server Table Space The next screen, shown in Figure 58: IBM Content Manager Configuration-Library Server Database Settings, allows you to define additional settings for the library server. Keep the library server ID of 1. You may change the transaction duration, which is by default 3 minutes. If you want to use text search, select the “enable text search” option. For the moment, do not select “enable LDAP”. This feature can be enabled after installation, if necessary. Copyright © 2004, 2009 IBM Page 89 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 58: IBM Content Manager Configuration-Library Server Database Settings Next panel as shown in Figure 59: IBM Content Manager Configuration-Resource Manager Name, keep the default value of resource manager name as icmrm, and click Next. Copyright © 2004, 2009 IBM Page 90 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 59: IBM Content Manager Configuration-Resource Manager Name The next panel as shown in Figure 60: IBM Content Manager Configuration-JDBC Information, provide the information for the JDBC connection for the resource manager database. Since we use a shared database with the library server, the JDBC connection string is identical. Provide the username and password, it is rmadmin (default) and its password specified during DBCA execution. Copyright © 2004, 2009 IBM Page 91 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 60: IBM Content Manager Configuration-JDBC Information When you click Next, the configuration wizard uses this information to connect to the database and query essential information. The next panel, shown in Figure 61: IBM Content Manager Configuration-Resource Manager Table Spaces, allows the selection of table spaces for certain resource manager database. The default table spaces will be preselected. If you want to use custom table spaces, you may select them now. We keep the default value and click Next. Copyright © 2004, 2009 IBM Page 92 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 61: IBM Content Manager Configuration-Resource Manager Table Spaces In the next panel as shown in Figure 62: IBM Content Manager Configuration-Resource Manager Application, we provide the information of WebSphere Application Server environment. We will specify the installation directory and the profile home directory. Since we are using a network deployment configuration, the profile home directory is the directory of the deployment manager. Because we have enabled application server security during the installation of WebSphere Application Server. So check the check box. And click Next. Copyright © 2004, 2009 IBM Page 93 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 62: IBM Content Manager Configuration-Resource Manager Application Next panel as shown in Figure 63: IBM Content Manager Configuration-WebSphere Application Server Security, provide the administration id and password for application server security. If you did not enable security on WebSphere Application Server, this panel is skipped. And click Next. Copyright © 2004, 2009 IBM Page 94 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 63: IBM Content Manager Configuration-WebSphere Application Server Security Next panel as shown in Figure 64: IBM Content Manager Configuration-Resource Manager Application, we leave the application name and application context at its default values. Changes are only required if you want to deploy multiple resource manager applications on the same server. Also keep the “Specify JCBC path for the WebSphere Application Server variable” checked. Click Next. Copyright © 2004, 2009 IBM Page 95 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 64: IBM Content Manager Configuration-Resource Manager Application Next panel as shown in Figure 65: IBM Content Manager Configuration-JDBC Library, We specify the directory to the Oracle JDBC libraries. You can change this value after the configuration completes in the WebSphere Application Server administrative console. And click Next. Copyright © 2004, 2009 IBM Page 96 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 65: IBM Content Manager Configuration-JDBC Library Next, the Content Manager configuration wizard will connect to WebSphere installation to detect application server and web server information. This might take some seconds to complete while it validates a large number of the parameters you have specified on the previous panels. The Content Manager configuration wizard detects, that we want do have a WebSphere Application Server Network Deployment environment and prompts if we want to deploy the resource manager application into a cluster or a stand-alone application server. Select cluster, as shown in Figure 66: IBM Content Manager Configuration-Resource Manager Deployment Target. Copyright © 2004, 2009 IBM Page 97 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 66: IBM Content Manager Configuration-Resource Manager Deployment Target Next panel as shown in Figure 67: IBM Content Manager Configuration-Resource Manager Cluster Information. Lists all detected WebSphere Application Server clusters. Select to cluster you've created for the resource manager application previously. The second field queries for the messaging database. Since we did not create these database definitions yet, keep the default value of jdbc/sibdb. We will later change this alias in WebSphere to point to our Oracle RAC database. Copyright © 2004, 2009 IBM Page 98 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 67: IBM Content Manager Configuration-Resource Manager Cluster Information Next, we are prompted to complete connection information for the resource manager application as shown in Figure 68: IBM Content Manager Configuration-HTTP Connection Information. For the host name, we suggest you use the virtual alias of your primary server. If you do have the possibility to use an IP/HTTP sprayer, specify the host name for this component. For the HTTP port, keep 80. This will use the IBM HTTP server and its load balancing features embedded in the WebSphere Application Server plug-in. The same applies for the HTTPS port: for now, keep the default port of 443. Then click Next. Copyright © 2004, 2009 IBM Page 99 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 68: IBM Content Manager Configuration-HTTP Connection Information Next panel as shown in Figure 69: IBM Content Manager Configuration-Resource Manager Storage Locations, queries for storage locations for the resource manager. The volume mount point must be a valid mounted volume, in our case the mount point of the NFS volume on the N3700. The second value, the staging directory, is only of interest when you are using Tivoli Storage Manager and/or LAN cache. If you plan to use these features, also place the staging directory on a shared directory between all your nodes, for example /lbosdata/staging. In our case we specify these two mount point is /lbosdata and /lbosdata/staging. You can change this location later in the Content Manager System Administration Client. Then click Next. Copyright © 2004, 2009 IBM Page 100 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 69: IBM Content Manager Configuration-Resource Manager Storage Locations The next panels as shown in Figure 70: IBM Content Manager Configuration-System Admin Client, provide information for client connections, as for example used by the Content Manager System Administration Client. On this first panel, keep the default selection of local. This selection stored configuration information locally to /export/home/ibmcmadm/cmgmt/connectors. Alternatively you could place this information remote on an HTTP or LDAP server. Then click Next. Copyright © 2004, 2009 IBM Page 101 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 70: IBM Content Manager Configuration-System Admin Client Next panel as shown in Figure 71: IBM Content Manager Configuration-System Admin Client Connection Information prompt to provide the simplified information for System Administration Client Connection information for our Oracle RAC environment. Then click Next. Copyright © 2004, 2009 IBM Page 102 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 71: IBM Content Manager Configuration-System Admin Client Connection Information The panel as shown in Figure 72: IBM Content Manager Configuration-Start Configuration is the Configuration summary, When you click on Next, the configuration settings are applied, the database will be created and the resource manager application will be deployed into WebSphere Application Server. Copyright © 2004, 2009 IBM Page 103 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 72: IBM Content Manager Configuration-Start Configuration The configuration will run for several minutes. First, it will create necessary table for the library server, and next create the access modules. The next component is the resource manager database followed by the deployment of the resource manager application. All actions are tracked into the configuration log file. Note that the configuration steps complete fast, since we did already create the database with the DBCA tool in a previous step. Next panel as shown in Figure 73: IBM Content Manager Configuration Complete means the configuration for Content Manager was done successfully. Click Finish to exit. Copyright © 2004, 2009 IBM Page 104 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 73: IBM Content Manager Configuration Complete 11.5 WebSphere Data source pretest configuration After Content Manager resource manager application configuration, We can see two additional data sources named icmrm_LS_database and icmrm_database. Content Manager resource manager gets database connections from a WebSphere connection pool. For performance reasons, DataSources created during Content Manager resource manager application installation do not, by default, validate connections obtained from the pool. In an HA environment, this could result in failed transactions as a result of database failover. To eliminate this issue, we can update DataSource properties so that connections from the WebSphere Application Server connection pool are validated. In Resources → JDBC → Data sources, select icmrm_LS_database to modify its data source properties, and then select “WebSphere Application Server data source properties”. Copyright © 2004, 2009 IBM Page 105 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 74: Data source properties In Pretest Connection Properties, enable “Pretest existing pooled connections”, and give a non-zero value for “Retry interval”. Also enable “Pretest new connections”. Figure 75: Pretest Connection Properties Also, repeat these steps for another data source: icmrm_database. Note: These options have performance impact, and we recommend setting them only when you have to reduce transaction error during fail over. Copyright © 2004, 2009 IBM Page 106 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 11.6 Additional Configuration of Resource Manager During the configuration of Content Manager, the resource manager application has been deployed into a WebSphere Application Server Network Deployment cluster. However, some configuration settings still are missing, such as the JDBC connection to our Oracle RAC database and the resource manager messaging database. The next steps will be performed in the WebSphere Application Server Integrated Solutions Console. Open the URL: https://cmsun17.cn.ibm.com:9043/ibm/console/logon.jsp where cmsun17.cn.ibm.com is your hostname and 9043 the port. 11.6.1 Modify Oracle JDBC Path In the Environment -> WebSphere variables, verify that ORACLE_JDBC_DRIVER_PATH environment variable is correctly set as shown in Figure 76: Update Resource Manager-JDBC Path, In fact, this was NOT the case by default. If the setting is not defined or specified incorrectly, you will receive a ClassNotFoundException. Figure 76: Update Resource Manager-JDBC Path If the path is not correct, Add or Modify the entries one by one as shown in Figure 77: Update Resource ManagerModify JDBC, The correct value is $ORACLE_HOME/jdbc/lib which is in our case /oracle/product/10.2/database/jdbc/lib. Copyright © 2004, 2009 IBM Page 107 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 77: Update Resource Manager-Modify JDBC 11.6.2 Modify JDBC Data Sources We will change the JDBC URL for both, the library server and resource manager databases. During configuration, settings have been defined for a non-RAC environment, meaning that no failover will take place. To update this setting to exploit the RAC features, navigate to Resources ->Data Sources. You should see a list of two data sources as shown in Figure 78: Update Resource Manager-Data Source. Figure 78: Update Resource Manager-Data Source Click on icmrm_LS_database. A new panel will appear as shown in Figure 79: Update Resource Manager-Data Source Properties. Scroll to the very bottom of this page, to the URL field. Update the JDBC URL in this field to a new value, simlar to: jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = cmsun17-vip)(PORT = Copyright © 2004, 2009 IBM Page 108 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = cmsun19-vip)(PORT = 1521))(LOAD_BALANCE = yes)(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = ICM_TAF.cn.ibm.com)(FAILOVER_MODE =(TYPE = SELECT)(METHOD = BASIC)(RETRIES = 180)(DELAY = 5)))) Notice, that both host names of the cluster are specified and that load balancing will be used. Type in the complete URL in a single line, changing host names and port numbers to match your environment. This URL is identical to the one we have used to connect JDBC type 4 client applications to our Content Manager server. Click on OK to submit your changes. Figure 79: Update Resource Manager-Data Source Properties Next, repeat the same steps for the resource manager data source icmrm_database. Type in the same JDBC URL After saved the setting, select all the data sources and click Test connection button. To verify the data source setting is correct as shown in Figure 80: Update Resource Manager-Data Source Connection Result. Figure 80: Update Resource Manager-Data Source Connection Result Copyright © 2004, 2009 IBM Page 109 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 11.6.3 Start WebSphere Network Deployment Cluster Now you can start the WebSphere Application Server Network Deployment cluster. In the WebSphere Integrated Solution Console, navigate to Server -> Clusters. Select your cluster RMCluster and click the start button. It might take a few minutes for all servers to start as shown in Figure 81: Update Resource Manager-Start Server. You can click on the small icon right next to status to refresh. Figure 81: Update Resource Manager-Start Server Next, you should verify in a browser, that the servers are available. The following is a list of URLs http://cmsun17.cn.ibm.com/icmrm/ICMResourceManager http://cmsun17-vip.cn.ibm.com /icmrm/ICMResourceManager http://cmsun19.cn.ibm.com/icmrm/ICMResourceManager http://cmsun17.cn.ibm.com:9080/icmrm/ICMResourceManager http://cmsun19.cn.ibm.com:9080/icmrm/ICMResourceManager https:// cmsun17.cn.ibm.com:9443/icmrm/ICMResourceManager https:// cmsun19.cn.ibm.com:9443/icmrm/ICMResourceManager 11.6.4 Modify Resource Manager Properties for SSL By default, the web servers that we installed only support http with port 80. Content Manager needs https support in some cases. As in Content Manager 8.4.2, https is only used for System Administration management by default. This will be optional and will not be described in this document. You can use default https port on any node or define IP sprayer to map to default https port directly. For the purposes of testing only, we chose to bypass the use of https. Instead, we will change the port number for https communication to bypass the IBM HTTP Server and talk directly to WebSphere Application Server. Note that we do not recommend this for production. Open the Content Manager System Administration Client and expand Resource Manager. Right click on our Copyright © 2004, 2009 IBM Page 110 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 resource manager “icmrm” and select properties. Change the port number for the https protocol to the one used by your WebSphere Application Server, most likely 9443. See Figure 82: Update Resource Manager-Resource Manager Properties. Figure 82: Update Resource Manager-Resource Manager Properties The drawback from this implementation is that, for administration, no load balancing will take place and no high availability is configured. Since Content Manager administration is typically less frequent, this might be acceptable. 11.6.5 IP Sprayer Definition As we have two web servers, we must define an IP sprayer to use both of them. Please see your WebSphere Application Server representative for the IP sprayer solution. We’ll not talk technology here, and just assume that IP address of cmrmapp is already assigned to this IP sprayer. Copyright © 2004, 2009 IBM Page 111 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 11.6.6 Updating Messaging Database Since we have deployed our resource manager application into a cluster, the members of this cluster must be able to exchange messages. This function is especially important for the background tasks such as migration, replication or asynchronous recovery and is mandatory to avoid having both nodes working on the same object. During the configuration phase, a Cloudscape database has been defined, but this database is neither highly available nor shared between the nodes in the cluster, so we need to replace this database. Since the Content Manager resource manager schema typically has a lighter runtime workload than the Content Manager library server schema, we suggest creating the SIB schema in the same database as your Content Manager resource manager schema. Depending upon your database architecture, this may mean you have all three schemas in the same database. Creating the SIB schema in the same database as your Content Manager resource manager schema automatically removes it as a SPOF since this database is already enabled for Oracle RAC. To define the corresponding data source in the WebSphere Application Server integrated solutions console, click Security -> Secure administration, applications, and infrastructure in the left panel. In the right panel, expand Java Authentication and Authorization Services and click on J2C authentication data, then on New. Create a J2C authentication alias (for example, SIBDB_USER), as shown in Figure 83: Update Resource Manager-J2C Authentication Data. For the user id provide sibadmin. We will later define this user in Oracle database, choose a password, Click Ok to submit your changes. Figure 83: Update Resource Manager-J2C Authentication Data Next, we need to create a JDBC provider. In the left panel, expand resources -> JDBC Providers. Make sure, the scope is set to Cluster (RMCluster) as shown in Figure 84: Update Resource Manager-Cluster Scope. Copyright © 2004, 2009 IBM Page 112 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 84: Update Resource Manager-Cluster Scope Then click New to Create a JDBC provider using the values as following shown in Figure 85: Update Resource Manager-Create JDBC Provider. Figure 85: Update Resource Manager-Create JDBC Provider Copyright © 2004, 2009 IBM Page 113 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Click Next. On the next panel, you should not need to change anything. Again click Next which will take you to the summary page as shown in Figure 86: Update Resource Manager-Create JDBC Provider Summary. Click on OK to create the JDBC provider. JDBC providers are used by the installed applications to access data from databases. Figure 86: Update Resource Manager-Create JDBC Provider Summary Next, we need to define the JDBC data source. In the left panel, expand Resources. JDBC -> Data Sources. For scope, select Cluster=RMCluster. Then click on New. Provide the value as following shown in Figure 87: Update Resource Manager-JDBC Data Source. Then click Next. Copyright © 2004, 2009 IBM Page 114 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 87: Update Resource Manager-JDBC Data Source Next panel as shown in Figure 88: Update Resource Manager-Select JDBC Provider, Select the option to choose an existing JDBC provider and select SIBDB Provider from the drop down list. Click Next. Copyright © 2004, 2009 IBM Page 115 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 88: Update Resource Manager-Select JDBC Provider The Step 3 as shown in Figure 89: Update Resource Manager-Enter properties. Provide the URL as below: jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = cmsun17-vip)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = cmsun19-vip)(PORT = 1521))(LOAD_BALANCE = yes)(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = ICM_TAF.cn.ibm.com)(FAILOVER_MODE =(TYPE = SELECT)(METHOD = BASIC)(RETRIES = 180)(DELAY = 5)))) Select “Oracle10g data store helper” in Data store helper class name and Uncheck “Use this data source in container managed persistence (CMP)”, Click Next. Figure 89: Update Resource Manager-Enter properties Next panel as shown in Figure 90: Update Resource Manager-Summary is the summary of the whole creation. Click Finish to submit our changes. Copyright © 2004, 2009 IBM Page 116 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 90: Update Resource Manager-Summary Then we will restart the Node Agents on nodes in the cluster. Click System Administration -> Node Agents. Restart the application server node agents as shown in Figure 91: Update Resource Manager-Restart Node Agents. If you do not restart the node agents, you will receive a SQLException during the Data source connection testing. Copyright © 2004, 2009 IBM Page 117 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 91: Update Resource Manager-Restart Node Agents Next, we have to add the user we have specified in the authentication alias and an additional table space as default tablespace for that created user to our Oracle database. Use sqlplus and connect as sysdba to the ICMNLSDB database. Submit the following two statements. SQL> create tablespace SIBDB_TBS 2 datafile '+DG1/icmnlsdb/SIBDB_TBS.dbf' size 500M 3 autoextend on 4 next 10M 5 maxsize unlimited; Tablespace created. SQL> create user sibadmin identified by pass4svt default tablespace SIBDB_TBS; User created. SQL> grant connect,resource to sibadmin; Copyright © 2004, 2009 IBM Page 118 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Grant succeeded In the right pane, click Resources -> JDBC -> Data Sources. Select the data source that you just created (SIBDB_datasource). Click Test Connection to verify that it works as shown in Figure 92: Update Resource Manager-Data Source Test. Figure 92: Update Resource Manager-Data Source Test In the left panel, click on Service integration -> Buses. as shown in Figure 93: Update Resource Manager-Buses, then click the icmrm_sibus. Figure 93: Update Resource Manager-Buses Under topologies as shown in Figure 94: Update Resource Manager-Messaging Engines (1), click messaging engines. Copyright © 2004, 2009 IBM Page 119 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 94: Update Resource Manager-Messaging Engines (1) Next panel as shown in Figure 95: Update Resource Manager-Messaging Engines (2), then click on RMCluster.000-icmrm_sibus. Copyright © 2004, 2009 IBM Page 120 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 95: Update Resource Manager-Messaging Engines (2) On the next panel as shown in Figure 96: Update Resource Manager-Messaging Engines (3). Click on message store under additional properties. Figure 96: Update Resource Manager-Messaging Engines (3) Copyright © 2004, 2009 IBM Page 121 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Change your settings as shown in Figure 97: Update Resource Manager-SIBDB Messaging Data Store, You will have to change the schema name and the authentication alias. If you want to allow WebSphere Application Server to create the necessary tables, keep the checkbox “Create tables” selected. In this case, you need to provide sibadmin the necessary priviledges. For security concerns, we recommend to manually create the necessary tables and grant privideges to sibadmin. Click OK to submit the changes. Next click the Save link to persist the changes. Figure 97: Update Resource Manager-SIBDB Messaging Data Store Previously you may have enabled the option to allow WebSphere Application Server to create the necessary tables automatically, however we did not grant the necessary rights. We prefer to create the tables manually, here are the sqlplus commands. CREATE TABLE sibadmin.SIBOWNER ( ME_UUID VARCHAR(16), INC_UUID VARCHAR(16), VERSION INTEGER, MIGRATION_VERSION INTEGER ); Copyright © 2004, 2009 IBM Page 122 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 CREATE TABLE sibadmin.SIBCLASSMAP ( CLASSID INTEGER NOT NULL, URI VARCHAR2(2048) NOT NULL, PRIMARY KEY(CLASSID) ); CREATE TABLE sibadmin.SIBLISTING ( ID INTEGER NOT NULL, SCHEMA_NAME VARCHAR2(10), TABLE_NAME VARCHAR2(10) NOT NULL, TABLE_TYPE CHAR(1) NOT NULL, PRIMARY KEY(ID) ); CREATE TABLE sibadmin.SIB000 ( ID NUMBER(19) NOT NULL, STREAM_ID NUMBER(19) NOT NULL, TYPE CHAR(2), EXPIRY_TIME NUMBER(19), STRATEGY INTEGER, REFERENCE NUMBER(19), CLASS_ID INTEGER NOT NULL, PRIORITY INTEGER, SEQUENCE NUMBER(19), PERMANENT_ID INTEGER, TEMPORARY_ID INTEGER, LOCK_ID NUMBER(19), DATA_SIZE INTEGER NOT NULL, LONG_DATA BLOB, XID VARCHAR(254), DELETED SMALLINT, PRIMARY KEY(ID) ) LOB(LONG_DATA) STORE AS (CACHE STORAGE(INITIAL 10M NEXT 10M)); CREATE INDEX sibadmin.SIB000STREAMIX ON wasadmin.SIB000(STREAM_ID,SEQUENCE); Copyright © 2004, 2009 IBM Page 123 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 CREATE TABLE sibadmin.SIB001 ( ID NUMBER(19) NOT NULL, STREAM_ID NUMBER(19) NOT NULL, TYPE CHAR(2), EXPIRY_TIME NUMBER(19), STRATEGY INTEGER, REFERENCE NUMBER(19), CLASS_ID INTEGER NOT NULL, PRIORITY INTEGER, SEQUENCE NUMBER(19), PERMANENT_ID INTEGER, TEMPORARY_ID INTEGER, LOCK_ID NUMBER(19), DATA_SIZE INTEGER NOT NULL, LONG_DATA BLOB, XID VARCHAR(254), DELETED SMALLINT, PRIMARY KEY(ID) ) LOB(LONG_DATA) STORE AS (CACHE STORAGE(INITIAL 10M NEXT 10M)); CREATE INDEX sibadmin.SIB001STREAMIX ON wasadmin.SIB001(STREAM_ID,SEQUENCE); CREATE TABLE sibadmin.SIB002 ( ID NUMBER(19) NOT NULL, STREAM_ID NUMBER(19) NOT NULL, TYPE CHAR(2), EXPIRY_TIME NUMBER(19), STRATEGY INTEGER, REFERENCE NUMBER(19), CLASS_ID INTEGER NOT NULL, PRIORITY INTEGER, SEQUENCE NUMBER(19), PERMANENT_ID INTEGER, TEMPORARY_ID INTEGER, LOCK_ID NUMBER(19), DATA_SIZE INTEGER NOT NULL, Copyright © 2004, 2009 IBM Page 124 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 LONG_DATA BLOB, XID VARCHAR(254), DELETED SMALLINT, PRIMARY KEY(ID) ) LOB(LONG_DATA) STORE AS (CACHE STORAGE(INITIAL 10M NEXT 10M)); CREATE INDEX sibadmin.SIB002STREAMIX ON wasadmin.SIB002(STREAM_ID,SEQUENCE); CREATE TABLE sibadmin.SIBXACTS ( XID VARCHAR2(254) NOT NULL, STATE CHAR(1) NOT NULL, PRIMARY KEY(XID) ); CREATE TABLE sibadmin.SIBKEYS ( ID VARCHAR2(50) NOT NULL, LAST_KEY NUMBER(19) NOT NULL, PRIMARY KEY(ID) ); GRANT SELECT,INSERT,UPDATE ON sibadmin.SIBOWNER TO sibadmin; GRANT SELECT,INSERT ON sibadmin.SIBCLASSMAP TO sibadmin; GRANT SELECT,INSERT ON sibadmin.SIBLISTING TO sibadmin; GRANT SELECT,INSERT,DELETE,UPDATE ON sibadmin.SIB000 TO sibadmin; GRANT SELECT,INSERT,DELETE,UPDATE ON sibadmin.SIB001 TO sibadmin; GRANT SELECT,INSERT,DELETE,UPDATE ON sibadmin.SIB002 TO sibadmin; GRANT SELECT,INSERT,UPDATE,DELETE ON sibadmin.SIBXACTS TO sibadmin; GRANT SELECT,INSERT,UPDATE ON sibadmin.SIBKEYS TO sibadmin; Now we have updated all settings in WebSphere Application Server and we have created the mandatory definitions in our Oracle database. Restart the two WebSphere Application Server nodes of our IBM Content Manager resource manager cluster (Servers -> Clusters -> RMCluster -> Stop / Start). After the restart completed, navigate again in the WebSphere Integrated Solutions Console to Service integration > Buses. In the right panel, click on icmrm_sibus. Under topologies, click messaging engines. Make sure that the status for RMCluster.000-icmrm_sibus is started as shown in Figure 98: Update Resource Manager-SIBDB Messaging Engine Status, indicated by the green icon. If the icon is red (stopped) or gray (unavailable), check the WebSphere log files to find the reason. Copyright © 2004, 2009 IBM Page 125 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 98: Update Resource Manager-SIBDB Messaging Engine Status 11.6.7 Client Configuration During the installation of any Content Manager client (IBM® DB2® Content Manager System Administration Client, IBM® DB2® Content Manager Client for Windows, IBM® DB2® Iinformation Integrator for Content connectors, and others) you are always prompted for connection information. In these panel, provide the database name (ICMNLSDB), database schema (icmadmin) and database type (Oracle). Do not provide additional details such as host names and port numbers. This will automatically create a configuration file (cmbicmsrvs.ini) with the following entries: ICMSERVER=ICMNLSDB ICMSERVERREPTYPE=ORACLE ICMSCHEMA=icmadmin ICMSSO= ICMDBAUTH= ICMREMOTE= ICMHOSTNAME= ICMPORT= ICMREMOTEDB= ICMNODENAME= ICMOSTYPE= ICMJDBCDRIVER= ICMJDBCURL= Depending on what client you want to use, additional configuration is necessary to allow the CM connector to communicate with the Oracle server. This first type of connections is for example used by the C++ version of the CM connector and the IBM Content Manager Client for Windows. It is relying on the OCI layer of Oracle. To use this kind of connection, of course Copyright © 2004, 2009 IBM Page 126 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 you must install the OCI layer of Oracle. Next, you must modify the Oracle network configuration file tnsnames.ora on the client machine. Typically you will find this file in $ORACLE_HOME/network/admin. The connection string in tnsnames.ora shows how to use an OCI connection in our environment. Please notice the two addresses in the address list. Both nodes of our Oracle RAC cluster are listed with its virtual addresses (in our case, cmsun17-vip and cmsun19-vip). Also notice the “LOAD_BALANCE = yes” option, which besides load balancing also provided failover capabilities. Since we have defined a Transparent Application Failover (TAF) service (in our case, ICM_TAF) in the Oracle server side and all the settings for failover mode were registered into data dictionary. Actually we can ignore the FAILOVER_MODE about connection string in tnsnames.ora. Refer to Oracle product documentation, Oracle(R) Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System or Oracle(R) Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide 10g Release 2 (10.2) for detailed information on configuring Net Service Names (tnsnames.ora File ) for OCI client configuration. JDBC Type 4 connections are by default used by any application using the CM Java API, such as the eClient Application Server or WEBi. The benefit of a type 4 connection is that you will just need to provide the library (jar file) containing the type 4 driver, but you don't have to install the complete Oracle client package. To enable type 4 connection, open your cmbicmsrvs.ini file in a text editor and modify the last line ICMJDBCURL. jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = cmsun17-vip)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = cmsun19-vip)(PORT = 1521))(LOAD_BALANCE = yes)(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = ICM_TAF.cn.ibm.com)(FAILOVER_MODE =(TYPE = SELECT)(METHOD = BASIC)(RETRIES = 180)(DELAY = 5)))) This sample shows a valid JDBC type 4 URL for our environment. You will have to replace at least the host names. Again, notice that this string lists both server addresses in the address list. All nodes of our Oracle RAC cluster are listed with its virtual addresses. Also notice the “LOAD_BALANCE = yes” option, which besides load balancing also provided failover capabilities. 11.6.8 Library Server Monitor The library server monitor is a part of the Content Manager library server, which completes periodic operations against the library server database, it is created automatically during the installation of the Content Manager library server component. In an environment using an Oracle database, its tasks are: Detects the availability of resource managers to a library server database. Counts concurrent users every 30 minutes. Updates document routing status for Suspend and Notify flags every 10 minutes. Compared with the previously version design , a new implementation for the LS monitor has been achieved in Content Manager Version 8.4.2, it installs a new PL/SQL-based library server monitor program that replaces the old C-based library server monitor executable, which has been deprecated. The PL/SQL monitor is a native Oracle PL/SQL package that runs entirely within the library server Oracle database instance. Since the PL/SQLbased library server monitor is embedded into the database, it is automatically able to take advantage of the shared-everything characteristic in Oracle RAC. The high availability for LS monitor can transparently be achieved along with the instance failover in the Oracle RAC environment. In another words, as it is embedded into the database the LS monitor will be failed over only when the database itself needs to be failed over. Make sure to remove the old library server monitor executable because accidentally running it at the same time as the new one could corrupt your library server data. Aside from the high availability feature for LS monitor, it also features the following security advantages over the deprecated library server monitor for previously version: Copyright © 2004, 2009 IBM Page 127 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 On UNIX®, the PL/SQL monitor does not require root access and SYSDBA database privileges. On UNIX, the PL/SQL monitor does not modify /etc/inittab to start automatically (rc.cmlsproc). On UNIX, the PL/SQL monitor does not create a configuration file in root-owned /var. On Windows®, the PL/SQL monitor does not start automatically as a service. On Windows, the PL/SQL monitor does not require the existence of a privileged operating system user. The PL/SQL monitor does not require operating system users. The PL/SQL monitor does not require or store any database user ID or password information. The PL/SQL monitor does not require a separate binary executable running on your Oracle server. You can start the new PL/SQL based library server monitor by entering the following SQL statements set serveroutput on execute icmlsmon.startmonitor You can stop the new PL/SQL based library server monitor by entering the following SQL statement: set serveroutput on execute icmlsmon.stopmonitor You can restore the library server monitor to its default configuration by rerunning the icmlsmon.plb script under the f$IBMCMROOT/config directory. Content Manager will automatically run this script during every fix pack configuration. The status of the LS monitor can be viewed at any time by querying the USER_SCHEDULER_RUNNING_JOBS view in your library server administration schema (in our case, icmadmin). Only the library server administrator user can start or stop the monitor, and in Oracle RAC environment only one instance of the monitor should be active at any time. Otherwise, the monitor will abort and try to log the invalid access or usage attempts. The monitor logs errors in the library server log file, and runs according to the Oracle schedule created during the library server configuration. To change the location of the monitor log (for example, to synchronize with a new library server log location), modify the Oracle database DIRECTORY object LS_LOG_DIR by entering the following SQL command: create or replace directory ls_log_dir as 'C:\IBM\db2cmv8\log\icmnlsdb'; where C:\IBM\db2cmv8\log\icmnlsdb represents the default location of your library server log. Notes: Please always use the system administration client to modify the resource manager heartbeat interval (defined in the Oracle schedule as ICM_MON_RMSTAT_SCHED) and the document routing interval (defined in the Oracle schedule as ICM_MON_DOCROUTING_SCHED). If you try to change these values through Oracle itself tool (for example, using the Enterprise Manager or SQLPLUS), then Content Manager will automatically reset the Oracle schedule intervals back to their original values. Also, do not tamper with the Oracle program objects associated with the PL/SQL monitor. Exception: You can use Oracle itself tool to modify the Oracle schedule interval for number of active users (defined in the Oracle schedule as ICM_MON_USERCOUNT_SCHED). Copyright © 2004, 2009 IBM Page 128 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 12. Validation and Test In this chapter, we describe how you can validate that all components in the configuration are working and that load is actually balanced across the components. Further we discuss how the different Content Manager components will react to outages of other components and how to recover from such situations. 12.1 Validating Active Components In this chapter, we will review how to identify active components in our Content Manager environment. It's a collection of tools, scripts and log files which are frequently used for analysis. 12.1.1 Node Application and Database (Library Server, Resource Manager Database) The Node application and database is in our case a combination of: the GSD components (online – online on two nodes) the ONS components (online – online on two nodes) the VIP components (online – online on two nodes) the TAF Service components (online - online on two nodes) the Listener components (online – online on two nodes) the ASM instance (active – active on two nodes) the icmnlsdb instance (active – active on two nodes) All of these components are managed by Oracle® Cluster Ready Service (CRS) – the cluster ready service component of our RAC configuration. To validate, if all components (such as Database Instance, ASM Instance, Service, Nodeapps etc) are running, we can use the crs_stat or srvctl command-line utility, these utility not only validate all database components status, but also to start and stop them. Refer to Oracle product documentation, Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide 10g Release 2 (10.2) for Solaris Operating System, or Oracle® Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide 10g Release 2 (10.2) , for more information on using crs_stat and srvctl to manage Oracle Database software components. To verify that both nodes are actually used by Content Manager, you can query the session information from Oracle. For the Content Manager library server especially, you can also have a look at the operating system level, as every connection causes the creation of an extproc32 process. Counting these processes, for example using ps -ef | grep extproc32 | grep -v grep | wc -l provides an overview of existing Content Manager client connections to the current server. 12.1.2 Application Server (Resource Manager) In the described configuration, a clustered WebSphere Application Server configuration is used. It consists of: ● one deployment manager (only installed on node cmsun17) ● two node agents (one on cmsun17 and one on cmsun19), which act as helpers for the deployment managers ● two application servers, RMCMSUN17 (node cmsun17) and RMCMSUN19 (node cmsun19) The deployment manager is only used for administrative tasks and provides the Integrated Solutions Console to administrate all components of WebSphere Application Server, including the HTTP server. To start the deployment manager, run following command on node cmsun17: Copyright © 2004, 2009 IBM Page 129 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 # /opt/IBM/WebSphere/AppServer/bin/startManager.sh ADMU0116I: Tool information is being logged in file /opt/IBM/WebSphere/AppServer/profiles/Dmgr01/logs/dmgr/startServer.log ADMU0128I: Starting tool with the Dmgr01 profile ADMU3100I: Reading configuration for server: dmgr ADMU3200I: Server launched. Waiting for initialization status. ADMU3000I: Server dmgr open for e-business; process id is 40576 The deployment manager is not required at runtime for the Content Manager resource manager component. The same applies for the node agents, which are helper applications for the deployment managers and perform functions such as configuration updates and remote start and stop operations. To start one of the node agents on both nodes: # /opt/IBM/WebSphere/AppServer/profiles/Custom01/bin/startNode.sh ADMU0116I: Tool information is being logged in file /opt/IBM/WebSphere/AppServer/profiles/Custom01/logs/nodeagent/startServer.log ADMU0128I: Starting tool with the Custom01 profile ADMU3100I: Reading configuration for server: nodeagent ADMU3200I: Server launched. Waiting for initialization status. ADMU3000I: Server nodeagent open for e-business; process id is 40533 The only mandatory components for Content Manager at runtime are the two application servers RMCMSUN17 and RMCMSUN19. In earlier chapters, these servers have been started from the WebSphere Application Server Integrated Solutions Console. These servers can also be started on a command line, here an example for the server on RMCMSUN17: # /opt/IBM/WebSphere/AppServer/profiles/Custom01/bin/startServer.sh RMCMSUN17 ADMU0116I: Tool information is being logged in file /opt/IBM/WebSphere/AppServer/profiles/Custom01/logs/RMCMSUN17/startServer.log ADMU0128I: Starting tool with the Custom01 profile ADMU3100I: Reading configuration for server: RMCMSUN17 ADMU3200I: Server launched. Waiting for initialization status. ADMU3000I: Server RMCMSUN17 open for e-business; process id is 41765 To verify the distribution of incoming requests, access logging can be used. To enable the access log, open the WebSphere Application Server Integrated Solutions Console. Navigate to Servers → Application Servers → RMCMSUN17/RMCMSUN19 → Web Container Settings → Web container transport chains → WCInboundDefault → HTTP Inbound Channel (HTTP 2). Enable the checkbox “Enable access and error logging” and click apply. Then click on “HTTP error and NCSA access logging” and select the check box “Enable service at server startup”. Click apply and save your changes. Apply the same changes for the other application server, then restart the cluster. Every incoming request is now added to the $SERVER_LOG_ROOT/http_access.log. Copyright © 2004, 2009 IBM Page 130 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 12.1.3 HTTP Server (Resource Manager) An IBM HTTP Server is used to route and load-balance incoming client requests via HTTP to the WebSphere Application Server. These two components are connected with the IBM HTTP Server Plug-In. Normally, the load between the two application servers is load-balanced in around-robin fashion. If one of the application servers becomes unavailable, all load is redirected to the available one. To start the IBM HTTP Server, run the following command on both nodes: # /opt/IBM/HTTPServer/bin/apachectl start The HTTP Server logs all requests into an activity log file, by default into /opt/IBM/HTTPServer/logs/access_log. This will provide an overview about all incoming requests. The details which are captured can be configured in the httpd.conf file. Note: The configuration discussed in this white paper installs and configures two active HTTP Servers. However, only one is actually used in our test environment. To eliminate this single point of failure, we recommend the configuration of an IP sprayer in front of both HTTP servers. Content Manager library server configuration data for the Content Manager resource manager can be set to reflect the IP sprayer address instead of individual WebSphere Application Server servers. Depending on the IP sprayer chosen, requests to the RM application may be load balanced across the HTTP servers and automatically re-directed in the event an HTTP server fails. 12.2 IBM Content Manager Component Failures This chapter summarizes, what happens if a certain component of the Content Manager stack fails. Most of the time, the recovery will be automatic and frequently unnoticeable for the end user. However, operational procedures should be in place, making sure that corrective actions are taken. 12.2.1 Database (Library Server, Resource Manager Database) The database is probably the most important components of Content Manager, as all other parts do have a dependency on it. The database is configured in an Oracle RAC environment, using two Oracle database instances on two servers. If one of the servers becomes unavailable, Oracle CRS will notice this error. Also, client requests will be moved to the remaining active Oracle database instance. In case a connection is already established to the failing Oracle instance, this connection will be disconnected. An immediate reconnect is possible. If a transaction is in progress on the failing instance, this transaction will be rolled back. The following is a list of components that access the database. The list also contains a description of the behavior, when the component loses an active connection to a failing Oracle database instance. In common for all components is an error condition (rollback) when a transaction is in progress on the failing instance. Application using Content Manager Java API (eClient, Content Manager System Administration Client, WEBi, custom applications): The connection to the server is lost. An exception will be thrown. Immediate reconnect is possible and can be implemented silently in the application. If no automatic reconnect is implemented, the user must log-in again. Application using Content Manager C++ API (custom applications): The connection to the server is lost. An exception will be thrown. Immediate reconnect is possible and can be implemented silently in the application. If no automatic reconnect is implemented, the user must log-in again. Content Manager Client for Windows: The Content Manager Client for Windows automatically drops a connection after 30 seconds of inactivity. A new connection will be seamlessly established after this period. If the user initiates a request before the 30 seconds timeout, an error message will be displayed. Content Manager resource manager: An error message will be captured in the log of the resource manager application server. Also, the first request to the resource manager may fail will a database connection error and Copyright © 2004, 2009 IBM Page 131 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 the transaction will be rolled back. Subsequent requests will work normally. This behavior applies to the resource manager servlet as well as to the services such as migrator, replicator etc. 12.2.2 Application Server (Resource Manager) Request to the two application servers in the WebSphere Application Server Network Deployment cluster are balanced by the IBM HTTP Server plug-in. If one application server becomes unavailable, subsequent requests will be routed to the remaining active servers. 12.2.3 HTTP Server (Resource Manager) The HTTP Server, if configured like described in this document, is a single point of failure. If the HTTP Server becomes unavailable, access to the resource manager for client requests become impossible. All transactions, which include the resource manager, will fail. To mitigate this risk, we recommend configuring an IP sprayer in front of the HTTP Server. This document already included all steps to setup a second HTTP Server, only the routing of the requests to the second HTTP Server is missing. 13. Appendix This chapter contains links to product documentation and other whitepapers, which can be useful for your installation. 13.1 Reference Links ● http://publib.boulder.ibm.com/infocenter/cmgmt/v8r4m0/index.jsp (IBM Content Manager 8.4 Information Center) ● http://www-01.ibm.com/support/docview.wss?uid=swg27005017 (IBM Content Manager in a Microsoft Cluster Services environment) ● http://www-01.ibm.com/support/docview.wss?uid=swg27010429 (IBM Content Manager 8.3 using Oracle 9i in a Real Application Cluster on Windows) ● http://www-01.ibm.com/support/docview.wss?uid=swg27005020 (IBM Content Manager in an AIX Cluster environment) ● http://www-01.ibm.com/support/docview.wss?uid=swg27005016 (IBM Content Manager in a SUN Cluster environment) ● http://www-01.ibm.com/support/docview.wss?uid=swg27010966 (IBM Content Manager using DB2 HADR and Content Manager Replication) 13.2 List of Figures Figure 1: Overall Scenario (2 Node Configuration) ....................................................................................................17 Figure 2: DS4200 Configuration .................................................................................................................................19 Figure 3: IBM N3700 Volume Definition ...................................................................................................................20 Figure 4: WebSphere Application Server Network Deployment Installation-Welcome Screen .................................36 Figure 5: WebSphere Application Server Network Deployment Installation-License Agreement .............................37 Figure 6: WebSphere Application Server Network Deployment Installation-Prerequisite Check ..............................38 Figure 7: WebSphere Application Server Network Deployment Installation-Sample Applications ...........................39 Figure 8: WebSphere Application Server Network Deployment Installation-Directory Path .....................................40 Figure 9: WebSphere Application Server Network Deployment Installation-Environments ......................................41 Copyright © 2004, 2009 IBM Page 132 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 10: WebSphere Application Server Network Deployment Installation-Profile Warning.................................41 Figure 11: WebSphere Application Server Network Deployment Installation-Summary...........................................42 Figure 12: WebSphere Application Server Network Deployment Installation-Result ................................................43 Figure 13: IBM HTTP Server-Welcome Screen .........................................................................................................44 Figure 14: IBM HTTP Server-License Agreement .....................................................................................................45 Figure 15: IBM HTTP Server-System Prerequisite Check..........................................................................................46 Figure 16: IBM HTTP Server-Installation Directory ..................................................................................................47 Figure 17: IBM HTTP Server-Port Values Assignment..............................................................................................48 Figure 18: IBM HTTP Server-HTTP Administration Server Authentication..............................................................49 Figure 19: IBM HTTP Server-Setup HTTP Administration Server ............................................................................50 Figure 20: IBM HTTP Server-Plug-In for WebSphere Application Server ................................................................51 Figure 21: IBM HTTP Server-Installation Summary ..................................................................................................52 Figure 22: IBM HTTP Server-Installation Result .......................................................................................................53 Figure 23: PMT-Welcome Screen ...............................................................................................................................55 Figure 24: PMT-Environment Selection......................................................................................................................56 Figure 25: PMT-Profile Creation Options ...................................................................................................................57 Figure 26: PMT-Administrative Security ....................................................................................................................58 Figure 27: PMT-Deployment Manager Summary.......................................................................................................59 Figure 28: PMT-Deployment Manager Installation Result .........................................................................................60 Figure 29: PMT Federation-Environment Selection....................................................................................................61 Figure 30: PMT Federation-Profile Creation Options .................................................................................................62 Figure 31: PMT Federation-Federation Information ...................................................................................................63 Figure 32: PMT Federation-Profile Creation Summary ..............................................................................................64 Figure 33: WebSphere Application Server Network Deployment Create a new Cluster (1).......................................65 Figure 34: WebSphere Application Server Network Deployment Create a new Cluster (2).......................................66 Figure 35: WebSphere Application Server Network Deployment Create a new Cluster (Summary) .........................67 Figure 36: WebSphere Application Server Network Deployment Create a new Cluster (Save Changes) ..................67 Figure 37: New Web Server Definition (1) .................................................................................................................68 Figure 38: New Web Server Definition (2) .................................................................................................................69 Figure 39: New Web Server Definition (3) .................................................................................................................69 Figure 40: New Web Server Definition (Summary)....................................................................................................70 Figure 41: New Web Server Definition (Save Changes).............................................................................................70 Figure 42: Web Server Start ........................................................................................................................................70 Figure 43: IBM Content Manager-Software License Agreement................................................................................73 Figure 44: IBM Content Manager-Installation Destination.........................................................................................74 Figure 45: IBM Content Manager-Components Selection ..........................................................................................75 Figure 46: IBM Content Manager-Server Database Type ...........................................................................................76 Figure 47: IBM Content Manager-Summary Information...........................................................................................77 Figure 48: IBM Content Manager Configuration-Welcome Screen............................................................................81 Figure 49: IBM Content Manager Configuration-Components Selection ...................................................................81 Figure 50: IBM Content Manager Configuration-Database Type ...............................................................................82 Figure 51: IBM Content Manager Configuration-Administrative User.......................................................................83 Figure 52: IBM Content Manager Configuration-System Information .......................................................................84 Figure 53: IBM Content Manager Configuration-Oracle Home..................................................................................85 Figure 54: IBM Content Manager Configuration-Library Server Information............................................................86 Figure 55: IBM Content Manager Configuration-JDBC Information .........................................................................87 Figure 56: IBM Content Manager Configuration-Library Server Connection User....................................................88 Figure 57: IBM Content Manager Configuration-Library Server Table Space ...........................................................89 Figure 58: IBM Content Manager Configuration-Library Server Database Settings ..................................................90 Figure 59: IBM Content Manager Configuration-Resource Manager Name ..............................................................91 Figure 60: IBM Content Manager Configuration-JDBC Information .........................................................................92 Figure 61: IBM Content Manager Configuration-Resource Manager Table Spaces...................................................93 Figure 62: IBM Content Manager Configuration-Resource Manager Application .....................................................94 Figure 63: IBM Content Manager Configuration-WebSphere Application Server Security .......................................95 Figure 64: IBM Content Manager Configuration-Resource Manager Application .....................................................96 Figure 65: IBM Content Manager Configuration-JDBC Library ................................................................................97 Copyright © 2004, 2009 IBM Page 133 of 134 IBM Content Manager v8.4.2 using Oracle RAC on Solaris 2009.12.28 Figure 66: IBM Content Manager Configuration-Resource Manager Deployment Target .........................................98 Figure 67: IBM Content Manager Configuration-Resource Manager Cluster Information.........................................99 Figure 68: IBM Content Manager Configuration-HTTP Connection Information....................................................100 Figure 69: IBM Content Manager Configuration-Resource Manager Storage Locations .........................................101 Figure 70: IBM Content Manager Configuration-System Admin Client ..................................................................102 Figure 71: IBM Content Manager Configuration-System Admin Client Connection Information ...........................103 Figure 72: IBM Content Manager Configuration-Start Configuration ......................................................................104 Figure 73: IBM Content Manager Configuration Complete......................................................................................105 Figure 74: Data source properties..............................................................................................................................106 Figure 75: Pretest Connection Properties ..................................................................................................................106 Figure 76: Update Resource Manager-JDBC Path ....................................................................................................107 Figure 77: Update Resource Manager-Modify JDBC ...............................................................................................108 Figure 78: Update Resource Manager-Data Source ..................................................................................................108 Figure 79: Update Resource Manager-Data Source Properties .................................................................................109 Figure 80: Update Resource Manager-Data Source Connection Result ....................................................................109 Figure 81: Update Resource Manager-Start Server ...................................................................................................110 Figure 82: Update Resource Manager-Resource Manager Properties .......................................................................111 Figure 83: Update Resource Manager-J2C Authentication Data...............................................................................112 Figure 84: Update Resource Manager-Cluster Scope................................................................................................113 Figure 85: Update Resource Manager-Create JDBC Provider ..................................................................................113 Figure 86: Update Resource Manager-Create JDBC Provider Summary..................................................................114 Figure 87: Update Resource Manager-JDBC Data Source........................................................................................115 Figure 88: Update Resource Manager-Select JDBC Provider...................................................................................116 Figure 89: Update Resource Manager-Enter properties ............................................................................................116 Figure 90: Update Resource Manager-Summary ......................................................................................................117 Figure 91: Update Resource Manager-Restart Node Agents.....................................................................................118 Figure 92: Update Resource Manager-Data Source Test...........................................................................................119 Figure 93: Update Resource Manager-Buses ............................................................................................................119 Figure 94: Update Resource Manager-Messaging Engines (1) .................................................................................120 Figure 95: Update Resource Manager-Messaging Engines (2) .................................................................................121 Figure 96: Update Resource Manager-Messaging Engines (3) .................................................................................121 Figure 97: Update Resource Manager-SIBDB Messaging Data Store ......................................................................122 Figure 98: Update Resource Manager-SIBDB Messaging Engine Status .................................................................126 13.3 List of Tables Table 1: Logical Drive definitions on DS4200............................................................................................................18 Table 2: IP Configuration ............................................................................................................................................21 Table 3: Users and Groups ..........................................................................................................................................23 Table 4: Storage Allocation .........................................................................................................................................26 Table 5: Oracle Clusterware 10.2.0.1 ..........................................................................................................................32 Table 6: Oracle Database 10.2.0.1...............................................................................................................................34 Table 7: Oracle ASM Disk Groups..............................................................................................................................34 Table 8: Database Creation Options ............................................................................................................................78 Table 9: Oracle TAF Service.......................................................................................................................................79 Copyright © 2004, 2009 IBM Page 134 of 134