page1
Use
Service is:
Transient /
Persistent
Service is:
Internal/
External
Workers start:
Directly /
Passively
Auto
Trans
Int
Direct
Fast
Manual (1)
Trans
Int
Passive
Auto
Trans
Ext
Direct
n/a (2)
Trans
Ext
Passive
n/a (3)
Persist
Int
Direct
n/a (3)
Persist
Int
Passive
n/a (4)
Persist
Ext
Direct
Manual
Persist
Ext
Passive
Coaster management modes
Modes are set as follows:
Transient: coaster
Persistent: coaster-persistent
Internal: jobmanager=”local:local”
External: coaster-persistent or jobmanager != “local,local”
Direct: workerManager (default: not specified)
Passive: workerManager passive
Notes:
(1) “Internal service” is a desirable setting to reduce the overhead of a separate coaster service process when the server can be run locally. This mode is useful for having a fast internal service when workers are started manually, eg when Swift has no execution provider mode that can readily start the service – eg when multi-hop SSH is needed or when a scheduler like SLURM is not supported on sicortex. Also useful with local workers to keep workers up for duration of workflow. The local worker mode has some use in SwiftR to avoid worker shutdown and loss of R server associations. Auto mode could be used instead for this case, if the workers could be set to not time out. Note that the internal service is only useful for one site. When multiple sites are needed (to differentiate data transfer) then only one site can be set to use the internal service. This could be overcome with multiple internal service ports and the logic to handle them.
(2) For automatic external service, there is no value in having the workers managed manually (passively).
(3) Internal service is by definition transient: it cannot be persistent – hence this mode does not exist.
(4) When service is persistent, there is no value in having the workers managed automatically