def __register_manager_ips(self, configured_ips): """ Register all of the manager's configured ips. """ # We remove all existing registered IPs. for ip in self.registered_ips: if self.zk_conn.read(paths.manager_ip(ip)) == self.uuid: logging.info("Clearing IP '%s'." % ip) self.zk_conn.delete(paths.manager_ip(ip)) self.registered_ips = [] if self.names: def register_ip(name): try: # Register our IP. ip = socket.gethostbyname(name) self.zk_conn.write(paths.manager_ip(ip), self.uuid, ephemeral=True) logging.info("Registered IP '%s'." % ip) self.registered_ips.append(ip) except socket.error: logging.error("Skipping registration of '%s'." % name) # Register configured IPs if available. if configured_ips: for ip in configured_ips: register_ip(ip) else: for name in self.names: register_ip(name)
def register_ip(name): try: # Register our IP. ip = socket.gethostbyname(name) self.zk_conn.write(paths.manager_ip(ip), self.uuid, ephemeral=True) logging.info("Registered IP '%s'." % ip) self.registered_ips.append(ip) except socket.error: logging.error("Skipping registration of '%s'." % name)
def get_manager_key(self, manager): return self.zk_conn.read(paths.manager_ip(manager))