Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. schmod_demand plugin must be enabled in ${LSF_TOP}/conf/lsbatch/<cluster-name>/configdir/lsb.modules.

Code Block
Begin PluginModule
SCH_PLUGIN                      RB_PLUGIN                    SCH_DISABLE_PHASES
...
schmod_demand                   ()                              ()
...
End PluginModule

Add New Queue and Resource Definitions to LSF for Resource Connector

  1. Add a new queue to lsb.queues:

    1. Code Block
      cd ${LSF_TOP}/conf/lsbatch/<ClusterName>/configdir
      vi lsb.queues
Expand
titleQueue Declaration
Code Block
Begin Queue
QUEUE_NAME              = xio
PRIORITY                = 90
NICE                    = 20
FAIRSHARE               = USER_SHARES[[default,10]]
RC_DEMAND_POLICY        = THRESHOLD[ [1, 1] [10, 60] [100] ]
RC_HOSTS                = xiohost
RES_REQ                 = xiohost
RC_ACCOUNT              = xio
DESCRIPTION             = xspot
NEW_JOB_SCHED_DELAY     = 0
REQUEUE_EXIT_VALUES     = 99
End Queue
  1. Insert a Queue Declaration as in the collapsible example above.

    1. NOTE: The xiohost strings are required in the queue declaration: this is not modifiable.

  2. Add resources to the Resource Definitions in lsf.shared:

...

  1. ${LSF_TOP}/conf

...

  1. /lsf.shared

...

  1. :

    1. Code Block
      Begin Resource
      RESOURCENAME  TYPE    INTERVAL INCREASING  DESCRIPTION        # Keywords
      ...
         xiohost    Boolean    ()       ()       (instances from Infrastructure Optimizer)
         rc_account String     ()       ()       (account name for the external hosts)
         templateID   String   ()       ()       (template ID for the external hosts)
      ...
      End Resource
    2. Resource Connector

...

    1. leverages xiohost, rc_account, and templateID when provisioning compute capacity.

    2. NOTE: The xiohost string required in this file; this is not modifiable.

Add Required Lines to lsf.conf

Code Block
#exostellar
LSB_STDOUT_DIRECT=Y        #optional
LSB_RC_EXTERNAL_HOST_FLAG=xiohost
LSF_LOCAL_RESOURCES="[resource xiohost] [type X86_64]"
LSF_DYNAMIC_HOST_WAIT_TIME=2
LSF_DYNAMIC_HOST_TIMEOUT=10m
ENABLE_DYNAMIC_HOSTS=Y
LSF_REG_FLOAT_HOSTS=Y
EBROKERD_HOST_CLEAN_DELAY=5
LSF_MQ_BROKER_HOSTS=head        #equivalent to LSF Master, in this example
LSB_RC_EXTERNAL_HOST_IDLE_TIME=2
EGO_DEFINE_NCPUS=threads 
  1. You can also add these settings to lsf.conf to faciliate reading output from lshosts and bhosts commands, but this is purely optional:

    1. Code Block
      LSB_BHOSTS_FORMAT="HOST_NAME:47 status:13 max:-8 njobs:-8 run:-8 ssusp:-8 ususp:-8 comments"
      LSF_LSHOSTS_FORMAT="HOST_NAME:47 res:13 nprocs:-8 ncores:-8 nthreads:-8 ncpus:-8 maxmem:-8:S maxswp:8:S server:7 type"
  2. The values assigned for variables with TIME and DELAY may be tuned for the best timing scenario of your cluster and assets. The LSF Admin may opt for different timing than above.

NOTE: When adding a new provider to an already functioning Resource Connector, the LSB_RC_EXTERNAL_HOST_FLAG variable takes white-space separated strings, so line 3 from the above might be changed as follows when the awshost provider is already configured:

LSB_RC_EXTERNAL_HOST_FLGAG="awshost xiohost"

Update the Host Providers for Resource Connector

${LSF_TOP}/10.1/resource_connectorand ${LSF_TOP}/conf/resource_connector folders appear very similar and can be a source of confusion. This tutorial has focused on a fully patched (fix pack 14) LSF 10.1 installation. Exostellar assets were downloaded into ${LSF_TOP}/10.1/resource_connector/exostellar.

Both locations, under 10.1 or under conf, may contain a hostProviders.json. To simplify and reduce confusion, you may want to consider linking them:

Code Block
ln -s ${LSF_TOP}/10.1/resource_connector/hostProviders.json ${LSF_TOP}conf/resource_connector/hostProviders.json

Restart Select Services on the LSF Master

...