Skip Headers
Oracle® Virtual Assembly Builder User's Guide
11g Release 1 (11.1.1)

Part Number E15835-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

2 Using Oracle Virtual Assembly Builder

This chapter includes the following sections:

2.1 Oracle Virtual Assembly Builder Interfaces

Oracle Virtual Assembly Builder provides two user interfaces:

Note:

you cannot launch Oracle Virtual Assembly Builder Studio and abctl at the same time. Nor can you launch two sessions of either interface at the same time.

Before launching Oracle Virtual Assembly Builder Studio or abctl, make sure the environment variables $JAVA_HOME and $AB_HOME are set properly. Optionally, set the $AB_CATALOG_HOME variable. See the Configure section in Oracle Virtual Assembly Builder Installation Guide for more information.

2.1.1 Accessing Oracle Virtual Assembly Builder Studio

Launch Oracle Virtual Assembly Builder Studio by executing the command:

$AB_HOME/bin/abstudio.sh

The log file for Oracle Virtual Assembly Builder Studio is $AB_HOME/logs/abstudio.log.

Figure 2-1 shows Oracle Virtual Assembly Builder Studio.

Figure 2-1 Oracle Virtual Assembly Builder Studio

Oracle Assembly Builder Studio main window
Description of "Figure 2-1 Oracle Virtual Assembly Builder Studio"

2.1.2 Accessing the abctl Command-Line Tool

Launch the abctl command-line tool by executing the command:

$AB_HOME/bin/abctl

The log file for the abctl command-line tool is $AB_HOME/logs/assemblybuilder.log.

2.1.3 Differences Between the Interfaces

The two interfaces complement each other but do not include identical functionality. Here are the main differences:

  • Only Oracle Virtual Assembly Builder Studio enables you to create a new assembly.

  • Only Oracle Virtual Assembly Builder Studio provides editing capability. That is, the following operations are not supported in abctl:

    • making a connection between an input and an output

    • creating resource pool connections

    • editing property values

    • creating/editing a deployment plan

  • In Oracle Virtual Assembly Builder Studio, you can introspect multiple reference systems and put the results into a new or existing assembly. In abctl, you must introspect reference systems one-by-one and the result is always put at the top level of a catalog.

  • Only Oracle Virtual Assembly Builder Studio provides a connection wizard which allows you to set up trust between Oracle Virtual Assembly Builder Studio (and abctl) and Oracle VM Manager.

  • In Oracle Virtual Assembly Builder Studio, the packaging operation is only available in the Template Creation Wizard, and you cannot perform a packaging-only operation. In abctl, you have to create packages and templates separately through the package and createTemplate commands, respectively.

These differences will be further detailed in Section 2.3, "Oracle Virtual Assembly Builder Operations".

2.1.4 Naming Rules

Any user-provided names must follow these rules:

  • The name must begin with an alphabetic character.

  • The name may only contain alphanumeric characters, or the underscore (_) or hyphen (-) characters.

  • The name must be 4 to 30 characters long.

2.1.4.1 Resolving Naming Conflicts

You may experience a name conflict between assemblies in a catalog if you import a top-level atomic assembly into a catalog where you already have a nested assembly with the same name. In the following example, after you import the top-level assembly_1, the assembly_1 that is nested in assembly_2 will no longer reference a valid object.

catalog 
   |____assembly_1 
   | 
   |____assembly_2 
         |___assembly_1
 

To allow this configuration, you must delete assembly_1 from assembly_2 and re-edit the assembly into assembly_2.

2.1.5 Symbolic Links

Symlinks are not handled correctly by Oracle Virtual Assembly Builder, and can lead to errors during introspection, packaging, and deployment. Avoid symlinks in your UNIX reference systems.

2.2 Typical Workflow

Users will typically use Oracle Virtual Assembly Builder in these ways:

Note:

The workflow with pre-built appliances and assemblies is not enabled until Oracle provides such pre-built appliances and assemblies.

2.3 Oracle Virtual Assembly Builder Operations

This section details how you will use Oracle Virtual Assembly Builder Studio or abctl command line utility.

2.3.1 Introspect a Reference System

The introspection operation results in appliance(s) and/or an assembly (if you performed the operation using Oracle Virtual Assembly Builder Studio and created an assembly) being created in the catalog.

During introspection, the metadata for appliances and assemblies is created in the $catalog/metadata directory. A unique ID (called the capture ID or cid) is generated for each appliance or assembly, and is stored in its metadata. In addition, a package definition is created in the $catalog/bundles/$cid directory.

Note:

You should not change any configuration or content of the reference system between introspection and packaging. For instance, you cannot introspect a reference system on one date and package the "same" reference system at some arbitrary future date.

For introspection to succeed, some introspection plug-ins have specific requirement for the reference system's running state. Table 2-1 lists the preconditions for the products supported by Oracle Virtual Assembly Builder.

Table 2-1 Introspection Plug-in Requirements

Introspected Product Running State Pre-Condition

Oracle WebLogic Server

Administration Server must be up and in the running state (not in the admin state). Managed Server(s) may be up or down.

Oracle HTTP Server (OHS)

No requirement; Oracle HTTP Server may be up or down.

Oracle Web Cache

No requirement; Oracle Web Cache may be up or down.

Oracle RDBMS (DB)

In the introspection phase, the database can be up or down.


2.3.1.1 Introspect Using Oracle Virtual Assembly Builder Studio

The Create New Assembly dialog allows you to create a new assembly, name it, select which components to introspect, and provide values required by the Introspector for those components. You can access this dialog by selecting File > New > Assembly.

In the Name Assembly window (step 1 of 4), enter a name for the new assembly in the Assembly Name field. Optionally, enter a textual description. If an assembly with the same name already exists, and it has not been registered, you may overwrite the assembly by checking the Overwrite Assembly checkbox. Click Next to define components in the assembly for introspection.

Note:

You may create an empty assembly by checking the Empty Assembly checkbox, and selecting Finish. Otherwise, define the components for the assembly by clicking Next.

In the Select Component to Introspect window (Figure 2-3), you can define one or more appliances in the new assembly by selecting the + icon (Figure 2-2):

Figure 2-2 Defining Appliances in the New Assembly

Defining Appliances in the New Assembly
Description of "Figure 2-2 Defining Appliances in the New Assembly"

This displays the following list of components that are supported for introspection:

  • Oracle Database

  • Oracle HTTP Server

  • Oracle Web Cache

  • Oracle WebLogic Server

Figure 2-3 Select Components to Introspect

Select components to introspect
Description of "Figure 2-3 Select Components to Introspect"

You can name the appliance, specify a local or remote host, and a working directory (this is a directory used during remote introspection to copy configuration files locally for caching purposes).

If you specified a remote host, you must define its parameters, then select Test Connection to verify that you can create an SSH connection using the supplied credentials to the remote host.

Note:

You cannot perform remote introspection of a database if you cannot log into the database machine with the database installation owner's account. If remote introspection is required, you must enable the account for remote access.

In the Configure Properties window (Figure 2-4) you can set the introspection properties for the components you included for introspection in the previous window. Required properties are identified with an asterisk next to the property name.

Note:

For a list and description of the properties, see Appendix B, "Properties for Oracle Virtual Assembly Builder Components".

Figure 2-4 Configure Properties

Configure properties
Description of "Figure 2-4 Configure Properties"

To edit a value for a property, select the component from the Components pane, and select the property from the Introspection Properties pane. Enter a value for the property.

Once you have set values for all required properties for all appliances, click Next (to see a summary) or Finish (to begin introspection without seeing a summary).

The Summary window (step 4 of 4) displays a logical tree view of the components you selected for introspection, their hosts, and the introspection properties entered.

Click Finish to begin the introspection. A confirmation box appears informing you that the operation is time and resource intensive. Once you select OK to confirm, introspection starts.

You can see the progress of the introspection in the catalog navigator. Oracle Virtual Assembly Builder Studio displays a node for the component being introspected. If introspection fails, Oracle Virtual Assembly Builder Studio provides a link to a log for that component.

2.3.1.1.1 Introspect Additional Appliances

The introspection wizard is a standalone interface to allow you to add a single appliance to a new or an existing assembly.

In the Name Component window, name your component and decide whether to create as a child of an existing parent assembly, or as a standalone component. Enter the following information:

  • Component Name: Name your component; any string is acceptable. The name can be 4 to 40 characters, may not start with a digit, and no spaces or special characters are allowed (underscores are allowed).

  • Overwrite: If introspecting at the top level, you can check this box to overwrite any top-level assembly or appliance object, provided that it is not registered. If you are introspecting into an existing assembly, checking this box overwrites only assemblies and appliances inside that assembly.

  • Parent Assembly: (Optional) Choose a Parent Assembly from the drop-down list or select <no selection> to place the new appliance at the top of the catalog.

  • Description: Enter an optional description.

Click Next.

In the Identify Host window, you identify the host on which the component you want to introspect is running, by entering the following information:

  • Remote or Local Host: Select Remote Host or Local Host.

    If you selected Remote Host, configure the following information:

    • Host Name: Enter the hostname that you want to introspect.

    • Port: Enter the port number for SSH for this host. The default port number is 22.

    • User Name: Enter the username for the SSH user to log into the remote host. This user must have permissions to access the introspected configuration.

    • Password: Enter the password the SSH user uses for accessing this host.

    • Remote Working Directory: Enter the path to a directory on the remote host in which Oracle Virtual Assembly Builder may stage files required for introspection. The files may be reused.

    • Remote Cleanup: Click this check box to remove the artifacts copied over to the Remote Working Directory once the Introspection is complete.

Note:

You cannot perform remote introspection of a database if you cannot log into the database machine with the database installation owner's account. If remote introspection is required, you must enable the account for remote access.

