Пример #1
0
def main():
    # Parse arguments
    args = parser.parse_args()
    sys.path.append(os.getcwd())

    # Load config
    conf = args.configFile
    if conf[-3:] == '.py':
        conf = conf[:-3]
    print(conf)

    tConf = importlib.import_module(conf)

    # locate nameserver
    ns = PyroUtil.connectNameServer(nshost=tConf.nshost,
                                    nsport=tConf.nsport,
                                    hkey=tConf.hkey)

    # Run a daemon for jobMamager on this machine
    daemon = PyroUtil.runDaemon(host=tConf.daemonHost,
                                port=tConf.jobManPort,
                                nathost=tConf.nathost,
                                natport=tConf.jobManNatport)
    # Run job manager on a serverdaemon, ns, appAPIClass, appName, portRange,
    # jobManWorkDir, serverConfigPath, serverConfigFile, jobMan2CmdPath,
    # maxJobs=1, jobMancmdCommPort=10000
    jobMan = jb.SimpleJobManager2(daemon,
                                  ns,
                                  appAPIClass=tConf.applicationClass,
                                  appName=tConf.jobManName,
                                  portRange=tConf.jobManPortsForJobs,
                                  jobManWorkDir=tConf.jobManWorkDir,
                                  serverConfigPath=tConf.serverConfigPath,
                                  serverConfigFile=conf,
                                  jobMan2CmdPath=tConf.jobMan2CmdPath,
                                  maxJobs=tConf.jobManMaxJobs,
                                  jobMancmdCommPort=tConf.jobManSocket)

    # set up daemon with JobManager
    uri = daemon.register(jobMan)
    # register JobManager to nameServer
    ns.register(tConf.jobManName, uri)
    logger.debug("Daemon for JobManager runs at " + str(uri))
    print(80 * '-')
    print("Started " + tConf.jobManName)
    # waits for requests
    daemon.requestLoop()
Пример #2
0
def main():
    # Parse arguments
    args = parser.parse_args()
    sys.path.append(os.getcwd())

    # Load config
    conf = args.configFile
    if conf[-3:] == '.py':
        conf = conf[:-3]
    print(conf)

    tConf = importlib.import_module(conf)

    # locate nameserver
    ns = PyroUtil.connectNameServer(nshost=tConf.nshost,
                                    nsport=tConf.nsport,
                                    hkey=tConf.hkey)

    # Run a daemon for jobMamager on this machine
    daemon = PyroUtil.runDaemon(host=tConf.daemonHost,
                                port=tConf.jobManPort,
                                nathost=tConf.nathost,
                                natport=tConf.jobManNatport)
    # Run job manager on a serverdaemon, ns, appAPIClass, appName, portRange,
    # jobManWorkDir, serverConfigPath, serverConfigFile, jobMan2CmdPath,
    # maxJobs=1, jobMancmdCommPort=10000
    jobMan = jb.SimpleJobManager2(daemon, ns,
                                  appAPIClass=tConf.applicationClass,
                                  appName=tConf.jobManName,
                                  portRange=tConf.jobManPortsForJobs,
                                  jobManWorkDir=tConf.jobManWorkDir,
                                  serverConfigPath=tConf.serverConfigPath,
                                  serverConfigFile=conf,
                                  jobMan2CmdPath=tConf.jobMan2CmdPath,
                                  maxJobs=tConf.jobManMaxJobs,
                                  jobMancmdCommPort=tConf.jobManSocket)

    # set up daemon with JobManager
    uri = daemon.register(jobMan)
    # register JobManager to nameServer
    ns.register(tConf.jobManName, uri)
    logger.debug("Daemon for JobManager runs at " + str(uri))
    print(80 * '-')
    print("Started " + tConf.jobManName)
    # waits for requests
    daemon.requestLoop()