From: Adam King Date: Tue, 12 Oct 2021 11:22:57 +0000 (-0400) Subject: mgr/cephadm: remove host addr from agent deps X-Git-Tag: v17.1.0~604^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ad0b6094cebd2460795ac739ea5d6fddf16e9a79;p=ceph.git mgr/cephadm: remove host addr from agent deps Had no need to be a dependency anyway and actually was casuing issues in clusters with FQDNs due to the assumption that the daemon-id would match the hostname (which isn't necessarily true if it is an FQDN). Signed-off-by: Adam King --- diff --git a/src/pybind/mgr/cephadm/agent.py b/src/pybind/mgr/cephadm/agent.py index ead4c0a3bee..e987add4ee2 100644 --- a/src/pybind/mgr/cephadm/agent.py +++ b/src/pybind/mgr/cephadm/agent.py @@ -205,7 +205,7 @@ class AgentMessageThread(threading.Thread): def __init__(self, host: str, port: int, data: Dict[Any, Any], mgr: "CephadmOrchestrator") -> None: self.mgr = mgr self.host = host - self.addr = self.mgr.inventory.get_addr(host) + self.addr = self.mgr.inventory.get_addr(host) if host in self.mgr.inventory else host self.port = port self.data: str = json.dumps(data) super(AgentMessageThread, self).__init__(target=self.run) @@ -261,6 +261,7 @@ class AgentMessageThread(threading.Thread): secure_agent_socket.sendall(msg.encode('utf-8')) agent_response = secure_agent_socket.recv(1024).decode() self.mgr.log.info(f'Received "{agent_response}" from agent on host {self.host}') + self.mgr.cache.sending_agent_message[self.host] = False return except ConnectionError as e: # if it's a connection error, possibly try to connect again. diff --git a/src/pybind/mgr/cephadm/module.py b/src/pybind/mgr/cephadm/module.py index 41476c1c992..8364696c9a9 100644 --- a/src/pybind/mgr/cephadm/module.py +++ b/src/pybind/mgr/cephadm/module.py @@ -2119,8 +2119,8 @@ Then run the following: root_cert = self.cherrypy_thread.ssl_certs.get_root_cert() except Exception: pass - deps = sorted([self.get_mgr_ip(), self.inventory.get_addr(daemon_id), str(self.endpoint_port), - root_cert, str(self.get_module_option('device_enhanced_scan'))]) + deps = sorted([self.get_mgr_ip(), str(self.endpoint_port), root_cert, + str(self.get_module_option('device_enhanced_scan'))]) elif daemon_type == 'iscsi': deps = [self.get_mgr_ip()] else: diff --git a/src/pybind/mgr/cephadm/services/cephadmservice.py b/src/pybind/mgr/cephadm/services/cephadmservice.py index f80bf34669d..da353bd5257 100644 --- a/src/pybind/mgr/cephadm/services/cephadmservice.py +++ b/src/pybind/mgr/cephadm/services/cephadmservice.py @@ -1043,6 +1043,6 @@ class CephadmAgent(CephService): 'listener.key': listener_key, } - return config, sorted([str(self.mgr.get_mgr_ip()), self.mgr.inventory.get_addr(daemon_spec.host), - str(self.mgr.endpoint_port), self.mgr.cherrypy_thread.ssl_certs.get_root_cert(), + return config, sorted([str(self.mgr.get_mgr_ip()), str(self.mgr.endpoint_port), + self.mgr.cherrypy_thread.ssl_certs.get_root_cert(), str(self.mgr.get_module_option('device_enhanced_scan'))])