Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-10181

GangliaContext does not work with multicast ganglia setup

    XMLWordPrintableJSON

    Details

    • Target Version/s:
    • Hadoop Flags:
      Reviewed
    • Release Note:
      Hadoop metrics sent to Ganglia over multicast now support optional configuration of socket TTL. The default TTL is 1, which preserves the behavior of prior Hadoop versions. Clusters that span multiple subnets/VLANs will likely want to increase this.

      Description

      The GangliaContext class which is used to send Hadoop metrics to Ganglia uses a DatagramSocket to send these metrics. This works fine for Ganglia multicast setups that are all on the same VLAN. However, when working with multiple VLANs, a packet sent via DatagramSocket to a multicast address will end up with a TTL of 1. Multicast TTL indicates the number of network hops for which a particular multicast packet is valid. The packets sent by GangliaContext do not make it to ganglia aggregrators on the same multicast group, but in different VLANs.

      To fix, we'd need a configuration property that specifies that multicast is to be used, and another that allows setting of the multicast packet TTL. With these set, we could then use MulticastSocket setTimeToLive() instead of just plain ol' DatagramSocket.

        Attachments

        1. HADOOP-10181.001.patch
          14 kB
          Andrew Johnson
        2. HADOOP-10181.002.patch
          14 kB
          Andrew Johnson
        3. HADOOP-10181.003.patch
          14 kB
          Andrew Johnson

          Activity

            People

            • Assignee:
              ajsquared Andrew Johnson
              Reporter:
              ottomata Andrew Otto
            • Votes:
              2 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: