]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cephadm: Fix bootstrap error with IPv6 mon-ip
authorYuxiang Zhu <vfreex@gmail.com>
Mon, 2 Aug 2021 16:47:22 +0000 (00:47 +0800)
committerSebastian Wagner <sewagner@redhat.com>
Thu, 2 Sep 2021 14:24:39 +0000 (16:24 +0200)
Fix the following error by removing the enclosing square brackets in `ctx.mon_ip`.

This issue also occurs on pacific.

```sh
$ sudo cephadm --verbose bootstrap --mon-ip fd49:277:42:2020:c4ba:e6ff:fedf:604

/usr/bin/ceph: stderr > ssh -F ssh_config -i ~/cephadm_private_key root@[fd49:277:42:2020:c4ba:e6ff:fedf:604]
Traceback (most recent call last):
  File "/usr/sbin/cephadm", line 3776, in prepare_ssh
    cli(args)
  File "/usr/sbin/cephadm", line 4076, in cli
    return CephContainer(
  File "/usr/sbin/cephadm", line 3263, in run
    out, _, _ = call_throws(self.ctx, self.run_cmd(),
  File "/usr/sbin/cephadm", line 1453, in call_throws
    raise RuntimeError('Failed command: %s' % ' '.join(command))
RuntimeError: Failed command: /usr/bin/podman run --rm --ipc=host --stop-signal=SIGTERM --net=host --entrypoint /usr/bin/ceph --init -e CONTAINER_IMAGE=docker.io/ceph/ceph:v16 -e NODE_NAME=ceph-node2 -e CEPH_USE_RANDOM_NONCE=1 -v /var/log/ceph/fee89f24-f3af-11eb-87b1-c6bae6df0604:/var/log/ceph:z -v /tmp/ceph-tmpnjeaui27:/etc/ceph/ceph.client.admin.keyring:z -v /tmp/ceph-tmpjfm82r9d:/etc/ceph/ceph.conf:z docker.io/ceph/ceph:v16 orch host add ceph-node2 [fd49:277:42:2020:c4ba:e6ff:fedf:604]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/sbin/cephadm", line 8230, in <module>
    main()
  File "/usr/sbin/cephadm", line 8218, in main
    r = ctx.func(ctx)
  File "/usr/sbin/cephadm", line 1759, in _default_image
    return func(ctx)
  File "/usr/sbin/cephadm", line 4142, in command_bootstrap
    prepare_ssh(ctx, cli, wait_for_mgr_restart)
  File "/usr/sbin/cephadm", line 3778, in prepare_ssh
    raise Error('Failed to add host <%s>: %s' % (host, e))
__main__.Error: Failed to add host <ceph-node2>: Failed command: /usr/bin/podman run --rm --ipc=host --stop-signal=SIGTERM --net=host --entrypoint /usr/bin/ceph --init -e CONTAINER_IMAGE=docker.io/ceph/ceph:v16 -e NODE_NAME=ceph-node2 -e CEPH_USE_RANDOM_NONCE=1 -v /var/log/ceph/fee89f24-f3af-11eb-87b1-c6bae6df0604:/var/log/ceph:z -v /tmp/ceph-tmpnjeaui27:/etc/ceph/ceph.client.admin.keyring:z -v /tmp/ceph-tmpjfm82r9d:/etc/ceph/ceph.conf:z docker.io/ceph/ceph:v16 orch host add ceph-node2 [fd49:277:42:2020:c4ba:e6ff:fedf:604]
Releasing lock 140115256165328 on /run/cephadm/fee89f24-f3af-11eb-87b1-c6bae6df0604.lock
Lock 140115256165328 released on /run/cephadm/fee89f24-f3af-11eb-87b1-c6bae6df0604.lock
```

Signed-off-by: Yuxiang Zhu <vfreex@gmail.com>
(cherry picked from commit d3f5aaf40267a168f9709be0292b160638297999)

src/cephadm/cephadm

index 0d1ddcf5f48bdbb88dce85769c063f8f24d25748..252cc1a48593a48b500217ef1e29b84ba00dc674 100755 (executable)
@@ -3921,7 +3921,7 @@ def prepare_ssh(
     try:
         args = ['orch', 'host', 'add', host]
         if ctx.mon_ip:
-            args.append(ctx.mon_ip)
+            args.append(unwrap_ipv6(ctx.mon_ip))
         cli(args)
     except RuntimeError as e:
         raise Error('Failed to add host <%s>: %s' % (host, e))