Move Plans Properties Customizing Move Plans When Moving Components

20-30 Oracle Fusion Middleware Administrators Guide Table 20–13 describes the properties you can customize for Oracle SOA Suite. In addition to the properties listed in Table 20–11 and Table 20–13 , the properties for Oracle B2B channels are in the B2B Channels group. However, because B2B channels can be in various forms, there are no standard properties for a channel. When you extract a move plan, that move plan contains the properties for the current channels in the source environment. Edit the properties to specify values for the target environment. The following example shows a portion of a move plan for B2B channels: movableComponent componentTypeB2BcomponentType moveDescriptor configGroup typeB2B Channelstype configProperty id=Channel1 configProperty namefile-param-is_binaryname valuevalue itemMetadata dataTypeSTRINGdataType scopeREAD_WRITEscope itemMetadata configProperty configProperty namefile-param-markername valuevalue itemMetadata dataTypeSTRINGdataType scopeREAD_WRITEscope itemMetadata configProperty Table 20–14 describes the properties you can customize for Oracle HTTP Server. For Oracle HTTP Server, there are many configGroup elements in the move plan. Each configGroup element is associated with one Oracle HTTP Server configuration file. As a result, there may be more than one instance of a particular property, such as User. Table 20–13 Move Plan Properties for Oracle SOA Suite Properties Description Sample Value SOA Composites Configuration The following property is in the Composite group: Config Plan Location The location of the configuration plan to be used during movement to the target to redeploy the composite application. The path can be absolute, or relative to the location of the move plan. The plan is extracted during the extractMovePlan script. scratchappconfig_ plan.xml Table 20–14 Move Plan Properties for Oracle HTTP Server Properties Description Sample Value Listen The Listen address. It can include the host name and port or just the port. orcl3.example.com:8888 or 8888 User The Oracle HTTP Server administration user admin_user Using the Movement Scripts 20-31 Group The group for the user admin_group1 ServerAdmin The administrators email address Webmasterexample.com ServerName The name of the server for Oracle HTTP Server. If the host does not have a registered DNS name, use the IP address. orcl1.example.com WebLogicHost The name of the host on which Oracle WebLogic Server is listening for requests orcl2.example.com WebLogicPort The port number that Oracle WebLogic Server uses to listen for requests 9002 WebLogicCluster The name of the host on which an Oracle WebLogic Server cluster is running and its port number orcl3.example.com:9003 VirtualHost The name of the virtual host. The port number listed should also be listed in the Listen directive. .8888 PlsqlDatabasePassword Specific to the PLSQL module, the name of a secure file containing the password. You must provide a password file, even if you are not changing the configuration. scratchorclpass.txt PlsqlDatabaseConnectString Specific to the PLSQL module, the service name of the database orcl.example.com:1521:orcl1 PlsqlNLSLanguage Specific to the PLSQL module, the NLS_ LANG variable for the database access descriptor DAD America_America.UTF8 ORAConnectSN Specific to the oradav module, the Oracle database to which to connect db_host:db_port:db_service_name ORAUser Specific to the oradav module, the database user schema to use when connecting to the service specified by the ORAConnectSN property db6175_PORTAL ORACRYPTPASSWORD Specific to the oradav module, the absolute path to the secure file containing the password for oradav. You must provide a password file, even if you are not changing the configuration scratchoraclepassword.txt SSLWallet The location of the SSL wallet, if the wallet is not in the default location scratchoraclemw_homeORACLE_ INSTANCEconfigOHSohs1keystore smywallets DocumentRoot The directory that stores the main content for the Web site scratchoraclemw_homeORACLE_ INSTANCEconfigohsohs1htdocs Alias The location of the alias, if it is not in the default location. Note that you change the value within the double quotation marks. iconsscratchorclicons ScriptAlias The location of the script alias, if it is not in the default location. Note that you change the value within the double quotation marks. cgi-binscratchoraclcgi-bin WebGateInstalldir The location of the WebGate installation directory, as specified in the webgate.conf file scratchoraclemw_homeOracle_ OAMWebGate1webgateohs Table 20–14 Cont. Move Plan Properties for Oracle HTTP Server Properties Description Sample Value 20-32 Oracle Fusion Middleware Administrators Guide Table 20–15 describes the properties that you can change for the move plan for Oracle Internet Directory. Table 20–16 describes the properties that you can change for the move plan for Oracle Virtual Directory. Table 20–15 Move Plan Properties for Oracle Internet Directory Properties Description Sample Value OID Non SSL Port The non-SSL port for Oracle Internet Directory. If you do not provide a port number or if the port number you provide is not available, the operation uses an available port. 3060 OID SSL Port The SSL port for Oracle Internet Directory. If you do not provide a port number or if the port number you provide is not available, the operation uses an available port. 3131 Namespace The Oracle Internet Directory namespace. dc=us,dc=oracle,dc=com OID Admin Password The absolute path of a secure file containing the password for the Oracle Internet Directory administrator. You must provide a password file, even if you are not changing the configuration. scratchoraclepass_oid.txt ODS Schema Password The absolute path of a secure file containing the password for the ODS schema, which is the schema that contains metadata for Oracle Internet Directory. You must provide a password file, even if you are not changing the configuration. scratchoraclepass_ods.txt ODSSM Schema Password The absolute path of a secure file containing the password for the ODSSM schema, which is used to access server manageability information for Oracle Internet Directory from the database. You must provide a password file, even if you are not changing the configuration. scratchoraclepass_odssm.txt DB Host Name The host name on which the database is running, which can be found in the tnsnames.ora file example.com DB Port The port number of the database listener, which can be found in the tnsnames.ora file 1521 DB Service Name The service name for the database, which can be found in the tnsnames.ora file orcl.example.com Table 20–16 Move Plan Properties for Oracle Virtual Directory Properties Description Sample Value OVD Non SSL Port The LDAP non-SSL port number for Oracle Virtual Directory. If you do not provide a port number or if the port number you provide is not available, the operation uses the next available port. 6501 OVD SSL Port The LDAP SSL port number for Oracle Virtual Directory. If you do not provide a port number or if the port number you provide is not available, the operation uses the next available port. 7501 Using the Movement Scripts 20-33

20.4.3 Move Plan for Node Manager

Table 20–17 describes the properties you can customize for Node Manager. OVD Admin Port The administration port number for Oracle Virtual Directory. If you do not provide a port number or if the port number you provide is not available, the operation uses the next available port. 8899 OVD Http Port The HTTP listener port number for Oracle Virtual Directory. 8080 host.port The host name and port for the Oracle Virtual Directory adapter. example.com:3060 username The user name for the Oracle Virtual Directory adapter. cn=orcladmin root The root for the Oracle Virtual Directory adapter. dc=us,dc=oracle,dc=com remotebase The remote base for the Oracle Virtual Directory adapter. dc=us,dc=oracle,dc=com password The absolute path of a secure file containing the password for the Oracle Virtual Directory adapter user. scratchoracleovd_pass.txt Table 20–17 Move Plan Properties for Node Manager Property Description Sample Value Node Manager Configuration The following properties are in the NODE_MANAGER_PROPERTIES group: Listen Address The Listen address of Node Manager example.com Listen Port The number of the Listen port of Node Manager 5557 Custom Identity KeyStore File The absolute path of the custom identity keystore file location. This property is present in the move plan only if the source environment is configured with SSL. scratchOracleMiddlewarewlserver_ 10.3serverlibexample_identity.jks Custom Identity Private Key Alias The value of the identity key store alias. This property is present in the move plan only if the source environment is configured with SSL. Custom Identity Private Key Passphrase File The absolute path to the secure file containing the private key used when creating a certificate. This property is present in the move plan only if the source environment is configured with SSL. scratchpass.txt Domain Configuration The following properties are in the DOMAINS group: Domain Name The name of the domain SOA_domain Table 20–16 Cont. Move Plan Properties for Oracle Virtual Directory Properties Description Sample Value 20-34 Oracle Fusion Middleware Administrators Guide Domain Location The absolute path of the domain location scratchOracleMiddlewareuser_ projectsdomainsSOA_domain AdminServer Listen Address The Listen address of the Administration Server example.com AdminServer Listen Port The number of the Listen port of the Administration Server 7001 AdminServer User Name The administration user name. weblogic AdminServer Password The absolute path to the secure file containing the administration users password scratchpass.txt Node Manager User Name The Node Manager user name weblogic Node Manager Password The absolute path to the secure file containing the Node Manager users password scratchpass.txt Table 20–17 Cont. Move Plan Properties for Node Manager Property Description Sample Value 21 Moving from a Test to a Production Environment 21-1 21 Moving from a Test to a Production Environment This chapter describes how to move Oracle Fusion Middleware from a test environment to a production environment. You can develop and test applications in a test environment, and then eventually roll out the test applications and, optionally, test data to your production environment. You can also use this approach for testing and rolling out upgrades. This chapter includes the following topics: ■ Introduction to Moving Oracle Fusion Middleware Components ■ Overview of Procedures for Moving from a Test to a Production Environment ■ Common Procedures for Moving to a Production Environment ■ Moving Oracle Fusion Middleware Components ■ Considerations in Moving to and from an Oracle RAC Environment ■ Limitations in Moving from Test to Production ■ Recovering from Test to Production Errors