In the Select Component Type window, you identify the type of component you want to introspect, by entering the following information:

  • Type: Choose the component type you want to introspect from the Type drop-down menu.

Depending on the type of component chosen, different sets of properties are displayed. Set the properties for that component by selecting the cell for the property and entering a value for the property. Click Finish.

2.3.1.2 Introspect Using abctl

abctl provides both local and remote introspection capability. For remote introspection, the Oracle Virtual Assembly Builder host must have SSH access to the subject machine.

The -catalog and -name flags are optional. For information on how catalog location is determined, see the Configure section in Oracle Virtual Assembly Builder Installation Guide.

Here are two examples:

Example 2-1 Introspect Oracle HTTP Server Remotely

$ ./abctl introspectOHS -catalog /path/to/mycatalog –name myOHS 
  -remoteHost myReferenceSystemHost –remoteUser abdemo
  -oracleInstance /path/to/oi –ohsComponentName ohs1 

Example 2-2 Introspect Oracle WebLogic Server Locally

$ ./abctl introspectWLS -catalog /path/to/mycatalog 
-name myWLS
-wlsHome /path/to/wls/wlserver_10.3
-domainRoot /path/to/user_projects/domains/basic_domain
-adminUser weblogic

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.2 Package an Appliance or an Assembly

Packaging takes the package definitions generated from introspection, archives these packages into one or more zip (or other raw) files and stores the resulting files in the $catalog/bundles/$cid directory. cid is the capture ID for the packaged appliance or assembly and is created during introspection.

In order for the packaging to succeed, some package plug-ins have specific requirement for the reference system's running state. Table 2-2 lists the preconditions for the products supported by Oracle Virtual Assembly Builder.

Table 2-2 Package Plug-in Requirements

Introspected Product Running State Pre-Condition

Oracle WebLogic Server

No requirement; Oracle WebLogic Server may be up or down.

Oracle HTTP Server (OHS)

No requirement; Oracle HTTP Server may be up or down.

Oracle Web Cache

No requirement; Oracle Web Cache may be up or down.

Oracle RDBMS (DB)

The database must be down in the creating template phase.

For abctl, the database must be down in the packaging phase.


Note:

Introspection and packaging are the only two operations that rely on reference systems.

2.3.2.1 Package Using Oracle Virtual Assembly Builder Studio

The packaging operation is only available in the Template Creation Wizard, which is described in Section 2.3.3, "Create Templates for an Appliance or an Assembly".

Note:

Packages are not required for templates which target Oracle JRockit Virtual Edition.

In the Confirm Component Packaging window of the Template Creation Wizard, for each component that requires packaging you can optionally specify a pre-existing package, if available. Specify credentials if creating a new package on a remote host.

The Configure Package Definitions window, you can optionally add or remove package definitions. Typically, you will not need to add or remove package definitions.

If you want to add a package definition select Add > New Package Definition. You can define a root definition and can optionally define one or more exceptions.

For example, you want to specify a root location for home pages for OHS, but you want to exclude some particular home pages. To create a root definition, highlight the root and select the + icon (Figure 2-5). Then select the exclusions. You can also edit an existing root definition or delete one.

Figure 2-5 Creating a Root Definition

Creating a Root Definition
Description of "Figure 2-5 Creating a Root Definition"

In the Review Components window, you can review the packaging decisions you have made, then click Finish.

Note:

You must confirm a warning message that appears here before the operation begins: "Warning: this operation could take a long period of time. You may want to consider the impact to your system performance."

Progress messages are posted in the message log window. You can open and review the Assembly Status Overview by selecting the Template Creation tab to verify that progress is occurring.

2.3.2.2 Package Using abctl

abctl provides both local and remote packaging capability. For remote packaging, the Oracle Virtual Assembly Builder host must have SSH access to the subject machine.

Here are two examples:

Example 2-3 Package Oracle HTTP Server Remotely

$ ./abctl package -catalog /path/to/mycatalog –name myOHS 
  -remoteHost myReferenceSystemHost –remoteUser abdemo

Example 2-4 Package Oracle WebLogic Server Locally

$ ./abctl package  -catalog /path/to/mycatalog –name myWLS

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.3 Create Templates for an Appliance or an Assembly

Template creation generates virtual machine templates that are ready to be deployed into virtualized platforms. In Oracle Virtual Assembly Builder, Oracle VM is the only supported platform. Oracle Virtual Assembly Builder underneath invokes Oracle VM's modifyjeos tool to create virtual machine templates.

To create a template, you must provide a system base image that contains the operating system. Oracle Virtual Assembly Builder provides a sample system base image. You may create your own system base image if the sample system base image does not meet your needs. For instance, if you want more disk space in the base image, or needs some specific RPMs, then you will use Oracle VM's modifyjeos tool to create a customized system base image.

Templates are stored in $catalog/templates/$cid. cid is the capture ID for the appliance or assembly, and is created during introspection. Template creation must be done on an Oracle Virtual Assembly Builder Host, where Oracle VM's modifyjeos is installed.

