Cisco Element Manager System

Frequently Asked Questions About ObjectStore

Document ID: 25003

Updated: Jan 31, 2006



Q. How should I configure my ObjectStore installation for CEMF? (Products affected : CEMF 3.0.x)

A. You can achieve significant improvements in CEMF performance by correctly configuring ObjectStore. You should have a second disk available for the purpose of storing only CEMF databases and the ObjectStore transaction log file. This ensures that there is no contention for the disk heads when writing to or reading from the disk during database access.

There are two options when placing the databases on a separate disk, UNIX file system or RAW file system (RAWFS). Use RAWFS for improved performance and for greater flexibility in databases size (to grow larger than 2GB). Databases greater than 2GB are likely within CEMF (for example, performance data storage), and RAWFS removes the 2GB file size limit imposed by earlier versions of Solaris (ObjectStore 5.1 doesn't make use of the large files support supplied by Solaris 2.6).

  • Raw File System (RAWFS)

    When you install CEMF you are asked if you wish to use a raw partition, answer yes and specify a path to store the databases under (for example, /opt/CEMF/db). Configure ObjectStore to use a raw partition before CEMF is started for the first time. If you use RAWFS database storage, allocate the transaction log on its own disk on the UNIX file system. If you place the transaction log in the RAWFS, you have no control over where on the disk in the RAWFS the transaction log is placed. This means that if the transaction log is placed on the same partition as a heavy writing database (for example, attributeHistoryCollector.db), performance suffers.

    Note: The disk where you create the raw partition should not be mounted. ObjectStore requires that the device is not referenced in /etc/vfstab, commenting out the line with the device is not enough. Consult your Systems Administrator if you are not sure how to do this.

    The following example shows the osconfig utility used to configure the ObjectStore server to use a raw partition. In the example ObjectStore is installed in /opt/ODI/OS5.1/ostore and the device to store the raw partition is /dev/rdsk/c0t0d0s0.

    Note: osconfig prompts are shown in red text, user input is shown in blue text. Green text may or may not be shown depending on your installation setup.

    cd $OS_ROOTDIR/bin
    ./osconfig rawfs

    The default copy of ObjectStore to configure is in /opt/ODI/OS5.1/ostore.

    Is this the copy that you want to configure? [yes] <return>

    ObjectStore includes shared libraries. For ObjectStore applications and utilities to work, the dynamic linker must be able to find them. The recommended arrangement is to have symbolic links in /usr/lib to the shared libraries. If you choose not to make these links, then you will have to instruct all ObjectStore users to add /opt/ODI/OS5.1/ostore/lib to their LD_LIBRARY_PATH environment variable.

    Caution ObjectStore libraries already exist in /usr/lib. If you choose not to make links in /usr/lib for the new libraries, ObjectStore users may incorrectly link with old libraries.

    Do you want to create links to ObjectStore libraries in /usr/lib? [yes] no <return> <return>

    Caution Since you didn't create new links, you should remove existing links in /usr/lib to old ObjectStore libraries by hand. Since you have requested a rawfs configuration, you must supply the type of rawfs partition and a pathname to the partition file.

    Please note that if you specify a regular file pathname, this file is created, or overwritten, if it does not already contain rawfs data.

    The following rawfs options are available:

    1. Create File rawfs (UNIX)
    2. Create Device rawfs (PARTITION)<return>

    Please enter your selection [1-2] or Q to quit osconfig: 2 <return>
    Please enter the partition pathname: /dev/rdsk/c0t0d0s0 <return><return> <return>

    You have configured this machine to run ObjectStore servers. The rawfs partition is in /dev/rdsk/c0t0d0s0.

    Do you want to proceed? [yes] <return><return> <return>

    Writing configuration files and initializing the server, please wait...

    Checking rawfs to see if it needs to be upgraded...

    The rawfs in /dev/rdsk/c0t0d0s0 is apparently uninitialized.

    Do you want to initialize /dev/rdsk/c0t0d0s0 now? [yes] <return><return>

    Rawfs initialization complete.
    990819 134413.113 ObjectStore Release 5.1 Service Pack 2 Database Server
    The ObjectStore server is running.

    ObjectStore includes a server daemon which must be running for any application to access an ObjectStore database. It is recommended that you auto-start the daemon via commands in your operating system startup scripts. If you do not configure automatic startup, you will have to start the server daemon by hand, or re-run this utility to configure auto-start.

    Would you like to configure automatic server startup and shutdown? [yes]<return> <return><return>

    This script will now verify the installation:

    The rawfs in /dev/rdsk/c0t0d0s0 is version 4.
    The ObjectStore Server daemon process is accessible.
    Schema databases are accessible.
    The cache manager launcher (/opt/ODI/OS5.1/ostore/lib/oscminit) has correct modes and ownership.
    ObjectStore configuration completed.

  • UNIX File System

    In this case answer no at the prompt when asked if you wish to use a raw partition, but bear in mind that you will lose the performance gains that RAWFS provides.

    Place the databases on a separate disk mount (for example /ext0). When installing CEMF, specify a path on this partition, for example /ext0/CEMF/db. Specify this disk when prompted for the location of the ObjectStore transaction log.

    If the transaction log is already stored at a different location, move it to this disk by following these steps (as root):

    1. Ensure CEMF is not running: <CEMFROOT>/bin stop
    2. Ensure the environment variable OS_ROOTDIR reflects the ObjectStore install path (for example /opt/ODI/OS5.1/ostore).
    3. Shutdown ObjectStore: $OS_ROOTDIR/bin/ossvrshtd
    4. Propagate any data from the transaction log to the databases: $OS_ROOTDIR/lib/osserver -c
    5. Edit the $OS_ROOTDIR/etc/_server_parameters file and change the Log File entry to show the new file path (for example /ext0/transact.log).
    6. Reallocate the transaction log: $OS_ROOTDIR/lib/osserver -ReallocateLog
    7. Start ObjectStore, $OS_ROOTDIR/lib/osserver.
    8. Remove the old transaction log file.

Related Information

Updated: Jan 31, 2006
Document ID: 25003