C H A P T E R 3 |
Deploying the Content Delivery Server |
This chapter provides instructions for deploying the components of the Content Delivery Server. Make sure that your environment is properly set up as described in Chapter 2 before you proceed.
The following types of deployments are described in this section:
This section presents the following topics:
This section describes the steps for deploying a basic configuration, where all components of the Content Delivery Server are deployed to the same server. A basic deployment is usually the first deployment done to get started with the Content Delivery Server.
If you are running a simple configuration with a single Vending Manager, only a basic deployment is needed. If you are running a more complex configuration with more than one Vending Manager, do a basic deployment first, followed by one or more Vending Manager deployments. If you do not want to deploy a Vending Manager with the Catalog Manager, do a Catalog Manager deployment followed by one or more Vending Manager deployments.
The Content Delivery Server contains a shell script named init_env.sh in the $CDS_HOME/bin directory. This script sets the environment variables described in the following table based on the values that you provide.
Have available the following information for the instance of the Oracle database that you are using:
The Content Delivery Server requires database schemas for the Catalog Manager and each Vending Manager. The schemas are identified by the prefix provided when you create them. The schemas can be on the same database server or on different database servers.
The Content Delivery Server Install command provided with Content Delivery Server creates the schemas based on the information provided in the database configuration file. This configuration file identifies where the database is located and what schemas are created.
When you do a basic deployment, create schemas for the Catalog Manager and the Vending Manager. To create the schema for a basic deployment, follow these steps:
1. Create a database configuration file.
Use the sample file, DBConf.xml, found in the $CDS_HOME/cfg directory as a guide. The following code example shows a sample database configuration file.
Note - This file contains unencrypted passwords. Set the file permissions to restrict access to this file. |
Edit the database configuration file that you created, as described in the following steps:
a. Set the DBServer element as described in the following steps:
i. Set the Name attribute to a string used to identify the database server.
This string is used in the Catalog and Vending elements to identify the database server on which to create each schema.
ii. Set the Hostname, Port, and SID elements to the host name, port number, and database SID for the instance of Oracle Database that you are defining.
iii. Set the Tablespace and TempTablespace elements to names that you use for the instance of the Oracle Database that you are defining.
To use separate tablespaces for each group of tables, set the Tablespace element for each group to a different value. The tables included in each group are based on size and activity and are described in the following list:
b. Set the Catalog element as described in the following steps:
i. Set the Prefix element to the name that you want to use to identify and access the schema, for example, CDS.
The prefix must not be longer than 21 characters.
ii. Set the Password element to the password used to access the schema.
iii. Set the DBServer element to the string that identifies the database server that you want to use.
This string must match the name used for the DBServer element set in Step a.
c. Set the Vending element as described in the following steps:
i. Set the name attribute to the string used to identify the Vending Manager.
The name that you assign to the Vending element must be used for the vs.account.name property in the deployment configuration file that you set up in Section 3.1.3, Set up the Deployment Configuration File. This name must also be used as the Account ID when you create the Vending Manager account using the Catalog Manager administration console. See Section 3.1.6.2, Prepare the Catalog Manager.
ii. Set the Prefix element to the name that you want to use to identify and access the schema, for example, CDS.
The prefix must not be longer than 21 characters.
iii. Set the Password element to the password used to access the schema.
iv. Set the DBServer element to the string that identifies the database server that you want to use.
This string must match the name used for the DBServer element set in Step a.
d. Save the file that you created in the $CDS_HOME/cfg directory.
2. Create a database user file that identifies the system user name and password for the database servers that you are using.
Use the sample file, DBSysUser.xml, found in the $CDS_HOME/cfg directory as a guide. The following code example shows a sample database user file.
Note - This file contains unencrypted passwords. Set the file permissions to restrict access to this file. |
For each database server that you use, create a DBServer element as described in the following steps:
a. Set the name attribute to the string used to identify the database server.
This name must match the name used in the database configuration file that you created in Step 1.
b. Set the User element to the system user name used to access the database server.
c. Set the Password element to the password associated with the system user name.
d. Save the file that you created in the $CDS_HOME/cfg directory.
3. Set the following variables in the init_env.sh shell script:
See Section 3.1.1, Edit the init_env Shell Script for more information on this shell script.
4. (Optional) To support iAppli applications, skip this step. If you do not want to support iAppli applications, remove the iappli.sql file from the $CDS_HOME/dist/cds/database/cs directory.
Save a copy of the iappli.sql file somewhere else on your system. If you remove this file and decide later that you do want to support iAppli applications, see Section 4.13.1, Add the DoJa Library to the Database.
5. Copy the ojdbc14.jar file from the database server to the $CDS_HOME/dist/cds/lib directory.
This step is necessary to make the driver for the Java DataBase Connectivity (JDBC) API available to the Content Delivery Server.
6. Run the following command to create the user accounts used by the Content Delivery Server, create the schemas, and populate the schemas with the initial data:
cdsi db init [-conf db-configuration-file] [-user db-user-file]
db-configuration-file is the name of the database configuration file that contains the information for creating the schemas. If db-configuration-file is not provided, the value specified for the DEFAULT_DB variable in the init_env.sh script is used. db-user-file is the name of the database user file that contains the user name and password used to access the database. If db-user-file is not provided, the value specified for the DEFAULT_SYS_USER variable in the init_env.sh script is used.
After the database is set up, create the deployment configuration file that identifies the components to deploy. A deployment configuration file is a standard property text file that contains one name-value pair per line, and is used to propagate your settings for the Content Delivery Server to all the components. Deployment configuration files are described in Appendix A.
The Content Delivery Server distribution contains sample configuration files that you can use to create your own files. The sample configuration files are located in the $CDS_HOME/cfg directory. The sample file for use with Sun Java System Application Server is sn_sample.cfg (see Section A.2, Sample File for Use with Sun Java System Application Server.) The sample file for use with WebLogic Server is wl_sample.cfg (see Section A.3, Sample File for Use with WebLogic Server.)
To deploy all Content Delivery Server components to a single server, follow these steps to create your configuration file:
1. Create a deployment configuration file from one of the sample files.
The file must have the extension .cfg and must be located in the $CDS_HOME/cfg directory.
2. Set the general properties.
See Section A.1, Configuration Properties for descriptions of these properties.
3. Make sure that the prefix.include property for each component is not commented out.
Properties must not be preceded by a pound sign (#).
4. Save the configuration file in the $CDS_HOME/cfg directory.
5. Edit the init_env.sh shell script to set the DEFAULT_CONFIG variable to the name of the deployment configuration file that you just created.
The DEFAULT_CONFIG variable specifies the default deployment configuration file that is used when no file name is provided for commands that accept the file name as a parameter. See Section 3.1.1, Edit the init_env Shell Script.
After you create your deployment configuration file and set the environment variables, deploy the Content Delivery Server components using the following command:
cdsi deploy [-deployment deployment-name] [-cfg cfg-file-name]
The following table describes the optional arguments.
Tip - For additional information on the cdsi command, enter cdsi help. |
The deployment process installs the components identified in the deployment configuration file on the application server that you specified and creates a deployment directory with the name that you specified for the deployment under the $CDS_HOME/deployment directory. For example, if you name your deployment cds1, the directory $CDS_HOME/deployment/cds1 is created.
After the Content Delivery Server is successfully deployed, the application server that you are using requires some additional configuration. If you are using Sun Java System Application Server, you must set up a Message Queue Broker and an application server domain. If you are using WebLogic Server, you must get a certificate to operate with the Secure Sockets Layer (SSL) protocol and change the password for the administrator of the application server.
If you are using Sun Java System Application Server, you must set up a Message Queue broker and an application server domain. Two shell scripts are provided with the Content Delivery Server for you to use: deploymq.sh and deploy.sh. These scripts are found in the $CDS_HOME/deployment/deployment-name/sun/applications directory.
To set up the Sun Java System Application Server, follow these steps:
1. From a command line, change to the $CDS_HOME/deployment/deployment-name/sun/applications directory.
2. To set up the Message Queue broker, enter deploymq.sh type.
type is either server or client. Specify server to create a new Message Queue broker. Specify client to use a previously created Message Queue broker.
3. Enter the information for which you are prompted.
To use the default value, press Enter after the prompt. The following table describes the parameters.
Tip - For additional information on the deploymq.sh command, enter: deploymq.sh -h. |
In addition to setting up the Message Queue broker, the script also creates the broker.sh script, which you use to start and stop the Message Queue broker. The script is placed in the $CDS_HOME/deployment/deployment-name/sun/applications directory.
4. To set up the application server domain, enter deploy.sh command.
command is either create or recreate. Specify create to create a new application server domain. Specify recreate to replace an existing application server domain.
5. Enter the information for which you are prompted.
To use the default value, press Enter after the prompt. The following table describes the parameters.
Tip - For additional information on the deploy.sh command, enter:
|
In addition to setting up the application server domain, this script also creates the admin.sh script, which you use to start and stop the Sun Java System Application Server administration server for that domain. The script is placed in the $CDS_HOME/deployment/deployment-name/sun/applications directory.
If you are using WebLogic Server, you must get a certificate to operate with the SSL protocol and change the password for the administrator of the application server.
The Content Delivery Server connects to the application server using SSL, which requires a certificate. See the WebLogic Server documentation for information on obtaining a valid certificate for this purpose.
During deployment, a user name and password are created for the Content Delivery Server to use when accessing the application server. For security reasons, you might want to change the default password.
To change the default password, follow these steps:
1. Start the Content Delivery Server.
See Section 5.1, Starting the Content Delivery Server.
2. In a browser, go to https://hostname:port/console.
hostname is the name specified for the app.server.admin.hostip property and port is the port number specified for the app.server.admin.port property in the deployment configuration file.
3. Log in as the administrator.
The default user name is system. The default password is system.
4. Follow the instructions in the WebLogic Server documentation to change the administrator password.
5. Edit $CDS_HOME/deployment/deployment-name/conf/wladmin.prop file to set the following properties:
Before you make the deployment available for use, configure the features and set up the plans, accounts, and devices that you want to use. This section describes the preparations that are needed.
Many of the features of the Content Delivery Server can be configured for your needs. For example, you can set the number of items shown on a page or the rate at which the cache is refreshed for the Catalog Manager, Vending Manager, Subscriber Portal, and Developer Portal.
Chapter 4 describes how to configure the features that you want to use. Complete your configuration and prepare the components before you make the deployment available for use.
Use the Catalog Manager administration console to prepare the following elements of your Catalog Manager. See Section 5.1, Starting the Content Delivery Server for information on starting the Catalog Manager. See the Sun Java System Content Delivery Server Administration Guide for information on using the administration console.
a. Define the content types that you want to support.
b. Define the MIME types that you want to support.
c. Assign a DRM method to the types of content that you want to protect.
d. Select the pricing models that you want to use.
f. Define the categories that you want to use.
a. Define the templates that you want to use.
b. Add the devices that you want to support.
c. Submit libraries not already in the Content Delivery Server that are needed by the devices to run content.
d. Specify the default device.
e. Define the locales that you want to support. For example, use the values in the following table to add support for Canadian French and Simplified Chinese.
3. Set up the Vending Manager account.
a. Choose the Vending Plans that you want to use.
b. Set up the default Vending plan.
Note - The default Vending Plan provided with the Content Delivery Server allows access to only content assigned to the Featured category. |
4. Prepare the Developer accounts.
a. Add Developer plans and profiles that you want to use.
b. Set up the default Developer plan.
Note - The default Developer Plan provided with the Content Delivery Server does not restrict the APIs that a developer can use in the applications that they submit. |
c. Add the Developer accounts that you want.
Use the Vending Manager administration console to prepare the following elements of your Vending Manager. See Section 5.1, Starting the Content Delivery Server for information on starting the Vending Manager. See the Sun Java System Content Delivery Server Administration Guide for information on using the administration console.
a. Define the categories that you want to use.
d. Set up the pricing options with the price for your locale.
2. Prepare the Subscriber accounts.
a. Add Subscriber plans that you want to use.
b. Set up the default Subscriber plan.
Note - The default Subscriber plan provided with the Content Delivery Server allows access to content in all categories. |
c. Add any Subscriber accounts that you want.
This section describes the steps for deploying a Catalog Manager. When you deploy a Catalog Manager, also deploy an Event Service, Messaging Service, and Monitoring Service. Make sure that the environment is set up as described in Chapter 2 before proceeding.
Set up the init_env.sh script as described in Section 3.1.1, Edit the init_env Shell Script.
The init_env.sh script contains settings for the default deployment, default database configuration file, and default deployment configuration file. If a host contains more than one deployment, you must decide which deployment you want to designate as the default. The default settings enable you to run the Content Delivery Server execute command (cdse) and Content Delivery Server install command (cdsi) without entering all of the parameters. If an expected parameter is not found, the default specified in the init_env.sh script is used.
To deploy a Catalog Manager, create a schema for that Catalog Manager and its associated Event Service. Set up the database configuration file and database user file as described in Section 3.1.2, Set up the Database. Only the DBServer and Catalog elements are needed.
Use the following command to create the schema for the Catalog Manager:
cdsi db init [-conf db-configuration-file] [-user db-user-file] -cs
db-configuration-file is the name of the database configuration file that contains the information for creating the schemas. If db-configuration-file is not provided, the value specified for the DEFAULT_DB variable in the init_env.sh script is used. db-user-file is the name of the database user file that contains the user name and password used to access the database. If db-user-file is not provided, the value specified for the DEFAULT_SYS_USER variable in the init_env.sh script is used.
After the database is set up, create the deployment configuration file that identifies the components to deploy. See Section 3.1.3, Set up the Deployment Configuration File for an overview of configuration files.
Use the following guidelines to create your deployment configuration file. With the Catalog Manager, also deploy an instance of the Event Service, Messaging Service, and Monitoring Service.
1. Create a deployment configuration file from one of the sample files.
The file must have the extension .cfg and must be located in the $CDS_HOME/cfg directory.
2. Set the general properties.
See Section A.1, Configuration Properties for descriptions of these properties.
3. Make sure that the following properties are not commented out, that is, the property names are not preceded by a pound sign (#):
4. Make sure that the following properties are commented out, that is, the property names are preceded by a pound sign (#):
5. Save the configuration file in the $CDS_HOME/cfg directory.
6. Edit the init_env.sh shell script to set the DEFAULT_CONFIG variable to the name of the deployment configuration file that you just created.
If you are deploying the Catalog Manager on a host to which other Content Delivery Server components were previously deployed, set DEFAULT_CONFIG to the name of the configuration file that you want to be the default.
The DEFAULT_CONFIG variable specifies the default deployment configuration file that is used when no file name is provided for commands that accept the file name as a parameter. See Section 3.1.1, Edit the init_env Shell Script.
See Section 3.1.4, Deploy for instructions on deploying the Catalog Manager and supporting components.
Set up the application server that you are using as described in Section 3.1.5, Set up the Application Server. If you are using Sun Java System Application Server and you created the Message Queue broker in a previous deployment, create a Message Queue broker client for this deployment by specifying client as the type when you run the deploymq.sh command.
See Chapter 4 for information on configuring the features that you want to use. Before you can use the Catalog Manager, you must deploy at least one Vending Manager and create a Vending Manager account.
See Section 3.1.6.2, Prepare the Catalog Manager for additional preparation needed for the Catalog Manager.
This section describes the steps for deploying a Vending Manager. When you deploy a Vending Manager, also deploy the Fulfillment Manager and all of the services.
You must deploy a Catalog Manager before you deploy a Vending Manager. The Catalog Manager can be deployed as part of a basic deployment (see Section 3.1, Basic Deployment,) a Catalog Manager deployment (see Section 3.2, Catalog Manager Deployment,) or an advanced deployment (see Section 3.4, Advanced Deployment.)
The Vending Manager deployment can be done on a host to which other components of the Content Delivery Server are deployed, or on a host that does not contain a deployment of any other components. If the host contains an existing deployment, use the existing installation and CDS_HOME directory. If the host does not contain an existing deployment, make sure that the environment is set up as described in Chapter 2 before proceeding.
If you are deploying the Vending Manager on a host that does not contain a deployment of other components, set up the init_env.sh script as described in Section 3.1.1, Edit the init_env Shell Script.
If you are deploying the Vending Manager on a host to which other components have been deployed, verify that the init_env.sh shell script in the $CDS_HOME/bin directory contains the correct settings for the SUN_AS_HOME, JAVA_HOME, BEA_HOME, and WL_HOME variables. These settings are used for all deployments on the host.
The init_env.sh script also contains settings for the default deployment, default database configuration file, default database user file, and default deployment configuration file. If a host contains more than one deployment, you must decide which deployment you want to designate as the default. The default settings enable you to run the Content Delivery Server execute command (cdse) and Content Delivery Server install command (cdsi) without entering all of the parameters. If an expected parameter is not found, the default specified in the init_env.sh script is used.
To deploy a Vending Manager, you need to create a schema for that Vending Manager. This schema can be on the same database server as the Catalog Manager schema or on a different server.
If you created the schema for the Vending Manager that you are currently deploying at the time that you set up the database for a basic deployment, you do not need to do anything further for the database. Proceed to Section 3.3.3, Set up the Deployment Configuration File.
If you did not create the schema for the Vending Manager, set up the database configuration file and database user file as described in Section 3.1.2, Set up the Database. Only the DBServer and Vending elements are needed.
Use the following command to create the schema for the Vending Manager:
cdsi db init [-conf db-configuration-file] [-user db-user-file] -vs vending-name
db-configuration-file is the name of the database configuration file that contains the information for creating the schemas. If db-configuration-file is not provided, the value specified for the DEFAULT_DB variable in the init_env.sh script is used. db-user-file is the name of the database user file that contains the user name and password used to access the database. If db-user-file is not provided, the value specified for the DEFAULT_SYS_USER variable in the init_env.sh script is used. The switch -vs indicates that only the schema for the specified Vending Manager is created.
After the database is set up, create the deployment configuration file that identifies the components to deploy. See Section 3.1.3, Set up the Deployment Configuration File for an overview of configuration files.
If you previously deployed a Catalog Manager and want to add another Vending Manager to your configuration, follow these steps to create your deployment configuration file. With the Vending Manager, also deploy an instance of the Fulfillment Manager and all Content Delivery Server services.
1. Create a deployment configuration file from one of the sample files.
The file must have the extension .cfg and must be located in the $CDS_HOME/cfg directory. If you are deploying to a host that contains another deployment, create a new configuration file for this deployment to avoid confusion.
2. Set the general properties.
See Section A.1, Configuration Properties for descriptions of these properties.
3. Make sure that the following properties are not commented out, that is, the property names are not preceded by a pound sign (#):
4. Make sure that the following properties are commented out by preceding the property names with a pound sign (#):
5. Save the configuration file in the $CDS_HOME/cfg directory.
6. Edit the init_env.sh shell script to set the DEFAULT_CONFIG variable to the name of the deployment configuration file that you just created.
If you are deploying the Vending Manager on a host to which other Content Delivery Server components are already deployed, set DEFAULT_CONFIG to the name of the configuration file that you want to be the default.
The DEFAULT_CONFIG variable specifies the default deployment configuration file that is used when no file name is provided for commands that accept the file name as a parameter. See Section 3.1.1, Edit the init_env Shell Script.
See Section 3.1.4, Deploy for instructions on deploying the Vending Manager and supporting components.
Set up the application server that you are using as described in Section 3.1.5, Set up the Application Server. If you are using Sun Java System Application Server and you created the Message Queue broker in a previous deployment, create a Message Queue broker client for this deployment by specifying client as the type when you run the deploymq.sh command.
See Chapter 4 for information on configuring the features that you want to use.
Before you can use the Vending Manager that you just deployed, you must create a Vending Manager account for it in the Catalog Manager. See the Sun Java System Content Delivery Server Administration Guide for information. When you create the Vending Manager account, the Account ID must be set to the value used for the vs.account.name property in the deployment configuration file. The Account Password must be set to the value used for the vs.account.password property in the deployment configuration file. These values must also match the name and password used when you created the database schema for the Vending Manager.
Note - The Vending Manager reports synchronization errors to the Content Delivery Server log until the Vending Manager account is successfully created in the Catalog Manager. |
See Section 3.1.6.3, Prepare the Vending Manager for additional preparation needed for the Vending Manager.
A basic deployment of all Content Delivery Server components on one server followed by one or more additional Vending Manager deployments should meet the needs of most enterprises. If you have unique needs, such as limited resources or security requirements that place restrictions on how you deploy, the Content Delivery Server supports highly customized deployments.
Advanced deployments enable you to selectively install the components in a configuration that meets your needs. Due to the unique nature of advanced deployments, this section provides guidelines rather than specific instructions for setting up a deployment.
If you are deploying components to a host that does not contain a deployment of other components, set up the init_env.sh script as described in Section 3.1.1, Edit the init_env Shell Script.
If you are deploying components to a host to which other components have been deployed, verify that the init_env.sh shell script in the $CDS_HOME/bin directory contains the correct settings for the SUN_AS_HOME, JAVA_HOME, BEA_HOME, and WL_HOME variables. These settings are used for all deployments on the host.
The init_env.sh script also contains settings for the default deployment, default database configuration file, and default deployment configuration file. If a host contains more than one deployment, you must decide which deployment you want to designate as the default. The default settings enable you to run the Content Delivery Server execute command (cdse) and Content Delivery Server install command (cdsi) without entering all of the parameters. If an expected parameter is not found, the default specified in the init_env.sh script is used.
Create the schemas needed for the Catalog Manager and each Vending Manager in your configuration. The databases can share a database server or use separate servers, depending on your needs.
To set up the database, follow these steps:
1. Create the database configuration file and database user file as described in Section 3.1.2, Set up the Database.
Create entries for all the Vending Managers that you intend to deploy.
Note - The database configuration file and database user file contain unencrypted passwords. Set the file permissions to restrict access to these files. |
2. Copy the database configuration file and database user file to all hosts to which you intend to deploy components of the Content Delivery Server.
Place the file in the $CDS_HOME/cfg directory on each host.
3. Set the following variables in the init_env.sh shell script on each host:
See Section 3.1.1, Edit the init_env Shell Script for more information on this shell script.
4. Copy the ojdbc14.jar file from the database server to the $CDS_HOME/dist/cds/lib directory.
This step is necessary to make the driver for the JDBC API available to the Content Delivery Server.
5. Create the schemas defined in your database configuration file.
Run the following command from the host on which you are deploying the Catalog Manager.
cdsi db init [-conf db-configuration-file] [-user db-user-file]
db-configuration-file is the name of the database configuration file that contains the information for creating the schemas. If db-configuration-file is not provided, the value specified for the DEFAULT_DB variable in the init_env.sh script is used. db-user-file is the name of the database user file that contains the user name and password used to access the database. If db-user-file is not provided, the value specified for the DEFAULT_SYS_USER variable in the init_env.sh script is used.
To later deploy another Vending Manager, follow the instructions in Section 3.3.2, Set up the Database to create the additional schema needed.
After the database is set up, create the deployment configuration file that identifies the components to deploy. See Section 3.1.3, Set up the Deployment Configuration File for an overview of configuration files.
The deployment configuration file identifies the components to deploy. To avoid confusion, create a separate configuration file for each deployment. To create the configuration file, follow these steps:
1. Create a deployment configuration file from one of the sample files.
The file must have the extension .cfg and must be located in the $CDS_HOME/cfg directory.
2. Set the general properties.
See Section A.1, Configuration Properties for descriptions of these properties.
3. For each component included in the deployment, make sure that the prefix.include property is not commented out.
Properties must not be preceded by a pound sign (#).
4. For each component not included in the deployment, make sure that the prefix.include property is commented out.
Properties must be preceded by a pound sign (#).
5. Save the configuration file in the $CDS_HOME/cfg directory.
6. Edit the init_env.sh shell script to set the DEFAULT_CONFIG variable to the name of the deployment configuration file that you just created.
If you are deploying components to a host to which other Content Delivery Server components were are already deployed, set DEFAULT_CONFIG to the name of the configuration file that you want to be the default.
The DEFAULT_CONFIG variable specifies the default deployment configuration file that is used when no file name is provided for commands that accept the file name as a parameter. See Section 3.1.1, Edit the init_env Shell Script for information on this shell script.
See Section 3.1.4, Deploy for instructions on deploying.
Set up the application server that you are using as described in Section 3.1.5, Set up the Application Server. If you are using Sun Java System Application Server, set up the Message Queue broker according to the following guidelines:
To share an existing Message Queue broker, specify client as the type when you run the deploymq.sh command. To create a new Message Queue broker, specify server.
See Chapter 4 for information on configuring the features of the components that you deployed.
After you deploy the Catalog Manager, see Section 3.1.6.2, Prepare the Catalog Manager for setup information. After you deploy a Vending Manager, see Section 3.3.6, Prepare the Vending Manager for Use.
Copyright © 2005, Sun Microsystems, Inc. All Rights Reserved.