IBM Pattern Lab quick start guide for script package deployment in PureApplication System: Installing Oracle Database 11g Release 2

This guide helps you get started with a typical installation for Oracle® Database™ 11g Release 2 using a script package and defines the requirements of this automation in IBM® PureApplication™ System.

Simon Kofkin-Hansen (simonkofh@au1.ibm.com), Senior Technical Staff Member, IBM

Photo of Simon Kofkin-HansenSimon Kofkin-Hansen is a Senior Technical Staff Member at IBM. He has been involved in automation for over 8 years, looking at ways to improve deployments and configurations in the middleware space.



November 2013 (First published 24 June 2013)

Also available in Chinese Japanese

Introduction

The IBM Pattern Lab uses an asset-based approach to create reusable and customizable components that collectively make an automation package for a given software product or integrated solution deployment.


Step 1: Introducing the Oracle Database Server 11g R2 script package capabilities

This script package installs Oracle Database server version 11g release 2 including Patch Set 2. This package has been tested on Red Hat Linux v6 (64-bit) and AIX v7.1 (64-bit). It supports a basic installation on a single host.


Step 2: Identifying the script package parameters

Table 1 and Table 2 show the package parameters, which will be exposed via the driver script. Table 1 identifies the parameters that need to have been defined prior to making the package available for deployment.

