5 Replies Latest reply on Mar 21, 2016 11:35 AM by someniceuser

    How do I make hyperic monitor multiple remote locations with hyperic?

    someniceuser Novice

      We set up one hyperic server in AWS.

       

      We have a lot of remote sites with a server on site. Each site has it's own public static IP address.

       

      Here is how we set up hyperic right now:

       

      agent.setup.camIP= Static public IP of the server in AWS

      agent.setup.camPort=7080

      agent.setup.camSSLPort=7443

      agent.setup.camSecure=yes

      agent.setup.camLogin=login

      agent.setup.camPword=pass

      #agent.setup.agentIP=public IP of the site

      agent.setup.agentPort=2144

      #agent.setup.resetupTokens=no

      agent.setup.acceptUnverifiedCertificate=yes

       

       

      On each site we have a router that does port forwarding the server. So each server is behind a router and has private static IP such as 192.168.30.101

       

      We have no issue setting up hyperic on the local server, the problem is Hyperic HQ is overwriting the servers. It is taking the static private ip address and keeps overwriting the latest server.

       

      Even though we have different names for the servers and different public IP when we set up the agent, once we set up the agent and it start pulling metrics, hyperic just overwrites the monitoring to the latest installed server.

       

      any way to disable hyperic pulling local IP address?

        • 1. Re: How do I make hyperic monitor multiple remote locations with hyperic?
          jerrypearson Hot Shot
          VMware Employees

          This could be referred to as "pinning to a specific IP address" this is required when a platform has multiple NICs or IP addresses and is accomplished by adding additional directives to the agent.properties file. Since you have specified a specific setup port, it is best to pin that as well.

           

          agent.listenIp=<public IP of the site>
          agent.listenPort=2144

           

          I suggest that you also uncomment:

           

          #agent.setup.agentIP=<public IP of the site>

           

          as well as (set it appropriately):

           

          #agent.setup.unidirectional=no

           

          The setting is described in the header section of the agent.properties file.

           

          # Agent configuration file
          #
          # The following are the properties that the Agent recognizes:
          #
          #    agent.listenPort    
          #         Default:      "2144"
          #
          #         Description:  Port that the agent listens on.
          #
          #    agent.listenIp
          #         Default:      "*"
          #
          #         Description:  Address that the agent listens on.  If set to '*',
          #                       the agent will listen on all available interfaces.

           

          1.) You now have:

           

          agent.setup.camIP= Static public IP of the server in AWS
          agent.setup.camPort=7080
          agent.setup.camSSLPort=7443
          agent.setup.camSecure=yes
          agent.setup.camLogin=login
          agent.setup.camPword=pass
          #agent.setup.agentIP=public IP of the site
          agent.setup.agentPort=2144
          #agent.setup.resetupTokens=no
          agent.setup.acceptUnverifiedCertificate=yes

           

          2.) Stop the agent:

           

          3.) Modify this and add the additional directives.

           

          agent.setup.camIP= Static public IP of the server in AWS
          agent.setup.camPort=7080
          agent.setup.camSSLPort=7443
          agent.setup.camSecure=yes
          agent.setup.camLogin=login
          agent.setup.camPword=pass
          agent.setup.agentIP=public IP of the site
          agent.setup.agentPort=2144
          agent.setup.resetupTokens=no
          agent.setup.acceptUnverifiedCertificate=yes
          agent.listenIp=public IP of the site
          agent.listenPort=2144

           

          4.) Delete the agent data directory (it will be re-created on subsequent startup)

          5.) Restart the agent (This will trigger a resetup)

          6.) Accept the agent into inventory

          • 2. Re: How do I make hyperic monitor multiple remote locations with hyperic?
            someniceuser Novice

            Will try it out and report back! This looks really good!

            • 3. Re: How do I make hyperic monitor multiple remote locations with hyperic?
              someniceuser Novice

              I ended up modifying your solution a little bit and also did the following:

               

              1. Gave nic a second freindly IP

              2. Manually modified the Network and FQDN in HQ dashboard after adding the agent

               

              I played around with quite a few other solutions, but your solution worked the best.

              • 4. Re: How do I make hyperic monitor multiple remote locations with hyperic?
                jerrypearson Hot Shot
                VMware Employees

                Thank you for the update!

                 

                1.) Adding a separate IP for monitoring is a nice option.

                2.) Modifying the agent configuration to reflect a correct Network and FQDN is a good thing to check.

                 

                You can add the following two directives to agent.properties to over-ride a discovered FQDN and force a specific name for auto-discovered servers and services.

                 

                1. platform.fqdn=

                over-ride a discovered FQDN (make it be a friendly name versus an IP for example)

                2. platform.name=

                force a specific name for auto-discovered servers and services.

                1 person found this helpful
                • 5. Re: How do I make hyperic monitor multiple remote locations with hyperic?
                  someniceuser Novice

                  My current deployment config is following:

                   

                  #

                  agent.listenPort=2144

                  agent.setup.camIP=AWS_IP

                  agent.setup.camPort=7080

                  agent.setup.camSSLPort=7443

                  agent.setup.camSecure=yes

                  agent.setup.camLogin=user

                  agent.setup.camPword=pass

                  agent.setup.agentIP=public_IP

                  agent.setup.agentPort=2144

                  agent.setup.resetupTokens=no

                  agent.setup.acceptUnverifiedCertificate=yes

                  platform.name=Name_of_platform

                  platform.fqdn=FQDN_name

                   

                   

                  Works really well for us, it pins the friendly name and IP.  So far so good