Uploaded image for project: 'Percona Monitoring and Management'
  1. Percona Monitoring and Management
  2. PMM-5728

Technical preview of External Services monitoring feature.

    XMLWordPrintable

    Details

      Description

      Use story

      As PMM User I need to add my external service  on the node I've already have pmm-agent running so that I can collect metrics from local external exporter running on this Node

      We expect this will cover 70%  of all use cases 

      Use case

      As a User, I have a Linux server (Node) where I can access and already installed PMM Client 
      (pmm-admin config .... )
      At this Node, I have Redis  Server (Service) I want to be monitored. 
      I already installed some "redis_exporter" (prometheus exporter) and configured it to get metrics from my Redis
      From pmm-amin I need a command to add this Redis to my PMM installation 
        

      User Interactions

      assumption: pmm-admin config command was already executed and Node added to PMM as "Node2"

       

       

      pmm-admin add external [--service-name=<service-name>] [--port=<port>] [--metric-path=<metric-path>] [--scheme=<scheme>]
      pmm-admin add external --service-name=Redis --port=8967  
      

      Expected result: 

      1) in PMM  we have Node  name = Node2 and  External Service  with  Service Name = "Redis"

       

       

      2) Exporter added by this command will be scraped in the Medium Resolution bucket.

      (Adding different URL  for different  buckets will be later when we'll have better UI on PMM Server side  ) 

       

      3) Service will inherit all  labels from Node, as we do  for usual Services

      Flags:

      • all flags to specify where to find an exporter to be scraped 
      • --service-name -  to specify the fixed name, without adding Node Name  at the beginning

       Out of scope:

      • Connection check and Check that we are getting prometheus metrics from exporter
      • Inventory commands and inventory API

       

      Suggested implementation:

      • Create API for external service in management API:
        • It should accept 
          • Name
          • Port
          • Scheme
          • Metric path
          • Node ID
          • Custom labels
          • Username
          • Password
        • Create External service connected to Node with provided ID
        • Create External agent connected to created service
        • HTTP Basic authentication
      • Create CLI command in pmm-admin
      • Node ID should be received from pmm-agent

       

        Attachments

          Activity

            People

            Assignee:
            nurlan.moldomurov Nurlan Moldomurov
            Reporter:
            roma.novikov Roma Novikov
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - Not Specified
                Not Specified
                Logged:
                Time Spent - 1 day
                1d

                  Smart Checklist