Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP XC System Software : Administration Guide > Chapter 3 Managing System Services

Adding a Service

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Glossary

 » Index

A third-party software installation might result in the need to add a service. You need to decide whether to add the service to an existing role or to a new role. This section describes both procedures.

The addition of a service requires the understanding of the roles_services.ini file and the possible creation of a service.ini file. This section describes both files.

Adding a service also requires that you perform the following actions:

  • Reconfigure the HP XC system.

  • Update the configuration database.

  • Reimage nodes.

  • Restart the HP XC system.

Adding a service has a considerable impact on the system.

Understanding the roles_services.ini File

An important factor in the addition of a service is the /opt/hptc/config/roles_services.ini file. This file is organized into stanzas as follows:

  • The first stanza lists all the roles:

    [global]
    roles = <<EOT
    node_management
    compute
    .
    .
    .
    common
    management_server
    EOT
  • The second stanza lists all the services:

    services = <<EOT
    cmf
    compute_engine
    .
    .
    .
    swmlogger
    syslogng_forward
    EOT
  • The remaining stanzas, which follow the [roles_to_services] designator, each specify a role and list all the services for that role. The stanzas for the compute, external, and disk_io roles are shown here:

    [roles_to_services]
    compute = <<EOT
    compute_engine
    EOT
    
    external = nat
    
    disk_io = <<EOT
    nfs_server
    EOT
    .
    .
    .

Understanding the .ini File for a Service

Services that are not assigned to the common role need a corresponding .ini file that defines its configuration needs to the cluster_config utility. The file name is based on the name of the service; for example, the cmf.ini and supermond.ini files are the .ini files for the cmf and supermond services, respectively. Services assigned to the common role and services for which no corresponding .ini file can be found are configured according to the default.ini file.

The service.ini files reside in the /opt/hptc/config/etc/services directory.

The format of the body of the service.ini file is as follows:

[Config]

service_recommended = value

optimal_scale_out = value

head_node_required = value
head_node_desired = value

external_connection_required = value
external_connection_desired = value

exclusivity_desired = value

These parameters are explained as follows:

service_recommended

Assigning 1 to this parameter indicates that the service is part of the default configuration. The cluster_config utility recommends the assignment of nodes to this service.

Alternately, assigning 0 means that the cluster_config utility does not interpret the service as part of the default configuration.

optimal_scale_out

Assign the scale-out value to this parameter. The scale-out value is the number of nodes that this new service can service with optimal performance. The cluster_config command divides the total number of nodes in the HP XC system by this value to obtain the number of server nodes for this service.

Assign 1000000 (one million) to this parameter if scaling is not a factor.

head_node_required

Assigning 1 to this parameter indicates that the service must run on the head node.

Assigning 0 indicates that the service does not need to run on the head node.

IMPORTANT:

Do not assign 1 to both the head_node_required and head_node_desired parameters. If you assign 1 to the head_node_required, assign 0 to the head_node_desired parameter.

head_node_desired

Assigning 1 to this parameter indicates that running the service on the head node is beneficial, but not necessary.

Assigning 0 indicates that the service does not benefit from running on the head node.

IMPORTANT:

Do not assign 1 to both the head_node_required and head_node_desired parameters. If you assign 1 to the head_node_desired, assign 0 to the head_node_required parameter.

external_connection_required

Assigning 1 to this parameter indicates that the service requires an external connection.

Assigning 0 indicates the service does not require an external connection.

IMPORTANT:

Ensure that you do not assign 1 to both the external_connection_required and external_connection_desired parameters. If you assign 1 to the external_connection_required, assign 0 to the external_connection_desired parameter.

external_connection_desired

Assigning 1 to this parameter indicates that an external connection is beneficial, but not necessary.

Assigning 0 indicates the service does not require an external connection.

IMPORTANT:

Ensure that you do not assign 1 to both the external_connection_required and external_connection_desired parameters. If you assign 1 to the external_connection_desired, assign 0 to the external_connection_required parameter.

exclusivity_desired

Assign 1 to this parameter if the service would benefit enough to justify having its own service node or nodes on a larger system. If so, you must also specify the exclusivity_group parameter.

Assign 0 if the service does not need the exclusive use of nodes.

exclusivity_group

Provide a name for the nodes for the service. The name is an alphanumeric identifier (underscore characters are permitted), but it must begin with an alpha character.

Services specifying the same exclusivity group name are assigned to the same node or nodes from the correspondingly named group of exclusive nodes.

The analyze command of the cluster_config utility examines the parameters for each service.ini file and generates a report like the following:

[L]ist Nodes, [M]odify Nodes, [A]nalyze, [H]elp, [P]roceed, [Q]uit: A

Recommended Cluster Configuration
----------------------------------------------------------------
     3    Total nodes
     1    Nodes assigned service roles
     0    Exclusive servers
     1    Non-exclusive servers
     3    Compute nodes

                   Role  HN   HN   Ext  Ext  Exc
Recommend Assigned Rec   Req  Rec  Req  Rec  Rec  Role
----------------------------------------------------------------
     3         3                                  compute
     1         1                                  disk_io
     1         1                                  external (optional)
     1         0                                  login (optional)
     1         1                                  management_hub
     1         1                                  management_server
     1         0                                  nis_server (optional)
     1         1                                  resource_management

The columns in the middle of the report correspond to parameters in the service.ini file as follows:

HN Reqhead_node_required
HN Rechead_node_desired
Ext Reqexternal_connection_required
Ext Recexternal_connection_desired
Exc Recexclusivity_desired

An N in these columns indicates a note; a W, indicates a warning. When notes and warnings are present, more detailed descriptions are displayed immediately after the table.

Adding a Service to an Existing Role

IMPORTANT:

Perform this procedure only when you have exclusive use of the HP XC system and when no jobs are running on the system because the procedure requires that you reimage nodes.

This procedure adds a service called newservice to the common role:

  1. Log in as the superuser on the head node.

  2. Copy the roles_services.ini file:

    # cd /opt/hptc/config
    # cp role_services.ini role_services.ini.BAK
  3. Determine the role that best suits the new service.

    Use the shownode servers command to determine which nodes currently provide the services for that role. This command is described in “Displaying the Nodes That Provide a Specified Service”.

  4. Edit the roles_services.ini file as follows:

    1. Add the name of the new service to the stanza that lists the services.

      services = <<EOT
      cmf
      .
      .
      .
      swmlogger
      newservice
      EOT
      
    2. Add the name of the new service to the stanza for the appropriate role. This example uses the common role.

      common = <<EOT
      gather_data
      .
      .
      .
      munge
      newservice
      EOT
    3. Save the file.

  5. Create the service.ini file if the service is not assigned to the common role. The file is named /opt/hptc/config/etc/services/newservice.ini in this example.

  6. Optionally back up the configuration and management database. See “Backing Up the Configuration Database” for more information.

  7. Update the configuration and management database:

    # reset_db
  8. Restart and initialize the cmdb with the cluster_prep command:

    # /opt/hptc/config/sbin/cluster_prep 
  9. Execute the discover command to discover network components:

    #  /opt/hptc/config/sbin/discover --system --verbose
    Note:

    You may need to use other options to the discover command, depending on your system. See discover(8).

  10. Run the cluster_config utility:

    # /opt/hptc/config/sbin/cluster_config

    Be sure to use the analyze command and review the output. Ensure that the service's role is assigned the correct number of servers. If the assigned number of servers is insufficient, edit the service.ini file accordingly and repeat from step 7.

  11. Reimage the applicable node or nodes. This is described in Chapter 8: Distributing Software Throughout the System.

Creating a Role and Adding a Service to It

Use the following procedure to create a role for a new service, then add that service to that role. This procedure uses the terms newrole and newservice to illustrate their placement in the role_services.ini file.

Note:

Only perform this procedure when you have exclusive use of the HP XC system and when no jobs are running on the system because the procedure requires that you reimage nodes.

  1. Log in as the superuser on the head node.

  2. Copy the roles_services.ini file:

    # cd /opt/hptc/config
    # cp role_services.ini role_services.ini.BAK
  3. Edit the roles_services.ini file as follows:

    1. Add the name of the new role to the stanza that lists all the roles:

      roles = <<EOT
      node_management
      .
      .
      .
      common
      newrole
      EOT
    2. Add the name of the new service to the stanza that lists all the services:

      services = <<EOT
      cmf
      .
      .
      .
      swmlogger
      newservice
      EOT
    3. At the end of the file, create a new stanza specifying the role and the service:

      newrole = <<EOT
      newservice
      EOT
    4. Save the file.

  4. Create the service.ini file if the service is not assigned to the common role. The file is named /opt/hptc/config/etc/services/newservice.ini in this example.

  5. Optionally back up the configuration and management database. See “Backing Up the Configuration Database” for more information.

  6. Update the configuration and management database:

    # reset_db
  7. Restart and initialize the cmdb with the cluster_prep command:

    # /opt/hptc/config/sbin/cluster_prep 
  8. Execute the discover command to discover network components:

    # /opt/hptc/config/sbin/discover --system
    Note:

    You may need to use other options to the discover command, depending on your system. See discover(8).

  9. Run the cluster_config utility:

    # /opt/hptc/config/sbin/cluster_config

    The cluster_config utility identifies the new role from the roles_services.ini file and makes it available to be assigned on any of the nodes.

    Be sure to use the analyze command and review the output. Ensure that the role is assigned the correct number of servers. If the assigned number of servers is insufficient, edit the service.ini file accordingly and repeat from step 6.

    For information about the cluster_config utility, see the HP XC System Software Installation Guide.

  10. Reimage the applicable node or nodes. This is described in Chapter 8: Distributing Software Throughout the System.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 2003 Hewlett-Packard Development Company, L.P.