Uploaded image for project: 'Red Hat Advanced Cluster Security'
  1. Red Hat Advanced Cluster Security
  2. ROX-27667

Design a system to collect data from virtual machines

    • Icon: Epic Epic
    • Resolution: Done
    • Icon: Undefined Undefined
    • None
    • None
    • None
    • VM VulnMgmt - Data Collection
    • Product / Portfolio Work
    • False
    • Hide

      None

      Show
      None
    • False
    • Not Selected
    • Done
    • ROX-27051 - Vulnerability Management in ACS for Virtual Machines running on OpenShift Virtualization platform(Tech Preview)
    • Rox Sprint 4.9B - Global, Rox Sprint 4.9C - Global, Rox Sprint 4.9D - Global
    • 0

      Given the number of options available to collect data from VMs, it would be wise for ACS to design a common interface to accept VM data from various data sources.  This interface should be accompanied with an adapter pattern for when the source of data cannot be modified outside of ACS-managed code.

      Acceptance criteria:

      • Stubbed out interface for accepting VM data
      • Documentation for the adapter pattern
      • Messages for transmitting VM data to Central are defined

      Technical details around the interface:

      • HTTP endpoint
      • Push model, i.e. data sources are expected to "push" their data to the ACS HTTP endpoint
      • Protobufs are the modus operandi for ACS, so I don't see why we would stray from that convention here

      Open questions:

      • Not sure how generic the data about VMs should be.  I think "facts" is very generic, but jamming all RPM packages into a single "fact" may not be optimal.
      • Should this endpoint be mounted as part of Sensor or be a separate deployment?
      • How will VM data sources authenticate against to ACS?

              rh-ee-klape Kyle Lape
              rh-ee-klape Kyle Lape
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: