You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flume.apache.org by "Greg Bowering (JIRA)" <ji...@apache.org> on 2013/01/09 06:38:19 UTC

[jira] [Commented] (FLUME-1798) Avro source can't bind to wildcard address. Problem with ipv6

    [ https://issues.apache.org/jira/browse/FLUME-1798?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13547663#comment-13547663 ] 

Greg Bowering commented on FLUME-1798:
--------------------------------------

Appears that *{{.bind = 0}}* works the same as *{{.bind = 0.0.0.0}}* on Ubuntu.

I did some tests on various conceivable values for bind and got some interesting results, summarised below:

|| .bind = || Connectivity Test Result ||
| 0.0.0.0 | Can connect from anywhere via ipv4 or ipv6 |
| 0 | Can connect from anywhere via ipv4 or ipv6 |
| localhost | Only local loopback. Only via ipv4 |
| 127.0.0.1 | Only local loopback. Only via ipv4 |
| _hostname_ | Only local loopback via hostname (which resolved to 127.0.*1*.1). Only via ipv4 |
| ::1 | Only local loopback. Only via ipv6 |
| _ip.v4.add.ress_ | Only via eth0 interface. Only via ipv4 |
| _ip:v6:add:ress:global:_ | Only via eth0 interface. Only via ipv6 |

I'm not familiar with how to submit a doc patch for apache hosted projects such as Flume... do I need to first clone the git repo then edit *{{flume-ng-doc/sphinx/FlumeUserGuide.rst}}*? 

                
> Avro source can't bind to wildcard address. Problem with ipv6
> -------------------------------------------------------------
>
>                 Key: FLUME-1798
>                 URL: https://issues.apache.org/jira/browse/FLUME-1798
>             Project: Flume
>          Issue Type: Bug
>          Components: Sinks+Sources
>    Affects Versions: v1.3.0
>         Environment: Server: Ubuntu 12.04.1 x86_64 (with IPv6), OpenJDK 64-bit IcedTea7 2.3.3
> Client: WinXP (no IPv6), Oracle Java JRE build 1.7.0_05-b05
>            Reporter: Greg Bowering
>            Priority: Minor
>              Labels: AvroSource, avro
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> Thanks for developing Flume-NG :)
> However requiring bind address for AvroSource seems problematic here!
> On WinXP I only have IPv4 available, and bind address same as the hostname works just fine.
> When I migrated my Flume agent to Ubuntu, this no longer works since binding to the server hostname by default seems to only accept incoming IPv6 connections.  This breaks for me since all my clients only have IPv4.
> I found I could force AvroSource to accept IPv4 only by binding using the IPv4 address in the conf rather than the hostname.
> This is unsatisfactory since in many cases servers have dynamically assigned IP addresses.
> Furthermore, in some cluster deployment scenarios, even hostnames are not always static (e.g. standing up an EC2 spot-instance to process logs).  It would be much simpler to configure a cluster of Flume agents without having to insert the hostname or IP address in all the conf files, i.e. allow AvroSource to bind to the wildcard address.  This is a simple fix (omit the {{Configurables.ensureRequiredNonNull}} on {{BIND_KEY}} in {{AvroSource#configure(Context)}})
> If sysadmins wish to lock-down network interfaces then there are firewalls/iptables for that kind of stuff...

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira