]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/nfs: use host.addr for backend IP where possible
authorSage Weil <sage@newdream.net>
Wed, 26 May 2021 22:38:05 +0000 (18:38 -0400)
committerSage Weil <sage@newdream.net>
Thu, 27 May 2021 16:00:20 +0000 (12:00 -0400)
Signed-off-by: Sage Weil <sage@newdream.net>
src/pybind/mgr/nfs/cluster.py

index aac469412b2f55adc1f93754fc65e40dd0900b9c..bdba9ce8da038f2d6ed633ed700441c1b46d252b 100644 (file)
@@ -146,9 +146,21 @@ class NFSCluster:
         for cluster in completion.result:
             if self.cluster_id == cluster.service_id():
                 try:
+                    if cluster.ip:
+                        ip = cluster.ip
+                    else:
+                        c = self.mgr.get_hosts()
+                        orchestrator.raise_if_exception(c)
+                        hosts = [h for h in c.result
+                                 if h.hostname == cluster.hostname]
+                        if hosts:
+                            ip = resolve_ip(hosts[0].addr)
+                        else:
+                            # sigh
+                            ip = resolve_ip(cluster.hostname)
                     backends.append({
                             "hostname": cluster.hostname,
-                            "ip": cluster.ip or resolve_ip(cluster.hostname),
+                            "ip": ip,
                             "port": cluster.ports[0]
                             })
                 except orchestrator.OrchestratorError: