Scenario: Building Your Tree

Goal

Setting up a basic consumer tree that mirrors your business structure vastly increases your ability to manage your resources efficiently. By following the steps below, you gain an understanding of a consumer tree, consumers, and how to plan for the future.

Scenario

You have recently installed your cluster and have not yet created consumers, modified the resource plan, or modified, removed, or added resource groups. You want to understand what your consumer tree does and how you should build it.

At a glance

  1. Gather the facts

  2. How your business structure maps to your tree

  3. Consumer tree

  4. Create your consumers

  5. How you are prepared

Gather the facts

Before you begin to create your consumers and build your tree, you need to know how you want to control your cluster resources. To begin the process, you need to map out your current business structure.

  1. Map out your business structure by hand.

    As a best practice, restrict the number of levels to four.

    For example, your business structure might look like this:

  2. Prune your tree.

    Once you have a detailed diagram of your company structure, decide if any branches of your tree do not need to consume cluster resources, and remove them from your diagram.

  3. Prioritize your business processes.
    1. For each top-level business process, decide which areas should receive resources first when they need them.

      If I decide that QA should have priority over everything else, and Finance likely needs resources with less urgency, I might set the order like this:

      Keep in mind that you want to make sure that your business structure makes a distinction that parallels how you want to manage and distribute your resources. You may want to break out special projects that need dedicated or specialized hosts.

      Your business structure and its hierarchy should reflect long-term business goals because it can be complicated to modify the tree later on.

    2. Prioritize all your lower level business areas relative to other leaf consumers from the same branch (siblings).

You now have the basic planning information that you are going to use to create your consumer tree.

How your business structure maps to your tree

The business structure you mapped out above becomes the template to create a consumer tree.

The top-level business processes become top-level consumers.

The lowest area of business becomes a leaf consumer and this is the consumer location where you register such things as services or other application managers.

You have some built-in consumers that run necessary cluster services (ManagementServices and Cluster services, and their respective leaf consumers, EGOManagementServices and EGOClusterServices).

You also have a SampleApplications consumer and its leaf consumer, EclipseSamples, used by the Sample client applications included in the EGO SDK.

About the consumer tree

The consumer tree organizes consumers into a structure that makes it easy to apply resource plans.

Overview

The consumer tree is closely related to the resource plan. The plan cannot be defined without the tree.

The tree only defines organizational relationships among consumers, while the plan defines resource allocation.

The choice of consumers and their hierarchy should reflect long-term business goals because it can be complicated to modify the tree. To make the system adjust to short-term business changes, you can modify the users associated with a consumer, or the resource plans defined in the plan.

Graphical description

Create your consumers

You have created a diagram mapping out your business structure. You have read the descriptions of the parts of the tree and understand how they interact. You are logged on to the Platform Management Console as a cluster administrator.

It is difficult to reorganize your tree structure once you have created it, so preparation and planning are key. You need to create a consumer for each label on your business structure that you created above. If you have created user accounts and know who the consumer administrator is for each top-level consumer, you can specify those user accounts during this procedure. If not, you can assign consumer administrators later.

  1. Click Consumers > Consumers & Plans > Consumers.

    A list of existing top-level consumers displays. By default, you have ManagementServices, SampleApplications, and ClusterServices.

  2. Create a consumer for your most important top-level business area.

    Use the plan you have already laid out and create a consumer with the name of that area. From the example above, the first consumer is "QA".

    1. Select Global Actions > Create a Consumer.
    2. Specify the name for your most important consumer.

      The most important top-level consumer in the plan above is “QA”.

    3. If you want, specify administrators and users, or assign them later.
    4. If you want, specify an OS user account associated with this consumer now, or assign one later.
    5. Leave the default resource groups selected.

      If you have already created more resource groups or replaced ComputeHosts with others, select as many as you would like available throughout this branch of the tree. If you do not select ManagementHosts and InternalResourceGroup resource group plus at least one other group, you have insufficient resources to run your applications on this entire branch.

    6. Leave the Reclaim behavior section blank.

      Reclaim behavior is an advanced feature and must be coordinated with the resource plan settings.

    7. For all consumers (except for those in the ManagementHosts and InternalResourceGroup resource groups), ensure the box Rebalance when time intervals change is checked within individual Consumer Properties dialog boxes.

      This ensures that when your resource plan changes according to set time intervals, that originally configured share ratios, allocations, and lend/borrow policies are reapplied and enforced across all consumer branches in the consumer tree.

    8. Click Create.
  3. In the order of the priorities you have already established, create the rest of your top-level consumers.

    For example, following the plan above, create Development, Research, and then Finance.

  4. Once you have all your top-level consumers in the order that you want, in the Platform Management Console use the tree to navigate to your first top-level consumer (for example, “QA”).
  5. Create all the sub-consumers for the most important top-level consumer (for example, “QA”) in the order that you have prioritized them.
  6. Navigate to each sub-consumer and create required leaf consumers.
  7. Repeat this process until each branch of the tree is complete and matches the plan you made.

The final consumer tree follows the same structure as the business structure.

Tip:

Do not name any two consumers with the same name. In the example below, the number “2” was added to the second consumer named “General” to distinguish them.

How you are prepared

Now that you have a consumer tree that mirrors your business structure and is ordered according to the most important areas, you are prepared to go register applications to leaf consumers and customize your resource plan.

You are also ready to add user accounts and assign administrators to consumers.