Пример #1
0
#!usr/bin/python
import socket
import sys

sys.path.append("..")
sys.path.append(".")

from src.utils import configUtils

assert(len(sys.argv) == 4)
masterName = sys.argv[1]
slaveName = sys.argv[2]
nodeNum = sys.argv[3]

masterDict = configUtils.parse(masterName)
assert(masterDict["NODE_TYPE"] == "MASTER")
masterIP, masterPort = masterDict["ADDRESS"]

with open(slaveName, "r") as fp:
  lines = [line.strip() for line in fp.read().split("\n")]
  for (i, line) in enumerate(lines):
    if "MASTER_ADDRESS" in line:
      lines[i] = "MASTER_ADDRESS=%s,%s" % (masterIP, masterPort)
    elif "ADDRESS" in line:
      ip = socket.gethostbyname(socket.gethostname())
      port = masterPort[:-1] + nodeNum
      lines[i] = "ADDRESS=%s,%s" % (ip, port)

with open(slaveName, "w") as fp:
  for line in lines:
    fp.write(line + "\n")
Пример #2
0
  while RUNNING:
    tokens = getUserInput().split(" ")
    command, args = tokens[0], tokens[1:]
    if command not in COMMAND_MAP:
      print "Command '%s' not recognized." % command
    else:
      try:
        COMMAND_MAP[command](dfsManager, configDict, args)
      except BaseException as exn:
        traceback.print_exc()


if __name__ == "__main__":
  if len(sys.argv) != 2:
    printBasicHelp()
    sys.exit(1)
  elif len(sys.argv) in ("--help", "-help"):
    printVerboseHelp()
    sys.exit(0)

  configFile = sys.argv[1]
  configDict = configUtils.parse(configFile)

  masterIP, masterPort = configDict["ADDRESS"]
  masterRMI = rmiUI.getServer(masterIP, int(masterPort))
  dfsManagerID = masterRMI.IDFromName("dfsManager")
  dfsManager = masterRMI.get(dfsManagerID)

  mainLoop(dfsManager, configDict)