21.1 Introduction to Moving Oracle Fusion Middleware Components

You can move Oracle Fusion Middleware components from one environment to another environment, such as moving from a test environment to a production environment. Moving Oracle Fusion Middleware components minimizes the amount of work that would otherwise be required to reapply all the customization and configuration changes made in one environment to another. You can install, configure, customize, and validate Oracle Fusion Middleware in a test environment. Once the system is stable and performs as desired, you can create the production environment by moving a copy of the components and their configurations from the test environment, instead of redoing all the changes that were incorporated into the test environment. If you have an existing production environment, you can move any modifications of the test environment, such as customizations, to the production environment. 21-2 Oracle Fusion Middleware Administrators Guide

21.2 Overview of Procedures for Moving from a Test to a Production Environment

This section describes the general steps in moving installations from a test environment to a production environment. It assumes that you have prepared the test environment, as described in Section 21.3.1 . The general steps are: 1. If your environment uses a database, create a new database or copy the database from the test environment to the production environment. See Section 21.3.2 . Note that the database in the production environment must be the same type of database as in the test environment. For example, if the database in the test environment is an Oracle Database, the database in the production environment must be an Oracle Database. 2. Move Oracle Identity Management to a production environment. See Section 21.4.1 . 3. Move a copy of the Middleware home for the component or suite from the test environment to the production environment using the copyBinary and pasteBinary commands, as described in Section 21.3.3 . 4. Move a copy of the configuration of components, as described in Section 21.3.4 or Section 21.3.5 . In most cases, you use the copyConfig, extractMovePlan, and pasteConfig scripts. 5. Move other data, such as UMS user messaging preferences, data for Oracle WebCenter applications, or Oracle Web Cache configuration files. Modify any information that is specific to the new environment such as host name or ports. See Section 21.4 for information specific to each component.

21.3 Common Procedures for Moving to a Production Environment

Many of the Oracle Fusion Middleware components use some of the same procedures to move from a test environment to a production environment. This section describes those procedures. This section contains the following topics: ■ Preparing the Test Environment ■ Installing the Database on the Production Environment Note: ■ The production environment must be on the same operating system as the test environment. Also, the operating system architecture must be the same in both environments. For example, both environment must be running 32-bit operating systems or 64-bit operating systems. ■ The target environment must have the same superuser or administrative user as the user at the source environment. The users password can be different; you specify it on the command line when you use the pasteConfig command. After you complete the movement of the installation, you can modify the user on the target environment. Moving from a Test to a Production Environment 21-3 ■ Moving the Middleware Home and the Binary Files ■ Moving the Configuration of Java Components ■ Moving the Configuration of System Components ■ Configuring Users, Groups, Security Polices, and Credential Stores for Components

21.3.1 Preparing the Test Environment

The scenarios in this chapter assume that you have installed and configured Oracle Fusion Middleware on the test environment, including some or all of the following: ■ Installing one or more databases to be used by Oracle Fusion Middleware components such as Identity Management, Oracle SOA Suite, or Oracle WebCenter. ■ Creating needed schemas using RCU. ■ Installing and configuring Identity Management. This can include creating the desired LDAP trees and entries, in particular, users and groups for Oracle Internet Directory, creating adapters to data sources for Oracle Virtual Directory, creating policies for Oracle Web Services Manager. In addition, it can include configuring self-signed certificates for SSL. In a production environment, you use trusted CA-signed certificates. ■ Installing Oracle WebLogic Server and creating the Middleware home. ■ Installing and configuring Oracle Fusion Middleware components such as Oracle SOA Suite or Oracle WebCenter. ■ Configuring security policies. ■ Deploying one or more applications or SOA Composite applications. The applications may have internal and external references.

21.3.2 Installing the Database on the Production Environment

