6 Scaling Out a Topology (Machine Scale Out)

This chapter describes the steps for scaling out a topology (machine scale-out) for all Fusion Middleware products that are a part of a Fusion Middleware WebLogic Server domain. To enable high availability, it is important to provide failover capabilities to another host computer. When you do so, your environment can continue to serve the consumers of your deployed applications if one computer goes down.

This chapter includes the following topics:

6.1 About Machine Scale Out

Scalability is the ability of a piece of hardware or software or a network to "expand" or "shrink" to meet future needs and circumstances. A scalable system is one that can handle increasing numbers of requests without adversely affecting response time and throughput.

Machine scale-out is the process of moving a server, one of many on one machine, to another machine for high availability. Machine scale out is different from Managed Server scale up, which is the process of adding a new Managed Server to a machine that already has one or more Managed Servers running on it. For more information on scaling up your environment, see "Scaling Up Your Environment" in the guide Oracle Fusion Middleware Administering Oracle Fusion Middleware.

6.2 Roadmap for Scaling Out Your Topology

The following table describes the typical steps you must take to scale out a topology.

Table 6-1 Roadmap for Scaling Out Your Topology

Task Description More Information

Product is ready for scale out

Product is installed, configured, and a cluster of Managed Servers is available; your product is in a standard installation topology

Section 6.4, "About Scale Out Prerequisites"

Verify that you meet resource requirements

You must verify that your environment meets certain requirements

Section 6.5, "Resource Requirements"

Create a new machine and assign servers to it

Use the Administration Console to create a new machine and add Managed Servers to it.

Section 6.6, "Creating a New Machine"

Run the pack command

Pack up the domain directory

Section 6.7, "Packing the Domain on APPHOST1"

Prepare the new machine

Install the same software that you installed on the first machine

Section 6.8, "Preparing the New Machine"

Run the unpack command

Create a Managed Server template.

Section 6.9, "Running Unpack to Transfer the Template"

Start the server

Starts the Managed Server on the new machine

Section 6.11, "Starting the Managed Servers"

Verify the topology

Test the new setup

Section 6.12, "Verifying Machine Scale Out"


Note:

In this section, APPHOST refers to a physical host computer, and machine refers to the WebLogic Server machine definition describing that host. See "Understanding the Oracle Fusion Middleware Infrastructure Standard Installation Topology" in the guide Installing and Configuring the Oracle Fusion Middleware Infrastructure.

6.3 Optional Scale Out Procedure

Following the standard installation topology results in multiple Managed Servers assigned to a single host computer

This approach represents the most flexible way to create and scale out a domain topology so it can meet a variety of changing requirements. It allows you to 1) create and validate a single-host domain, which is targeted to a single machine on a single host computer, and then 2) "retarget" the Managed Servers to additional machines, as additional computing resources are required. An additional benefit of this approach is that it facilitates troubleshooting; you can validate the basic domain then perform and troubleshoot scale up and scale out steps at a later time.

However, if you know ahead of time what your target topology is, you can create machines during additional domain creation then simply perform the pack and unpack steps.

If you have already assigned Managed Servers to their target machines, either in the initial installation process or through an online administrative operation, simply skip Section 6.6, "Creating a New Machine" as you progress through the roadmap (Table 6-1, "Roadmap for Scaling Out Your Topology").

See the product installation guides, such as Installing and Configuring the Oracle Fusion Middleware Infrastructure, for more information on machine mapping.

6.4 About Scale Out Prerequisites

Before you start the scale out process, you must have a standard installation topology set up for your product. The standard installation topology serves as the starting point for scale out. If you followed the steps in your product installation guide, you should have a standard installation topology. For an example, see the standard installation topology that the topic "Understanding the Oracle Fusion Middleware Infrastructure Standard Installation Topology" describes in the guide Oracle Fusion Middleware Installing and Configuring the Oracle Fusion Middleware Infrastructure.

See Also:

For more information on the standard installation topology, see your product's installation guide or "About the Standard Installation Topology" in the guide Planning an Installation of Oracle Fusion Middleware.

6.5 Resource Requirements

Before you scale out the topology, verify that your environment meets these requirements:

  • At least one machine running multiple Managed Servers configured with a product. This is the result of following your product installation guide or administration guide to add additional servers.

  • A host computer in addition to your starting host computer.

  • Each host computer can access the Oracle home that contains the product binaries by one of the following means:

    • Shared disk with binaries from the original installation

    • Dedicated disk with a new installation (matches the original installation)

    • Dedicated disk with a clone of the binaries from the original installation

      See Chapter 3, "Using Shared Storage" for more information.

  • Sufficient storage available for the domain directory.

  • Access to the same Oracle or third-party database used for the original installation.

  • A shared disk for JMS and transaction log files (required when using a file persistence profile).

6.6 Creating a New Machine

A machine is the logical representation of the computer that hosts one or more WebLogic Server instances (servers). In a WebLogic domain, the machine definitions identify physical units of hardware and are associated with the WebLogic Server instances that they host.

Follow these steps to create a new machine:

6.6.1 Shutting Down the Managed Server

The server must be in a shutdown state before moving to a new machine. If the server is up and running, see the topic "Shut down a server instance" in the Administration Console Online Help to shut down the Managed Server that the new machine will host.

6.6.2 Creating a New Machine

This topic describes how to create a new machine using the Administration Console. To create a new machine using WLST commands see "Creating a New Machine for Certain Components" in the guide Oracle Fusion Middleware Administering Oracle Fusion Middleware.

Note:

The machine you create in this procedure must have a listen address on a specific network interface, not just a local host.

To create a new machine in the domain using the Administration Console, perform the following steps:

  1. If the domain Administration Server is not running, you must start it. Go to the DOMAIN_HOME/bin directory and run:

    ./startWeblogic.sh
    
  2. After the Administration Server is up and running, access the WebLogic Server Administration Console. Open a web browser and enter the URL:

    http://hostname:port/console 
    

    On the Welcome screen, log in.

  3. In the Change Center of the Administration Console, click Lock & Edit.

    Note:

    For production domains, Oracle recommends creating the domain in "Production" mode, which enables Change Center. If Production mode is not enabled, Change Center steps are not required.

  4. Under Domain Structure, expand Environment then click Machines.

  5. Above the Machines table (above Summary), click New.

  6. In the Create a New Machine screen, enter a name for the machine (such as machine_2). Select the Machine OS using the drop-down list then click Next.

  7. On the next screen, for Type:, use the drop-down list to select Plain.

    For the Node Manager Listen Address, enter the IP address or host name of the host computer that will represent this machine. Both machines appear in the Machines table.

  8. Click Finish.

  9. In the Change Center, click Activate Changes.

    The message "All changes have been activated. No restarts are necessary." appears. This message indicates that you have a new machine.

6.6.3 Assigning Managed Servers to the New Machine

To add Managed Servers to the newly-created machine, use the Administration Console to perform the following steps:

  1. In the Change Center, click Lock & Edit.

  2. In the Machines table, click the machine machine_1.

  3. Click the machine name.

  4. Under the Settings for machine_1, click the Configuration tab and then the Servers subtab.

  5. Above the Servers table, click Add.

  6. On the Add a Server to Machine screen, enter the Server Name and the Server Listen Port in the fields (required).

    Use the Select a server drop-down list to choose machine_1 and then click Finish.

  7. Under Domain Structure, click Machines.

    In the Machines table, click the machine machine_2.

  8. Under the Settings for machine_2, click the Configuration tab and then the Servers tab. Above the Servers tab, click Add.

    On the Add a Server to Machine screen, select the button Select an existing server, and associate it with this machine.

    Use the Select a server drop-down list to choose machine_2 then select Finish.

    The message Server created successfully appears.

  9. To complete the changes, go back to the Change Center. Click Activate Changes. The message All changes have been activated. No restarts are necessary. appears.

    To see a summary, under Domain Structure, under Environment, click Servers. The Servers table on the right shows all servers in the domain and their machine assignments.

6.7 Packing the Domain on APPHOST1

You create a Managed Server template by running the pack command on the WebLogic domain.

Note:

The Administration Server should be running on APPHOST1 when you go through the pack and unpack steps.

Run the pack command on APPHOST1 to create a template pack. You will unpack the template file on APPHOST2 later in the scale out process; Section 6.9, "Running Unpack to Transfer the Template" describes the unpack procedure.

For example:

ORACLE_COMMON/common/bin/pack.sh \
     -domain=DOMAIN_HOME \ 
     -template=dir/domain_name.jar \ 
     -managed=true \ 
     -template_name="DOMAIN"

In the preceding example:

  • Replace DOMAIN_HOME with the full path to the domain home directory.

  • Replace dir with the full path to a well-known directory where you will create the new template file.

  • Replace domain_name in the JAR file name with the domain name. This is the name of the template file that you are creating with the pack command. For example: mydomain.jar.

    See Also:

    See "pack and unpack Command Reference" in Creating WebLogic Domains and Domain Templates for more information about creating a Managed Server template.

6.8 Preparing the New Machine

To prepare the new machine, machine_2, verify that APPHOST2 has access to the shared disk where the Oracle home is installed or install the same software that you installed on machine_1.

For example, if you are scaling out an Oracle Fusion Middleware Infrastructure domain, verify that APPHOST2 can access the Infrastructure Oracle home.

Note:

If you use shared storage, you can reuse the same installation location.

Note:

If you are performing a new installation or reusing the binaries by means of shared storage, the path location of the new files must match the original machine's path location exactly.

6.9 Running Unpack to Transfer the Template

To unpack the template and transfer the domain_name.jar file from APPHOST1 to APPHOST2, run the unpack command:

$ORACLE_HOME/oracle_common/common/bin/unpack.sh \
-domain=user_projects/domains/base_domain2 \
-template=/tmp/base_domain_template.jar \
-app_dir=user_projects/applications/base_domain2

6.10 Starting the Node Manager

To start Node Manager, run the following:

$DOMAIN_HOME/bin/startNodeManager.sh &

When you use machine scoped Node Manager, see "Using Node Manager" in Administering Node Manager for Oracle WebLogic Server for more information on Node Manager start options.

6.11 Starting the Managed Servers

To use the Administration Console to start the Managed Servers:

  1. In the left pane of the Console, expand Environment and select Servers.

  2. In the Servers table, click the name of the Managed Server that you moved to the new machine to start it.

  3. Select Control > Start/Stop.

  4. In the Server Status table, select the check box next to the name of the server(s) you want to start and click Start.

  5. On the Server Life Cycle Assistant page, click Yes to confirm.

See Also:

To use WLST commands or Fusion Middleware Control to start Managed Servers, see "Starting and Stopping Managed Servers" in the guide Oracle Fusion Middleware Administering Oracle Fusion Middleware.

6.12 Verifying Machine Scale Out

To determine if the machine scale out succeeded, verify that the server status has changed to RUNNING after you start it using the Administration Console.