Table 1. Software location parameters
Parameter nameParameter descriptionExample
swRepoRoot This is the directory, which holds the software binaries directory (exclude any trailing backslash). /software
nfsHost This is the address (IP or hostname) of the server that exports the above nfs share. fileshare.ibm.com
nfsExport This is the nfs share that holds the directory structure defined in Table 3. /cloud/software2
nfsMountPoint This is the directory that will be used to mount nfsExport. It holds the software binaries/respository directory structure (exclude any trailing backslash). For this version of the script package, the value will be the same as for the swRepoRoot parameter. /software
nfsVersion This is the version of the NFS server (as it is seen from the application layer). It is usually version 3 or version 4. 3
* yumRepoLink This is the parameter that identifies the yum (package manager) server. It will be used for downloading the operating system level dependencies of the product. The format should be ftp://[server]/[directory] or http://[server]/[directory path], where [directory] is the directory path of the repository specific to the distribution of Redhat that you are currently using. ftp://repository.ibm.com/
http://repository.ibm.com/ pub/yum-repository/redhat/updates/$releasever
If the repository setup is not needed, as you may have one already set up on the provisioned image, then this parameter's value has to be set as "NONE".
* yumRepoUser This is the yum repository user. yumuser (If authentication is not needed, this parameter's value has to be NONE.)
* yumRepoPass This is the yum repository password. Zaq12wsx (If authentication is not needed, this parameter's value has to be NONE.)

Note:in Table 1, parameter names marked with an asterisk (*) are available only when using the Linux version of the Oracle 11g R2 script package.

Table 2 identifies the script package parameters specific to the Oracle Database server product.

Table 2. Oracle Database server parameters
Parameter nameParameter descriptionExample
Oracle_PatchsetThis is the Patch Set number. Currently, the only supported value is 2 because you are installing Oracle Database version 11.2.0.3, which is Oracle Patch Set 2. 2
Oracle_Dbname This is the name of the database instance. test01
Oracle_Syspassword This is the password to be used for the Oracle internal "sys" user. Zaq12wsx
Oracle_Systempassword This is the password to be used for the Oracle internal "system" user. Zaq12wsx

Note: The product is installed using the default operating system level user "oracle", which needs to be a member of the following groups: oracle, oinstall, dba. This script package automatically creates the user and the groups.


Step 3: Acquiring the script package prerequisites

Table 3 identifies the directory structure exposed by the swRepoRoot parameter (for reference, see Table 1). Additionally, Table 3 provides guidance on the content that needs to be placed in this directory structure.

Table 3. Software packages
DirectoryFile required for LinuxFile required for AIXAdditional notes
nfsExport/software/oracle/v11/basep10404530_112030_Linux-x86-64_1of7.zipp10404530_112030_AIX64-5L_1of7.zip This is first archive of the Oracle installation package. See Table 1 for the nfsExport parameter details.
nfsExport/software/oracle/v11/basep10404530_112030_Linux-x86-64_2of7.zipp10404530_112030_AIX64-5L_2of7.zip This is second archive of the Oracle installation package. See Table 1 for the nfsExport parameter details.
nfsExport/software/javajre-6u34-linux-x64-rpm.binJava6_64.sdk This is the jre that you can download from: See Table 1 for the nfsExport parameter details.

Table 4 identifies the free space needed on the operating system disks.

Table 4. Space required
Drive/LocationMinimum free space neededOwnerPermission
/tmp 5 GB Not applicable 750
/oracle 10 GB oracle:oinstall (The ownership is automatically set by the script package.) 750

Note: The storage above has to either be built into the Operating System image or added at provisioning time in order to meet the space requirements.

Table 5 identifies the users and groups required at the operating system level.

Table 5. Required groups and users
UserGroupHome directoryAdditional notes
oracleoinstall/home/oracle The user and group are created automatically at the script package run if they do not exist.

Table 6 and Table 7 identify the operating system level packages required to be installed prior to the Oracle Database software installation.

Table 6. RHEL operating system level packages required by the Oracle Database product
Short description of the packagePackage name
GNU binary tools binutils
C++ libraries compat-libstdc++
Elf libraries elfutils-libelf
Elf libraries with development support elfutils-libelf-devel
Elf libraries with development support and static linkage elfutils-libelf-devel-static
GNU compiler gcc
GNU compiler with C++ front end gcc-g++
GNU C libraries glibc
Common binaries and locale data for C libraries glibc-common
Objects for GNU C development glibc-devel
GNU C headers glibc-headers
Korn shell ksh
Linux native asynchronous I/O libaio
Linux native asynchronous I/O headers libaio-devel
CNU complier support libraries libgcc
GNU C++ rewritten compliant libraries libstdc++
GNU C++ headers libstdc++-devel
GNU variant of make make
Sar and iostat commands for Linux sysstat
ODBC database access unixODBC
ODBC development support unixODBC-devel
X11 XP runtime libXp
X11 Xtst runtime libXtst
Oracle ASM support oracleasm
Kernel headers kernel-headers
OpenMP for GNU compiler collections libgomp

Note: The script package automatically installs the above packages. This is why the script package requires the yumRepoLink parameter at provisioning time. For those packages to be installed, all of them should exist on the yum repository provided. By default, they exist in the Red Hat standard repositories. If you use your own custom repository, you need to verify their existence.

Table 7. AIX operating system level packages required by the Oracle Database product
Short description of the packagePackage name
Base Application Development librariesbos.adt.base
Base Application Development librariesbos.adt.lib
Base Application Development librariesbos.adt.libm
Base Performance Tools bos.perf.libperfstat
Base Performance Tools bos.perf.perfstat
Base Performance Tools bos.perf.proctools
AIX XL C++ runtime environment xlC.aix61.rte.10.1.0.0 or later
AIX XL C++ runtime environment xlC.rte.10.1.0.0 or later

Note: The file sets above are part of a default installation of AIX v7.1. However, if those are not installed on the image you plan to use, you will have to manually install them. To deploy Oracle on the AIX operating systems, the following requirements exist:

  • AIX operating system version should be equal or higher than 7100-00-01-1037
  • The following APARs need to be installed on AIX prior to the Oracle deployment:
    • IZ87216
    • IZ87564
    • IZ89165
    • IZ97035

Step 4: Deploying the script package within a virtual system pattern

This section describes the steps to create a virtual system pattern and deploy it in your PureApplication System environment. Additionally, you will find details on how to check the status of your deployment.

Preparing a virtual system pattern for deployment

The script package comes in a form of a zip archive using the following naming convention:

RDS_{ProductName}_{ProductVersion}_{OneWordDescriptionOfPurpose}.zip

In PureApplication System terminology, this is called a script package. This script package has to be part of a virtual system pattern, which in the end is deployed and managed under the form of a virtual system instance.

To create and deploy a script package, follow these steps:

  1. Login to your environment's IBM Workload Deployer interface.
  2. To add the script package you have received, click (on the upper bar) on Catalog > Script Packages and press the green plus icon in the menu bar. Enter the name for the script package to be created and press OK, as shown in Figure 1 and Figure 2.
    Figure 1. Open the script packages section
    Open the script packages section
    Figure 2. Name the script package
    Name the script package
  3. Now import the script package archive you have been provided by clicking on the grayed out Browse from the right side of the Script package file field. Select the archive from your local file system and then click the Upload button, as shown in Figure 3.
    Figure 3. Import a script package archive
    Import a script package archive
  4. Prior to using the script package, you need to accept the license. To do this, follow the highlighted areas shown in Figures 4 through 7.
    Figure 4. Bring up the license window
    Bring up the license window
    Figure 5. List the license contents
    List the license contents
    Figure 6. Accept the license
    Accept the license
    Figure 7. Finish the license acceptance process
    Finish the license acceptance process
  5. Immediately after you have imported your script package (while still in the Script Package view), you have the option to select when this script package will be executed (see Figure 8). The Execute field needs to be set to one of the two values shown in Table 8.
Table 8. Script Package Execution settings
ValueWhen to select
at virtual system creation Select this when your OS Part (operating system image) on which this script package will be run has satisfied all the prerequisites described in Step 2: Identifying the script package parameters and Step 3: Acquiring the script package prerequisites, as well as any external dependencies you might have in your desired topologies (for example, an external database).
when I initiate it Select this when the prerequisites are not met or external dependencies require an action first.
  1. If you have selected when I initiate it (see Figure 8) after you have built your virtual system pattern and you click Deploy (see Figure 13), this creates your virtual host and installs the operating system. However, hold off on executing the script package until this is manually invoked. Figure 8 shows the script package option that has been discussed in this section.
    Figure 8. Execute options for a script package
    Execute options for a script package
  2. Against each of the script packages, you will see the Execute now button, which you will have to click and follow the on screen instructions to execute your script package. Figure 15 outlines the Script Package section of a virtual system instance, where the Execute now button is found.
  3. To create a virtual system pattern, click on (in the upper bar) Patterns > Virtual Systems. Then click on the green plus icon in the menu bar, provide a name and a description for the virtual system pattern, and press OK, as shown in Figure 9 and Figure 10.
    Figure 9. Select a virtual system pattern
    Select a virtual system pattern
    Figure 10. Create a virtual system pattern
    Create a virtual system pattern
  4. To compose or orchestrate the newly created virtual system pattern, click on the Edit button on the upper right side of the bar as shown in Figure 11.
    Figure 11. Edit mode of your virtual system pattern
    Edit mode of your virtual system pattern
  5. In the new screen, drag and drop the parts from the palette on the left to the editing area. You will need to add an operating system part and the script packages created in the previous steps on top of this operating system part. When finished, click on Done Editing as shown in Figure 12.
    Figure 12. Edit your virtual system pattern
    Edit your virtual system pattern

    You have created a virtual system pattern, which you can deploy as many times as you need in your environment.

  6. Next, deploy the new virtual system pattern. In your IBM Workload Deployer console, go to Patterns > Virtual Systems. Click on the previously created system pattern and on the right side of the upper bar, click on the Deploy button as shown in Figure 13.
    Figure 13. Deploy your virtual system pattern
    Deploy your virtual system pattern
  7. After clicking the Deploy button, the following information is requested:
    • Virtual System Name: This is the name of the virtual system pattern instance.
    • Environment: Your IBM Workload Deployer administrator should provide the necessary information.
    • OS Part parameters: This is where you complete the values for the required operating system level parameters.
    • Script Package parameters (found under the OS Part sub page): You will find details in this article.

Note that the only mandatory fields are those starred (*) and the Instance Name.

After completing the field values as they are documented in Step 2: Identifying the script package parameters, click on the OK button.

Your virtual system pattern is now deploying. The deployment will finish when either the first, or both of the following actions are completed:

  • The operating system of the deployed virtual machine has been installed and the virtual machine is now started.
  • The script packages within the virtual system pattern you are deploying, have been successfully executed.

The execution of the script packages in the later action above is conditioned by the value set for the "Execute Now" option of each of the script packages added to the specific virtual system pattern, which is described earlier in this guide.


Step 5: Checking the status of your deployment

  1. To check the status of your virtual system pattern deployment, click on Instances > Virtual System in the upper blue bar, as shown in Figure 14.
    Figure 14. Check status of the virtual system pattern deployment
    Check the status of the virtual system pattern deployment
  2. In the newly opened window you will find, on the left frame, the virtual system pattern instance you have created. Click on it. If there are too many instances, you can use the search filter (which you can find at the top of the left frame) and type in some characters. This is part of the virtual system pattern instance name you had created earlier.
  3. At this point, in the frame on the right side of the page, there will be details about your deployment. However, at this stage, the following two are the most important:
    • Current status: This shows what the current deployment is doing. For example, starting virtual image, deploying pattern, registering virtual image, and so on.
    • Virtual machines: This provides information about the current status of the virtual machine, its hardware and network details, as well as status of the script packages that have been deployed, currently in deployment process, or that can be deployed. The network details provide the virtual machine's IP address and hostname. Figure 16 provides an example and includes the areas of most interest within the deployment of a script package.

      For the script package run, Figure 16 describes a situation where the script packages have been executed at virtual system deployment, while Figure 15 shows an example of a script package set to execute only "when I initiate it". This fact is confirmed by the (none) attribute, which signifies that the script package has not been executed yet. Therefore, there are no logs for the specific script package.

    Figure 15. Script package status with “when I initiate it” execute option
    Script package status with
    Figure 16. Information about the IP and script package status
    Information about the IP and script package status
  4. To connect to the deployed virtual machine, a connection can be made to the IP outlined in Figure 16, using either the Remote Desktop for Windows or the ssh client for Linux/Unix.
  5. In Figure 16, the log files are displayed against each script. The remote_std_out.log outlines what the script package has done during deployment and contains both errors and details of a normal script package run. In a successful deployment, you see the following lines at the end:
    SPiN ended: successfully :-)
    ===========================End of SPIN LOG =========================
    INFO:Java(TM) 6 Update 34 (64-bit) is installed
    INFO:Uninstalling: Java(TM) 6 Update 34 (64-bit) Version: 6.0.340
    INFO:Successfull uninstall

Checking the remote_std_out.log file at the end of each deployment will provide the latest level of assurance for a successful execution.


Conclusion

This article described how to deploy an Oracle Enterprise Database server using one of the IBM Pattern Lab automation assets. It defined the topology used and the requirements and capabilities of this automation asset.

Resources

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Cloud computing on developerWorks


  • Bluemix Developers Community

    Get samples, articles, product docs, and community resources to help build, deploy, and manage your cloud apps.

  • Cloud digest

    Complete cloud software, infrastructure, and platform knowledge.

  • DevOps Services

    Software development in the cloud. Register today to create a project.

  • Try SoftLayer Cloud

    Deploy public cloud instances in as few as 5 minutes. Try the SoftLayer public cloud instance for one month.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Cloud computing
ArticleID=934901
ArticleTitle=IBM Pattern Lab quick start guide for script package deployment in PureApplication System: Installing Oracle Database 11g Release 2
publish-date=11242013