Product SiteDocumentation Site

Chapter 3. Remote configuration tool

The remote configuration feature simplifies configuration and management of a pool. It allows a single machine to configure all nodes in a condor pool and easily modify or change a node's configuration. Any change that impacts other nodes in the system will also be handled appropriately. The configuration tools allow management of multiple independent pools, and can build a condor node from the ground up needing only an operating system and the appropriate remote configuration packages.
Configuring the server for remote configuration
  1. The remote configuration feature requires a server machine with the condor-remote-configuration-server package. Only one machine in a cluster should act as the server, and should be the same machine that the MRG Management Console is installed on. Install the package on the server using yum:
    # yum install condor-remote-configuration-server
    
  2. A CNAME record will need to be added to the DNS configuration with the name puppet. It needs to point to the machine that has the condor-remote-configuration-server installed.
  3. Copy the puppet.conf.master file to the /etc/puppet directory using the following command:
    $ cp -f /etc/opt/grid/examples/puppet.conf.master /etc/puppet/puppet.conf
    
  4. Create the site.pp file:
    $ echo 'import "condor"' >> /etc/puppet/manifests/site.pp
    
  5. Start the service from the shell prompt:
    # service puppetmaster start
    Starting puppetmaster service:           [  OK  ]
    
Configuring a client for remote configuration
  1. The remote configuration feature for client machines requires the condor-remote-configuration package. Install the package using yum:
    # yum install condor-remote-configuration
    
  2. Copy the puppet.conf.client file to the /etc/puppet directory using the following command:
    $ cp -f /etc/opt/grid/examples/puppet.conf.client /etc/puppet/puppet.conf
    
    Then copy the namespaceauth.conf file to /etc/puppet:
    $ cp -f /etc/opt/grid/examples/namespaceauth.conf /etc/puppet
    
  3. Open the namespaceauth.conf configuration file in your preferred text editor and locate the line that states allow <puppetmaster.fqdn> entry. Replace the <puppetmaster.fqdn> text with the fully qualified domain name of the server machine. This is the machine that has the condor-remote-configuration-server package installed:
    allow server.example.com
    
  4. Start the service from the shell prompt:
    # service puppet start
    Starting puppet service:           [  OK  ]
    
Using the remote configuration tool
To use the remote configuration tools to configure a node, you will need to know the node's fully qualified domain name. This name is used by the node to identify itself to the configuration system.
  1. To configure a node, use the following syntax:
    $ condor_configure_node -n [name of node] [action] [features]
    
    Use the --help option to see a full list of possible commands:
    $ condor_configure_node --help
    
  2. The possible actions are:
    • --add|-a: Used to add features to the node being configured. If any additional information is required, the tool will prompt for it.
    • --delete|-d: Used to remove features on the node.
    • --list|-l: Used to list configurations. If provided without a specified node, this will print the list of nodes being managed. If a node is specified, it will print the list of features for that node. If provided with one or more features in addition to a node, then it will print the specific configurations for those features.
  3. There are three items that the tool will ask for, regardless of the options in use:
    1. Schedulers: If the node being configured is not a scheduler, then the configuration tool will prompt for the list of schedulers the node should be allowed to submit to. First it will prompt for the default scheduler, then for a comma separated list of additional schedulers. This entry should contain the fully qualified domain names of the schedulers in the pool. If the pool has a high availability scheduler, use ha-schedd@.
    2. Collector Name: This is a human readable text field that will identify the pool. This value will be set as the COLLECTOR_NAME for the node.
    3. QMF Broker Information: The QMF Broker is the AMQP broker that is used to communicate with the MRG Management Console. The configuration tool will prompt for the IP or hostname where the broker is running, as well as the port the broker is listening on. If no port is provided, the default port will be used.
  4. The configuration tool will always prompt you to save the configuration. When it is saved, the tool will automatically check the configuration of all known nodes, to ensure they are up to date.
  5. The remote configuration tool controls the content of the ~/condor_config.local local configuration file. It is possible to provide a custom configuration for a node by creating a file named ~/condor_config.overrides and adding configuration entries to that file.

    Important

    Be very cautious when adding entries to a ~/condor_config.overrides file. Settings in this file will override any settings provided by the remote configuration feature. This can result in lost or incorrect functionality of the features controlled by the remote configuration feature.
This example gives some common uses of the remote configuration tool.
To enable a machine named condor_ca.domain.com to be a High Available Central Manager:
$ condor_configure_node -n condor_ca.domain.com -a -f ha_central_manager
To enable a machine name twofer.domain.com to be both a scheduler and an execute node:
$ condor_configure_node -n twofer.domain.com -a -f scheduler,startd
To remove the execute functionality from twofer.domain.com:
$ condor_configure_node -n twofer.domain.com -d -f startd
To list all nodes being managed:
$ condor_configure_node -l
To list the configuration for a machine name twofer.domain.com:
$ condor_configure_node -l -n twofer.domain.com
To list the specific configuration of the High Availability Central Manager feature for a machine named twofer.domain.com:
$ condor_configure_node -l -n twofer.domain.com -f ha_central_manager
Example 3.1. Examples of use of the remote configuration tool