Re: msgr2 changes coming

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I think the PR link there was meant to be
https://github.com/ceph/ceph/pull/25009 ? :)
-Greg
On Wed, Dec 5, 2018 at 1:37 PM Sage Weil <sweil@xxxxxxxxxx> wrote:
>
> The monmap msgr2 branch is is getting close to merge:
>
>         https://github.com/ceph/ceph/pull/25360
>
> This has a placeholder protocol in place for now (Ricardo's actual msgr2
> implementation will follow shortly after), but it changes around the rest
> of the ceph code to deal with the dual implementations.
>
> The main visible difference is that entity_addr_t will now render with
> either a v1: or v2: prefix, and most places where you used to see a single
> addr will now have an entity_addrvec_t.  For example,
>
>  $ ceph mon dump
>  dumped monmap epoch 1
>  epoch 1
>  fsid 91e4f964-d1f4-4900-835f-de4e3e36c7c7
>  last_changed 2018-12-05 12:55:58.578101
>  created 2018-12-05 12:55:58.578101
>  0: [v2:127.0.0.1:40376/0,v1:127.0.0.1:40377/0] mon.a
>
> Same goes for the osdmap, fsmap, mgrmap, etc.
>
> The parse() method(s) are similarly changed: they understand the v1 and v2
> prefixes, and if no prefix is specified, they (generally) parse a v2
> address.  (There are exceptions here with the mon addresses, see below.)
>
> There are a few new config options, both true by default:
>
>  ms bind msgr1 = true
>  ms bind msgr2 = true
>
> There's also
>
>  ms bind ipv4 = true
>  ms bind ipv6 = false  # by default
>
> Notably, this means daemons can now do dual-stack IPv4 and IPv6 (or will
> be able to with some minor fiddling with the client-side code that chooses
> which addr to connect to).
>
> Teuthology's ceph task has a few new options, both true by default, but
> set to false for upgrade tasks that start by installing old versions.
> These control what addr types the cluster's initial monmap gets:
>
>  overrides:
>    ceph:
>      mon_bind_addrvec: true
>      mon_bind_msgr2: true
>
> The MonMap::build_initial() method, which is used for creating the initial
> monmap during mkfs (if/when the mons are based on mon_host, as they are
> with ceph-deploy, but not with teuthology or vstart), will infer whether
> an address is v1 or v2 if the port is specified as 6789 or 3300
> respectively.  If the port is unspecified, both the v1 and v2 ports are
> tried during the MonClient probe stage (once we connect to someone and get
> the real monmap then we know for sure).
>
>
> Anyway, please think about any fallout that we might see as a
> result of the new rendering or parsing for IP addresses, or anything else
> that might be affected by this change!
>
> Thanks-
> sage
>



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux