2 Replies Latest reply on Sep 30, 2005 1:13 PM by belaban

    Discovery of all clusters on a given network

    belaban

      FYI,

      I have added this feature to JGroups 2.2.9. Every JGroups node now
      listens to 224.0.0.75:7500 (this can be turned off, or changed, but is
      on by default).
      This allows a developer to discover all instances of all clusters
      running in a network programmatically, or probe.sh can be used to get
      information from each node dumped to stdout.

      I'm thinking this would be cool for the JBoss Network folks (or any other management folks), so the could
      [list=]
      discover all clusters in a network (scoped by the TTL parameter)
      drill down into an individual cluster
      drill down into an individual node


      I'm thinking of coming up with an InformationProvider architecture where

      an InformationProvider registers with the Diagnostics module, and
      provides information when called,
      which is then shipped back to the caller. Example of information
      provided could be
      - the address and port on which Tomcat is listening, so we can point
      jmx-console to the right node
      - addresses of all invokers so we can use JMX to access a single JBoss
      instance, e.g. to get more information about a single node, or to invoke

      an operation on a node
      - JMX statistics (this is already done, for JGroups)
      - listing of the ./deploy or ./farm directories and so on


      More info at http://wiki.jboss.org/wiki/Wiki.jsp?page=Probe.

        • 1. Re: Discovery of all clusters on a given network

          This is good stuffs toward managing cluster elements. Can you also take it further along the line of jmx remote call (like twiddle) to provide querying and active management (leave and join)? It is not just jmx since we are talking about aggregation here.

          • 2. Re: Discovery of all clusters on a given network
            belaban

            Yes, operations are planned (e.g. view reconciliation).
            Problem, though: this is part of JGroups, and we don't enable JGroups in the default JBoss config.
            So maybe we have to replicate this functionality in JBoss, e.g. as an MBean. Hmm, maybe Remoting already provides such a functionality, I recall they had some sort of multicast discovery going on...