For Oracle WebLogic Server components, Oracle Virtual Assembly Builder supports both Guest OS and JRockit VE template types. For non-Oracle WebLogic Server components (that is, Oracle HTTP Server, Oracle Web Cache, or Oracle Database), only the Guest OS template type is supported.

2.3.3.1 Create Templates Using Oracle Virtual Assembly Builder Studio

This operation allows you to create templates for an assembly by selecting Create VM Templates from the Assembly Node Context Menu, or Catalog > Build Template (Figure 2-6).

Figure 2-6 Create VM Templates Wizard

Create VM Templates Wizard
Description of "Figure 2-6 Create VM Templates Wizard"

In the Existing Templates window, you search for existing templates for the entire assembly, or for a single appliance. The table in this window lists assembly components templates that has been created already. You can select those that need to be recreated.

In the WLS Template Type window, select a template type and click Next:

  • Oracle WebLogic Server (WLS): this option allows you to select either Oracle Enterprise Linux or Oracle JRockit Virtual Edition. You may retrieve template results for one or both of these options.

  • non-WLS: this option automatically assigns Oracle Enterprise Linux.

In the Confirm WLS Component Template Type window, you specify a template type for each Oracle WebLogic Server component, either Oracle Enterprise Linux or JRockit Virtual Edition. Select a template type for each of the listed components and click Next.

In the Specify Image Location window, you can specify a base image locations for the Oracle Enterprise Linux and JRockit VE images by selecting the browse icon, or you can leave the default values. For Oracle Enterprise Linux, templates you must enter root and VNC passwords. A base image is required for template creation, but not for packaging.

The Summary window lists all the templates that will be created after you click Finish. It also shows a warning that creating templates can take some time.

2.3.3.1.1 Recreating a Template

If the assembly components have already had a template created, you can recreate the template by selecting the Recreate option. The components that have already had a template created are identified. The radio buttons for selecting operating system are read-only when recreating a template.

Note:

Refer to Section 2.3.2, "Package an Appliance or an Assembly" for descriptions of packaging in the Create VM Templates wizard.

2.3.3.2 Create Templates Using abctl

Example 2-5 through Example 2-9 are createTemplate command examples:

Example 2-5 create OVM Guest OS template for OHS

$ ./abctl createTemplate -catalog /path/to/mycatalog -name myOHS -target OVM

Example 2-6 create OVM Guest OS template for Oracle WLS

$ ./abctl createTemplate -catalog /path/to/mycatalog -name myWLS -target OVM

Example 2-7 create OVM JRockit VE template for Oracle WLS using default JRockit VE base image location

$ ./abctl createTemplate -catalog /path/to/mycatalog -name myWLS -target OVM -jrve

Example 2-8 create OVM templates for an assembly using default base image locations: JRockit VE for Oracle WLS, Guest OS for non-WLS

$ ./abctl createTemplate -catalog /path/to/mycatalog -name topLevelAssembly -target OVM -jrve

Example 2-9 create OVM templates for an assembly using provided base image locations: JRockit VE for Oracle WLS, Guest OS for non-WLS

$ ./abctl createTemplate -catalog /path/to/mycatalog -name topLevelAssembly 
   -target OVM -jrve
   -guestOSImage /path/to/oel/base/image/system.img
   -wlsOnJRVEImage /path/to/jrve/base/image/system.img

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.4 Edit an Assembly

This section describes how to edit an assembly, using Oracle Virtual Assembly Builder Studio.

2.3.4.1 Edit an Assembly Using Oracle Virtual Assembly Builder Studio

After creating an assembly, you may need to edit the assembly before it can be deployed to create connections, and to optionally make other changes to properties.

2.3.4.1.1 Creating Connections

You cannot deploy an assembly without resolving all of the output parameters (for example, AJP connections, JDBC connections, LDAP connections). You can define connections as follows:

  • Configure Web server port forwarding: select myohs and draw an arrow to mywls (Oracle HTTP Server output port forwarding to the Managed Server).

  • Specify JDBC connect strings for each JDBC connection: open the JDBC output of an Oracle WebLogic Server assembly by selecting it.

    For JDBC connections, you either create external appliances or introspect the database, then make the connection between the JDBC output of Oracle WebLogic Server to the external appliance or the introspected database appliance.

    Each of the JDBC connections has a different description. Use that description to figure out which JDBC database schema to connect each to. For each of the JDBC entries, you can copy the original-url, and then copy the hostname and ORACLE_SID, into mydb.

    For example: in jdbc:oracle:thin:@machine999.example.com:1521/orcl, the host is machine999.example.com, the port 1521, and the ORACLE_SID orcl.

    Also specify the ORACLE_SID and port as properties of the external database appliance input, and the host as a property of the database appliance itself.

  • the port is a property of the external db appliance input. The host is the only one that belongs to the db external appliance itself.

2.3.4.1.2 Making Changes to Properties Using the Property Inspector

