flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From StephanEwen <...@git.apache.org>
Subject [GitHub] flink issue #2917: [FLINK-2821] use custom Akka build to listen on all inter...
Date Thu, 01 Dec 2016 19:08:49 GMT
Github user StephanEwen commented on the issue:

    It's a cool fix to help Flink run in container environments.
    There is one concern I have with the code, though: Previously, we decided explicitly to
encode IP addresses in the Akka URLs, because Akka requires an exact match of the host in
the URL.
    That has two problems:
      - All nodes need to agree to use either hostname or address. Enforcing to use the address
was possible, enforcing to use the hostname not.
      - More importantly: IPv6 has multiple valid representations of the same address. If
different nodes have the same address but represent it as a string differently, the messages
would not arrive. That's why we have a "normalizing" encoding step that makes sure all URLs
would be the same. That step relied on translating 
    I see two dangers now that may occur:
      - If different parts of the code or the JDK do a subtle change of behavior (i.e. resolve
the InetAddress), then some nodes may have a hostname in the URL, others an address.
      - If two machines have a slightly different network configuration (especially concerning
preferences to represent/encode IPv6 addresses) and the users set the IP address as the JobManager
host, then they might create different Akka URLs and the machines cannot talk to each other
    I am a bit unsure how to proceed from here. Is there any way we can keep using IP addresses
in the Akka URLs? Or does that just inherently not make sense with "dynamic hostnames" as
they are used in container environments?

If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.

View raw message