CTDB Assigned IP not on an interface

Martin Schwenke martin at meltin.net
Thu Sep 26 23:16:34 UTC 2019


Hi Max,

On Thu, 26 Sep 2019 19:04:31 +0000, Max DiOrio via samba-technical
<samba-technical at lists.samba.org> wrote:

> Additional info - when running an strace on the process:
> 
> epoll_wait(11, [{EPOLLIN, {u32=2179214400, u64=94542999333952}}], 1, 114) = 1
> ioctl(24, FIONREAD, [96])               = 0
> read(24, "`\0\0\0BDTC\1\0\0\0\352k\35w\7\0\0\0\0\0\0\0\2\0\0\0W\24\1\0"..., 96) = 96
> stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=3519, ...}) = 0
> write(5, "2019/09/26 14:59:36.055468 ctdbd"..., 130) = 130
> socket(AF_INET, SOCK_STREAM, IPPROTO_TCP) = 25
> bind(25, {sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("10.85.136.108")}, 16) = -1 EADDRNOTAVAIL (Cannot assign requested address)
> close(25)                               = 0
> stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=3519, ...}) = 0
> write(5, "2019/09/26 14:59:36.055731 ctdbd"..., 118) = 118
> stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=3519, ...}) = 0
> write(5, "2019/09/26 14:59:36.055848 ctdbd"..., 153) = 153
> write(21, "0\0\0\0BDTC\1\0\0\0\352k\35w\10\0\0\0\2\0\0\0\0\0\0\0W\24\1\0"..., 48) = 48

Not sure what process you're running strace on here.  A higher
value for -s might have give enough context in the log messages
being written in that snippet.

However, I think I can guess the answer... see below...

> On 9/26/19, 1:00 PM, "samba-technical on behalf of Max DiOrio via samba-technical" <samba-technical-bounces at lists.samba.org on behalf of samba-technical at lists.samba.org> wrote:

>     CTDB has been working great for us the last few weeks.  Today, I
> did a yum update – and now things aren’t working.  The public IP
> assigned is not actually being added to the interface, but CTDB
> claims the nodes are healthy.

> [...]

>     Currently running ctdb.x86_64    4.9.1-6.el7. on Centos 7.7.1908

I'm guessing that this was an upgrade to 4.9 from a previous version.
In 4.9 CTDB's configuration changed a lot and so did the event script
handling.

Try running:

# ctdb event script list legacy

See if 10.interface is listed and has a '*' next to it to indicate
whether it is enabled.  If it is listed but it is not enabled then:

# ctdb event script enable legacy 10.interface

will enable it.

You may want to check that all the event scripts you use are enabled as
expected.

There is an example configuration migration script
(config_migrate.sh) with CTDB in version 4.9.  It is pretty good but we
left it as an example because we didn't want to drown in bugs that
might be present in the script.  I don't know if CentOS 7 ships it.  If
not, you can get it at:

  https://git.samba.org/?p=samba.git;a=blob_plain;f=ctdb/doc/examples/config_migrate.sh;hb=refs/heads/v4-9-stable

If I haven't guessed right then please post your config (ctdb.conf,
nodes file, public addresses file) and the output of:

# ctdb event script list legacy

If none of this works, since you seem to be awake now, you could jump
on the #ctdb IRC channel on Freenode and look for me there.  I'll be in
and out for the next couple of hours.

Thanks...

peace & happiness,
martin

p.s. As a user level question, this would have been more appropriate on
     the "samba" list, rather than samba-technical.   :-)



More information about the samba-technical mailing list