Many components, such as Oracle Internet Directory, Oracle SOA Suite, and Oracle WebCenter, require a database. You can install a new database or you can copy the database from the test environment: ■ Install a new database: 1. Install and configure the database software. 2. Create the required schemas in the production database using RCU. See the Oracle Fusion Middleware Repository Creation Utility Users Guide. 3. Create any custom schemas used by your applications. For example, if your application uses a custom schema in the test environment, create the schema in the production environment. ■ Create a duplicate database using the Oracle Database RMAN duplicate command. The duplicate database must be created with a different DBID than the source database, so that it functions entirely independently. To create a duplicate Oracle Database, Release 11g, in the production environment: 1. On the production environment, install the Oracle Database software, but do not create a database. To do this, select Install Database Software only in the Select Configuration Option screen. 21-4 Oracle Fusion Middleware Administrators Guide 2. On the test environment, edit the tnsnames.ora file, adding an entry for the database on the production environment. The following shows an example of the tnsnames.ora file. In the example, testDB is the database on the test environment and prodDB is the database on the production environment. testDB = DESCRIPTION = ADDRESS = PROTOCOL = TCP HOST = 192.168.1.1 PORT = 1521 CONNECT_DATA = SERVER = DEDICATED SID = testDB prodDB= DESCRIPTION = ADDRESS = PROTOCOL = TCP HOST = 192.168.2.4 PORT = 1521 CONNECT_DATA = SERVER = DEDICATED SID = prodDB 3. On the test environment, edit the listener.ora file, adding an entry for the database on the production environment. The following shows the added entry: LISTENER_mts = DESCRIPTION_LIST = DESCRIPTION = ADDRESS = PROTOCOL = TCP HOST = 192.168.2.4 PORT = 1521IP = FIRST SID_LIST_LISTENER_mts = SID_LIST = SID_DESC = SID_NAME = prodDB ORACLE_HOME = scratchoracletest 4. In the production environment, create a password file in the ORACLE_ HOMEdbs directory. The sys password must be the same as the password for the sys account in the database in the test environment. The following command creates the password file: orapwd password=password file=ORACLE_HOMEdbsorapwproddb 5. In the production environment, create a parameter file pfile in the ORACLE_ HOMEdbs directory. The file should contain only the DB_NAME parameter. For example: Moving from a Test to a Production Environment 21-5 DB_NAME=prodDB 6. In the production environment, set the ORACLE_SID environment variable to point to the production database if it is not already set. Then, start the database in NOMOUNT mode. For example: SQL STARTUP NOMOUNT PFILE=ORACLE_HOMEdbspfile 7. To move the database from the test environment to the production environment, use RMAN on the production environment. The following shows an example of using RMAN to duplicate the database. RMAN DUPLICATE TARGET DATABASE TO prodDB FROM ACTIVE DATABASE SPFILE NOFILENAMECHECK; RMAN automatically copies the server parameter file to the destination host, starts the auxiliary instance with the server parameter file, copies all necessary database files and archived redo logs over the network to the destination host, and recovers the database. Finally, RMAN opens the database with the RESETLOGS option to create the online redo logs. For detailed steps, see the Oracle Database Backup and Recovery Users Guide, which is available at: http:www.oracle.comtechnetworkdatabaseenterprise-editiondo cumentationindex.html

21.3.3 Moving the Middleware Home and the Binary Files

You can move a copy of the Middleware home to the production environment using the copyBinary and pasteBinary scripts. The Oracle WebLogic Server home, the Oracle homes, and the binary files in the Middleware home are also moved. To move the Middleware home: 1. On Windows, at the source Middleware home, stop the Administration Server and any Managed Servers running in the Middleware home. 2. At the source Middleware home, execute the copyBinary script, which copies the WebLogic Server home and the Oracle homes contained within the Middleware home. If there are no Oracle homes in the source Middleware home, no Oracle homes are present in the archive. For example, to copy a Middleware home that is located at scratchOracle Middleware1, use the following command: copyBinary.sh -javaHome scratchOracleMiddleware1jrockit_160_20_D1.1.0-18 -archiveLoc tmpmw_copy.jar -sourceMWHomeLoc scratchOracleMiddleware1 -invPtrLoc scratchoracleoraInst.loc 3. If you are copying the Middleware home to a different host, copy the archive file to that system. 4. Copy the pasteBinary scripts and the cloningclient.jar file to the target system and ensure that they have execute permission. See Section 20.3 for the locations of the files. 21-6 Oracle Fusion Middleware Administrators Guide Do not copy the other scripts, such as pasteConfig. Those scripts are generated when you extract the files, as in step 5. 5. At the target, extract the files from the archive using the pasteBinary script. For example, to apply the archive to the directory scratchoracleMW_Home_ prod, use the following command: pasteBinary.sh -javaHome scratchOracleMiddleware1jrockit_160_20_D1.1.0-18 -archiveLoc tmpmw_copy.jar -targetMWHomeLoc scratchoracleMW_Home_prod The Middleware home is extracted to scratchoracleMW_Home_prod and the WebLogic Server home and all of the Oracle homes are extracted under it with the same names as that of the source Oracle home names.

21.3.4 Moving the Configuration of Java Components

You can move a copy of the domain configuration for Java components, such as Oracle SOA Suite, using the copyConfig, extractMovePlan, and pasteConfig scripts. This step moves a copy of the configuration, including the domain, the Administration Server, and Managed Servers. Then, it starts the Administration Server. You also move a copy of the Node Manager configuration. To move a copy of the domain configuration and Node Manager configuration: 1. At the source Middleware home, make sure that the Administration Server and all Managed Servers are started. 2. To copy the domain configuration, at the source Middleware home, execute the copyConfig script. For example, to copy the configuration of the Oracle SOA Suite domain named SOA_domain1 in the Middleware home scratchOracleMiddleware1, use the following command: copyConfig.sh -javaHome scratchOracleMiddleware1jrockit_160_20_D1.1.0-18 -archiveLoc tmpsoa.jar -sourceDomainLoc scratchOracleMiddleware1user_ projectsdomainsSOA_domain1 -sourceMWHomeLoc scratchOracleMiddleware1 -domainHostName example.com Notes: ■ When you move the configuration of a component, the scripts replicate the topology of the source. For example, if the source domain contains Managed Servers server_1 and server_2 on Host A and Managed Servers server_3 and server_4 on Host B, you must specify a similar relationship between Managed Servers and hosts at the target. You specify the hosts for each Managed Server in the move plan. ■ When you move the configuration of components, the copyConfig script handles only global data sources defined in each Oracle WebLogic Server domain. For application-level data sources, you must deploy the ADF application configured with the application-level data sources to a server in the target domain, and manually configure the data sources on the target domain. Moving from a Test to a Production Environment 21-7 -domainPortNum 8001 -domainAdminUserName admin_username -domainAdminPassword scratchadminpasswd.txt -logDirLoc tmplogs 3. If you are copying the component to a different host, copy the archive file to that system. 4. Extract the move plan from the archive, using the extractMovePlan script. For example: extractMovePlan.sh -javaHome scratchOracleMiddleware1jrockit_160_20_ D1.1.0-18 -archiveLoc tmpsoa.jar -planDirLoc tmpOraclet2p_planssoa 5. Edit the move plan, modifying the properties to reflect the values for the target environment. See Table 20–10 to find the list of properties for the type of component you are moving. 6. At the target, extract the files from the archive using the pasteConfig script. For example, to apply the archive to the Middleware home scratchOracleMiddleware1, use the following command: pasteConfig.sh -javaHome scratchOracleMiddleware1jrockit_160_20_D1.1.0-18 -archiveLoc tmpsoa.jar -movePlanLoc tmpOraclet2p_planssoamoveplan.xml -targetDomainLoc scratchOracleMiddleware1user_ projectsdomainsSOA_domain1 -targetMWHomeLoc scratchOracleMiddleware1 -domainAdminPassword scratchpwd_dirpass.txt 7. To copy the Node Manager configuration, at the source Middleware home, execute the copyConfig script. For example, use the following command: copyConfig.sh -javaHome scratchOracleMiddleware1jrockit_160_20_D1.1.0-18 -archiveLoc tmpnm.jar -sourceNMHomeLoc scratchOracleMiddlewarewlserver_ 10.3commonnodemanager -logDirLoc tmplogs 8. If you are copying the Node Manager to a different host, copy the archive file to that system. 9. Extract the move plan from the archive, using the extractMovePlan script. For example: extractMovePlan.sh -javaHome scratchOracleMiddleware1jrockit_160_20_ D1.1.0-18 -archiveLoc tmpsoa.jar -planDirLoc tmpOraclet2p_planssoa 10. Edit the move plan, modifying the properties to reflect the values for the target environment. See Table 20–17 to find the list of properties for Node Manager. 11. At the target, extract the files from the archive using the pasteConfig script. For example, use the following command: pasteConfig -javaHome USER_HOMEjrockit_160_17_R28.0.0-679 -archiveLoc tmpnm.jar -targetNMHomeLoc scratchOracleMiddleware1wlserver_ 10.3commonnodemanager -targetMWHomeLoc scratchOracleMiddleware1