예제 #1
0
  def start(self):

    # create base data/conf directory
    FileManager.createDirectory("%s/data/solr" % (self.configuration["rootDirectory"]))
    FileManager.createDirectory("%s/log/solr" % (self.configuration["rootDirectory"]))

    for port in self.configuration["solr"]["ports"]:
      print "Starting solr on port %d" % port

      # create required items
      dataDirectory = "%s/data/solr/instance-%d" % (self.configuration["rootDirectory"], port)
      logDirectory = "%s/log/solr/instance-%d" % (self.configuration["rootDirectory"], port)
      FileManager.createDirectory(logDirectory)
      FileManager.createDirectory(dataDirectory)
      FileManager.createDirectory("%s/home" % dataDirectory)

      solrXmlFile = "%s/home/solr.xml" % (dataDirectory)
      configLines = self.createConfigLines(port)
      with open(solrXmlFile, 'w') as f:
        f.writelines(configLines)

      zookeeperConnectionString = ",".join(["localhost:%d" % zkPort for zkPort in self.configuration["zk"]["ports"]])

      # actually start solr
      arguments = [
        "%s/bin/solr/bin/solr" % (self.configuration["rootDirectory"]),
        "-cloud",
        "-m", self.configuration["solr"]["memory"],
        "-p", "%s" % port,
        "-s", "%s/home" % (dataDirectory),
        "-z", zookeeperConnectionString
      ]
      os.system(" ".join(arguments))
  def start(self):

    # create base data/conf directory
    FileManager.createDirectory("%s/data/zookeeper" % (self.configuration["rootDirectory"]))
    FileManager.createDirectory("%s/log/zookeeper" % (self.configuration["rootDirectory"]))

    for port in self.configuration["zk"]["ports"]:
      print "Starting zookeeper on port %d" % port

      # create required items
      dataDirectory = "%s/data/zookeeper/instance-%d" % (self.configuration["rootDirectory"], port)
      logDirectory = "%s/log/zookeeper/instance-%d" % (self.configuration["rootDirectory"], port)
      configurationFilePath = "%s/data/zookeeper/instance-%d.cfg" % (self.configuration["rootDirectory"], port)
      myidFilePath = "%s/data/zookeeper/instance-%d/myid" % (self.configuration["rootDirectory"], port)

      FileManager.createDirectory(logDirectory)
      FileManager.createDirectory(dataDirectory)

      configLines = self.createConfigLines(port, dataDirectory)
      with open(configurationFilePath, 'w') as f:
        f.writelines(configLines)

      with open(myidFilePath, 'w') as f:
        f.writelines(["%s" % port])

      # actually start zookeeper
      arguments = [
        "ZOOCFGDIR=%s/data/zookeeper" % (self.configuration["rootDirectory"]),
        "ZOOCFG=instance-%d.cfg" % (port),
        "ZOO_LOG_DIR=%s" % (logDirectory),
        "%s/bin/zookeeper/bin/zkServer.sh" % (self.configuration["rootDirectory"]),
        "start"
      ]
      os.system(" ".join(arguments))
예제 #3
0
    def install(self):
        print "Installing Zookeeper to %s/bin/zookeeper" % (
            self.configuration["rootDirectory"])

        # create install directories
        FileManager.createDirectory("%s" %
                                    (self.configuration["rootDirectory"]))
        FileManager.createDirectory("%s/packages" %
                                    (self.configuration["rootDirectory"]))
        FileManager.createDirectory("%s/bin" %
                                    (self.configuration["rootDirectory"]))

        # download zookeeper
        FileManager.download(
            self.configuration["zk"]["artifactUrl"],
            "%s/packages/zookeeper.tgz" %
            (self.configuration["rootDirectory"]))

        # unpack zookeeper
        extractionDir = FileManager.extractTarball(
            "%s/packages/zookeeper.tgz" %
            (self.configuration["rootDirectory"]),
            "%s/bin" % (self.configuration["rootDirectory"]))
        shutil.move(
            "%s/bin/%s" % (self.configuration["rootDirectory"], extractionDir),
            "%s/bin/zookeeper" % (self.configuration["rootDirectory"]))
예제 #4
0
    def start(self):

        # create base data/conf directory
        FileManager.createDirectory("%s/data/zookeeper" %
                                    (self.configuration["rootDirectory"]))
        FileManager.createDirectory("%s/log/zookeeper" %
                                    (self.configuration["rootDirectory"]))

        for port in self.configuration["zk"]["ports"]:
            print "Starting zookeeper on port %d" % port

            # create required items
            dataDirectory = "%s/data/zookeeper/instance-%d" % (
                self.configuration["rootDirectory"], port)
            logDirectory = "%s/log/zookeeper/instance-%d" % (
                self.configuration["rootDirectory"], port)
            configurationFilePath = "%s/data/zookeeper/instance-%d.cfg" % (
                self.configuration["rootDirectory"], port)
            myidFilePath = "%s/data/zookeeper/instance-%d/myid" % (
                self.configuration["rootDirectory"], port)

            FileManager.createDirectory(logDirectory)
            FileManager.createDirectory(dataDirectory)

            configLines = self.createConfigLines(port, dataDirectory)
            with open(configurationFilePath, 'w') as f:
                f.writelines(configLines)

            with open(myidFilePath, 'w') as f:
                f.writelines(["%s" % port])

            # actually start zookeeper
            arguments = [
                "ZOOCFGDIR=%s/data/zookeeper" %
                (self.configuration["rootDirectory"]),
                "ZOOCFG=instance-%d.cfg" % (port),
                "ZOO_LOG_DIR=%s" % (logDirectory),
                "%s/bin/zookeeper/bin/zkServer.sh" %
                (self.configuration["rootDirectory"]), "start"
            ]
            os.system(" ".join(arguments))
  def install(self):
    print "Installing Zookeeper to %s/bin/zookeeper" % (self.configuration["rootDirectory"])
    
    # create install directories
    FileManager.createDirectory("%s" % (self.configuration["rootDirectory"]))
    FileManager.createDirectory("%s/packages" % (self.configuration["rootDirectory"]))
    FileManager.createDirectory("%s/bin" % (self.configuration["rootDirectory"]))

    # download zookeeper
    FileManager.download(self.configuration["zk"]["artifactUrl"], "%s/packages/zookeeper.tgz" % (self.configuration["rootDirectory"]))

    # unpack zookeeper
    extractionDir = FileManager.extractTarball("%s/packages/zookeeper.tgz" % (self.configuration["rootDirectory"]), "%s/bin" % (self.configuration["rootDirectory"]))
    shutil.move("%s/bin/%s" % (self.configuration["rootDirectory"], extractionDir), "%s/bin/zookeeper" % (self.configuration["rootDirectory"]))