You may not need to make changes to properties if the values from the reference system are appropriate. If required, make changes using the property inspector.

The property inspector (Figure 2-7) displays the property values. You can view tool tips for each property. Set the properties as required.

Figure 2-7 Property Inspector

Property inspector
Description of "Figure 2-7 Property Inspector"

2.3.4.1.3 Editing Assemblies Containing Oracle HTTP Server/Oracle Web Cache and Oracle WebLogic Server

If you have an assembly that contains Oracle HTTP Server/Oracle Web Cache and Oracle WebLogic Server with Enterprise Manager deployed, the rehydration scripts for Oracle HTTP Server/Oracle Web Cache will call an "opmn registerInstance" to register that component with an Enterprise Manager application hosted in Oracle WebLogic Server.To enable this operation to complete successfully, you must perform the following steps while editing the assembly:

  1. Define connections between Oracle HTTP Server/Oracle Web Cache's EMRegistration and Oracle WebLogic Server.

  2. Use the property inspector to set the Oracle HTTP Server/Oracle Web Cache dependency on Oracle WebLogic Server. You can do this by configuring the Dependency drop-down menu in the General section.

    Without this configuration, Enterprise Manager registration will fail (from OHS/Web Cache's command.out) because the Admin Server has not been started.

  3. Verify that the Oracle WebLogic Server Admin Server has not been configured to accept only SSL connections. The "opmn registerInstance" cannot support SSL connections to Oracle WebLogic Server.

2.3.4.1.4 Application Routing between Oracle HTTP Server and Oracle WebLogic Server

If the Oracle HTTP Server configuration file mod_wl_ohs.conf defines application routing between Oracle HTTP Server and Oracle WebLogic Server, you need to connect Oracle HTTP Server to Oracle WebLogic Server in the editor.

2.3.5 Create a Deployment Plan

This section describes how to create a deployment plan, using Oracle Virtual Assembly Builder Studio.

2.3.5.1 Create a Deployment Plan Using Oracle Virtual Assembly Builder Studio

Create a deployment plan to allow you to override the default metadata of the assembly. You can specify a plan by selecting an assembly in the catalog and selecting File > New > Deployment Plan. The Create Deployment Plan wizard appears (Figure 2-8). A deployment plan is optional if you are using DHCP. It is mandatory in all cases if static IPs are used.

Note:

Only top-level assemblies can have a plan.

Enter the name for the deployment plan and select the associated assembly from the Assembly drop-down menu.

Figure 2-8 Create Deployment Plan

Create deployment plan window.
Description of "Figure 2-8 Create Deployment Plan"

2.3.5.1.1 Setting Properties

The deployment plan pane (Figure 2-9) displays the original property values (Original column) and the new property values (Value column). The original value is the value that existed on the reference system. You can view tool tips for each property. Set the properties as required.

In the DefaultPlanName Properties, for each of your components enter IP addresses for each network0-instance0-ip_address. For example, your assembly has two components, myohs and mywls. You would enter one IP address for myohs, one for AdminServer appliance and one for each other appliance (for example, standalone managed servers or a cluster) in the mywls assembly."

Figure 2-9 Configuring Deployment Plan Properties

Config deployment plan properties
Description of "Figure 2-9 Configuring Deployment Plan Properties"

2.3.5.1.2 Saving Deployment Plans

Save the Deployment Plan to store it in the navigator.

You can create multiple deployment plans. For example, a host provider wants to turn up a new customer with a different network structure (for example a customer requires the same environment except that they require five appliances instead of two appliances, for redundancy purposes).

2.3.6 Create a Resource Pool Connection

This section describes how to create a resource pool connection, using Oracle Virtual Assembly Builder Studio.

2.3.6.1 Create a Resource Pool Connection Using Oracle Virtual Assembly Builder Studio

You can define a connection to an Oracle VM manager, query for resource pools, and make the product aware of the pools by using the Create Oracle VM Connection Manager wizard to configure them, by selecting File > New > Resource Pool Connection. Or, open the Resource Pools view by selecting View > Resource Pools, then click New OVM Manager Connection. The Create OVM Manager Connection wizard appears (Figure 2-10).

Figure 2-10 Connection Properties

Configure connection properties
Description of "Figure 2-10 Connection Properties"

In the Connection window (step 1 of 4), enter the following information then click Next:

  • Connection Name: the name of the connection to an Oracle VM manager.

  • Host: the host of the Oracle VM manager.

  • Port: the port for connecting to the Oracle VM manager.

  • User Name: the user name for authenticating to the Oracle VM manager.

  • Password: the password for authenticating to the Oracle VM manager.

  • VMM version: the hard coded version is 2.2.

  • VM operations timeout: the amount of time, in seconds, to time out a VM operation. The default is 1000 seconds. Increase this value if you are running into timeout issues.

If you select Use Secure Connections, you must also configure the following parameters:

  • Secure Port: the port to use for secure SSL communications.

  • Grab Certificate: select the Get Certificate button, view the certificate details from the trust store, and select Yes if you approve the certificate.

After you click Next, the Test window attempts to connect to the specific host, and displays the result. Click Next to continue.

In the Resource Pools window, select the resource pools that you want to access with this connection. Select the resource pools from the Defined Pools, and use the arrow keys to move the resource pools to the Selected column. Also, you must designate one of the pools you have selected to be the Default pool for the connection. Click Next to continue.

Figure 2-11 Selecting Resource Pools

Selecting resource pools.
Description of "Figure 2-11 Selecting Resource Pools"

In the Network Bridges window, you must provide configuration information for network bridges. At minimum, a network bridge Name must be specified. With this minimal configuration, all VMs created through this connection must be started using DHCP. If you need static IP addresses for VMs, you must specify all the other parameters. Click Finish when all parameters have been entered. You will see the new pool that has been created.

2.3.7 Register a Template

This section describes how to register a template, using Oracle Virtual Assembly Builder Studio, or abctl.

Once the Resource Pools have been configured, you can register the templates for assemblies that need to be deployed. Template registration is a long running operation that could take several minutes. The time that it takes depends upon the number of templates being registered for the assembly and the size of each template.

2.3.7.1 Register a Template Using Oracle Virtual Assembly Builder Studio

To register a template, select the assembly then access the Register Template page by selecting Catalog > Register Template.

  1. OVM Manager Connection: Select a Connection from the Drop-down list. If you want to create a new connection, use the button to open the Connection Wizard.

  2. Resource Pool: Select a pool from the Drop-down list. If you want to configure a new pool, use the button to open the Resource Pool Connection Wizard.

  3. Deployment Plan: Optional. Select a Deployment Plan from the Drop-down list. This determines only which template type to register.

After making your selections, click Register.

To view registered templates, open the Assembly Status Overview window and select the Template Registration tab.

2.3.7.2 Register a Template with abctl

Use the registerTemplates command to register templates for an assembly to a resource pool. Example 2-10 shows the registerTemplates command:

Example 2-10 registerTemplates Command

$ ./abctl help -command registerTemplates
$./abctl registerTemplates -n MyAssembly -p MyPlan -rm MyResourceManager -po MyPool 

You can list all the templates with the listTemplates command. The list displays whether the templates have been registered or not. Example 2-10 shows the listTemplates command:

Example 2-11 listTemplates Command

$ ./abctl help -command listTemplates
$ ./abctl listTemplates

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.8 Deploy an Assembly

This section describes how to deploy an assembly, using Oracle Virtual Assembly Builder Studio, or abctl.

You deploy an assembly by selecting the Assembly, the Deployment Plan, the Resource Manager, and the Resource Pool for that Resource Manager. The Resource Pool is optional and if one is not specified, the default pool for the specified Resource Manager is used. When an assembly is deployed, VMs for the Assembly are created and started. Furthermore, applications within the VMs are also started.

Deploying an assembly can be a long running operation that can take several minutes. The time taken to deploy an assembly will vary depending upon the number of VMs that need to be created and started.

2.3.8.1 Deploy Using Oracle Virtual Assembly Builder Studio

Once you have created your deployment plan, you can deploy an assembly by selecting Deploy to Oracle VM from the Assembly Node Context Menu, or by selecting the assembly in the Catalog Navigator and selecting Catalog > Deploy to Oracle VM.

In the Assembly Status Overview, you can see a list of assemblies that can be deployed. The status column indicates whether the assembly has been deployed or not.

In the Select deployment plan and target window (step 1 of 4), enter the following information:

Click Next.

The Review WebLogic Server Templates window (step 2 of 4) displays only if there are any Oracle WebLogic Server components with multiple template types in the assembly. Review the template type for each component then click Next.

In the Review resource requirements window, you can view a summary of the resource requirements required before deployment. Before continuing, ensure that your environment meets these requirements.

Click Finish to initiate the deployment. After the deployment has been initiated, you can go to the Assembly Status Overview window to view the deployment. You can access the Assembly Status Overview window by selecting Catalog > Assembly Status Overview.

When the deployment of a VM passes the point where the network is initialized, you can expand an appliance to see the IP addresses of each virtual machine.

2.3.8.1.1 Resolving Deployment Issues

When a deployment attempt fails, the information on the assembly you are attempting to deploy is not automatically cleaned up. This allows you to investigate the cause of the failure. After determining the cause of a deployment failure, you must undeploy the assembly before attempting another deployment.

2.3.8.1.2 Limitations on Mounting NFS File Systems

Oracle Virtual Assembly does not support the handling of mounting NFS file systems during deployment. That is, if the reference system contains references to mounting NFS file systems in the configuration files, the rehydration logic will not create those systems in the deployment environment.

To configure mounting NFS file systems, you must modify the NFS mounting information, then stop and restart the Assembly to activate the changes.

2.3.8.2 Deploy Using abctl

Check the Resource Manager before deployment to see if it has enough resources to perform the deployment. Use the checkResources command to perform this operation, as shown in Example 2-12.

Example 2-12 checkResources Command

$ ./abctl help –command checkResources
$ ./abctl checkResources  -n MyAssembly –p MyPlan –rm MyResourceManager

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

Once it has been determined that sufficient resources are available, you can initiate the deployment by using the deploy command, as shown in Example 2-13.

Example 2-13 deploy Command

$ ./abctl help –command deploy
$ ./abctl deploy –n MyAssembly –p MyPlan –rm MyResourceManager

When an assembly is deployed it is assigned a deployment Id. The Id is listed in the output of the deploy command. This Id is used to refer to that deployment in the other CLI commands. You can list the current deployments with the listDeployments command, as shown in Example 2-14:

Example 2-14 listDeployments Command

$ ./abctl help –command listDeployments
$ ./abctl listDeployments –i GqMw_3bzc_MyAssembly_MyPlan
$ ./abctl listDeployments –i GqMw_3bzc_MyAssembly_MyPlan -l

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.9 Stop a Deployment

This section describes how to stop a deployment, using Oracle Virtual Assembly Builder Studio, or abctl.

When a deployment is stopped, the VMs and the applications that are running within the VMs are stopped. VMs that are in a stopped state retain their context. Stopped VMs can be restarted much more quickly than the original deployment because they do not need to be created.

2.3.9.1 Stop an Assembly with Oracle Virtual Assembly Builder Studio

From the Assembly Status Overview, you can start, stop, deploy, or undeploy a deployment. To stop a deployment, select the deployment that needs to be stopped and click Stop.

2.3.9.2 Stop an Assembly with abctl

Use the stop command to stop a deployment. The deployment is referred to by its deployment Id. You can retrieve a list of deployments by using the listDeployments command. Example 2-15 shows the stop command:

Example 2-15 stop Command

$ ./abctl help –command stop
$ ./abctl stop –i GqMw_3bzc_MyAssembly_MyPlan

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.10 Start a Deployment

This section describes how to start a deployment, using Oracle Virtual Assembly Builder Studio, or abctl.

A deployment that has been stopped can be restarted. Restarting a deployment starts up all the VMs that were stopped and also starts up the applications within the VMs. The deployment gets restored to the state it was in before it was stopped. This operation completes more quickly than a deployment operation.

2.3.10.1 Start a Deployment with Oracle Virtual Assembly Builder Studio

From the Assembly Status Overview, you can start, stop, deploy, or undeploy a deployment. To start a deployment, select the deployment and click Start.

2.3.10.2 Start a Deployment with abctl

The start command is used to start a deployment. The deployment is referred to by its deployment Id. You can retrieve the list of deployments by using the listDeployments command. Example 2-16 shows the start command:

Example 2-16 start an Assembly

$ ./abctl help –command start
$ ./abctl start –i GqMw_3bzc_MyAssembly_MyPlan

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.11 Scale Appliance(s) in a Deployment

This section describes how to scale the number of VM instances per appliance in an deployment, using Oracle Virtual Assembly Builder Studio, or abctl.

After you deploy an assembly, the target number of VM instances for each appliance is started. The target lies between the minimum and maximum number of instances that can be instantiated for each appliance. You can dynamically specify a new target after an assembly has been deployed. Oracle Virtual Assembly Builder dynamically starts or stops VM instances to reach the new target (thus scaling up or scaling down).

2.3.11.1 Scale Appliance(s) in a Deployment with Oracle Virtual Assembly Builder Studio

Use Scale to scale up or scale down the number of VM queues per appliance in a deployment by clicking the Scale button. In the Scale dialog, the Minimum and Maximum numbers of queues are displayed, as is the number of currently running queues. You can set the value of Target to a number between the minimum and maximum allowed values.

Click OK when you are done.

2.3.11.2 Scale Appliance(s) in a Deployment with abctl

Before scaling an appliance in a deployment, check to see if there are sufficient resources. Use the checkResources command (Example 2-17):

Example 2-17 checkResources Command

$ ./abctl help -command checkResources
$ ./abctl checkResources -i GqMw_3bzc_mySite_plan1 -a /myAppliance -tg 2 

Use the scaleAppliance command to scale the appliance (Example 2-18):

Example 2-18 scaleAppliance Command

$ ./abctl help -command scaleAppliance
$ ./abctl scaleAppliance -i GqMw_3bzc_mySite_plan1 -a /cluster_1 -tg 2 

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.12 Undeploy a Deployment

This section describes how to undeploy a deployment, using Oracle Virtual Assembly Builder Studio, or abctl.

Undeploying a deployment stops all the running VMs and removes then from the Resource Pool. It also cleans up any failed VMs that may exist.

2.3.12.1 Undeploy a Deployment with Oracle Virtual Assembly Builder Studio

From the Assembly Status Overview, you can start, stop, deploy, or undeploy a deployment. To undeploy a deployment, select the deployment that needs to be undeployed and click Undeploy.

2.3.12.2 Undeploy a Deployment with abctl

You can use the undeploy command to undeploy a deployment. The deployment is referred to by its deployment Id. You can retrieve a list of deployments by using the listDeployments command. Example 2-19 shows the undeploy command:

Example 2-19 undeploy Command

$ ./abctl help –command undeploy
$ ./abctl undeploy –i GqMw_3bzc_MyAssembly_MyPlan

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.13 Unregister Template(s) of an Assembly

This section describes how to unregister template(s) of an assembly, using Oracle Virtual Assembly Builder Studio, or abctl.

Once you have undeployed a deployment, and have no further use for the registered templates in the resource pool, you can unregister them. This recovers space in the resource pool.

You cannot unregister a template when a deployment exists. This prevents the situation having a deployment without any corresponding registered templates.

Note:

Unregistering template(s) of an assembly results in the unregistration of both Guest OS and JRockit VE templates if both templates happen to be registered.

2.3.13.1 Unregistering a Template with Oracle Virtual Assembly Builder Studio

In the Assembly Status Overview page, click the Template Registration tab to view registration information. You can register or unregister templates. To unregister a template, select the assembly whose templates needs to be unregistered, then click Unregister.

A popup window prompts you to confirm the unregistration. Click Yes to unregister the assembly.

2.3.13.2 Unregistering a Template with abctl

Use the unregisterTemplates command to unregister templates for an assembly. Example 2-20 shows the unregisterTemplates command:

Example 2-20 unregisterTemplates Command

$ ./abctl help –command unregisterTemplates
$ ./abctl unregisterTemplates -n mySite -rm MyResourceManager

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.14 Export an Appliance or Assembly from a Catalog

This section describes how to export an appliance or assembly from a catalog, using Oracle Virtual Assembly Builder Studio, or abctl.

To copy an appliance or assembly from one catalog to another, you must use Oracle Virtual Assembly Builder's export and import functionality.

Note:

Manual copying of disk files from one catalog to another is not supported and will not work.

2.3.14.1 Exporting an Appliance or Assembly from a Catalog Using Oracle Virtual Assembly Builder Studio

Access the Export dialog box (Figure 2-12) to export an appliance or assembly from a catalog by selecting File > Export. Enter the following information:

  • Name: this field pre-populates with the name of the appliance or assembly that you selected for export.

  • Directory: browse to and select or enter the name of the directory of the location of the export. This directory must be empty and will be created if it does not exist.

  • MetaData Only: check this checkbox to export only metadata (and not the associated templates or packages).

Click OK.

Figure 2-12 Exporting an Appliance or Assembly from a Catalog

Export window
Description of "Figure 2-12 Exporting an Appliance or Assembly from a Catalog"

2.3.14.2 Exporting an Appliance or Assembly from a Catalog Using abctl

Use the export command to unregister templates for an assembly. Example 2-21 and shows the export command for exporting metadata, and associated templates and packages. Example 2-22 shows exporting metadata only.

Example 2-21 export Command

$ ./abctl help –command export
$ ./abctl export -name myOhs -to /tmp/myOhs.zip(some progress messages)
Successfully created /tmp/myOhs.zip

Example 2-22 export Command (Metadata Only)

$ ./abctl export -name myOhs -to /tmp/myOhs.zip -metadataOnly(some progress message)
Successfully created /tmp/myOhs.zip

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.

2.3.15 Import an Appliance or Assembly to a Catalog

This section describes how to import an appliance or assembly, using Oracle Virtual Assembly Builder Studio, or abctl.

To copy an appliance or assembly from one catalog to another, you must use Oracle Virtual Assembly Builder's export and import functionality.

2.3.15.1 Importing an Appliance or Assembly to a Catalog Using Oracle Virtual Assembly Builder Studio

Access the Import dialog box (Figure 2-13) to import an appliance or assembly to a Catalog by selecting File > Import. Enter the following information:

  • Directory: browse to and select or enter the name of the directory of the assembly or appliance which was exported.

  • Overwrite: check this checkbox to specify that any existing metadata and associated packages and templates are overridden. This is to correct a case of name or CID collision. Overriding an existing component can only be done if the existing component can be removed.

Click OK.

Figure 2-13 Importing an Appliance or Assembly

Import window
Description of "Figure 2-13 Importing an Appliance or Assembly"

2.3.15.2 Importing an Appliance or Assembly Using abctl

Use the import command to imports (into the target catalog) the content of one or more zip files containing a sparse copy of exported metadata and associated packages and templates.

A new entry is created in the target catalog. If there is a name collision (for example, the import command attempts to create 'mySite', and the catalog already has 'mySite'), the operation will fail. Also, if there is a CID collision, the operation fails.

Example 2-23 shows the import command:

Example 2-23 import Command

$ ./abctl help –command import
$ abctl import -from /tmp/myOhs.zip
Successfully imported myOhs to /example/ab_home/catalog.

For more details see Appendix A, "Command Line Reference", which contains the details of the parameters that can be passed into the command along with a sample output of the command.