def start(self, conf): self.config = conf try: self.node_name = os.uname()[1] self.node_fqdn = socket.getfqdn(socket.gethostname()) if conf.daemon.listen == '0.0.0.0': self.node_address = socket.gethostbyname(self.node_fqdn) else: self.node_address = conf.daemon.listen except: self.logger.exception("Failed getting node information") return 1 dispatcher.addListener('monitor.local.update', self.update_local_node_status) self.discoverer = Discoverer(conf.discoverer) self.negotiator = Negotiator(conf.daemon) self.local_monitor = Monitor(conf.monitor, self.node_fqdn, conf.discoverer) self.negotiator.start() self.discoverer.start() self.local_monitor.start() #while not self.discoverer.is_ready(): # time.sleep(0.5) return 0
def run(self): self.logger.info("Starting Negotiator thread") dispatcher.addListener('negotiator.message.receive', self.handle_message) SocketServer.ThreadingTCPServer.allow_reuse_address = True self._server = SocketServer.ThreadingTCPServer((self._config.listen, self._config.port), TcpRequestHandler) self._server.timeout = 3 self.logger.info("Negotiator thread listen on {}:{}".format(self._config.listen, self._config.port)) self._server.serve_forever()
def run(self): self.logger.info("Starting Negotiator thread") dispatcher.addListener('negotiator.message.receive', self.handle_message) SocketServer.ThreadingTCPServer.allow_reuse_address = True self._server = SocketServer.ThreadingTCPServer( (self._config.listen, self._config.port), TcpRequestHandler) self._server.timeout = 3 self.logger.info("Negotiator thread listen on {}:{}".format( self._config.listen, self._config.port)) self._server.serve_forever()
def run(self): self.logger.info("Starting Discoverer thread") from pgherd.daemon import daemon dispatcher.addListener('discoverer.message.receive.node.up', self.broadcast_receive) dispatcher.addListener('discoverer.message.receive.master.lookup', self.master_lookup) dispatcher.addListener('discoverer.message.receive.cluster.status', self.cluster_status) dispatcher.addListener('discoverer.message.receive.ssh_key.broadcast', self.ssh_key_broadcast) self._server = DiscovererServer(self._config.listen, self._config.port) self._server.start() self._server.wait_for_startup() msg = DiscovererMessage('node.up') msg.add('node', daemon.node_fqdn) msg.add('address', daemon.config.daemon.listen) msg.add('port', daemon.config.daemon.port) self.logger.debug("Sending node lookup message: {}".format(str(msg))) self._server.send(msg)
def add_listener(self, event): dispatcher.addListener(event, self.handle_response) dispatcher.addListener('command.end_of_data', self.end_of_data)