Uploaded image for project: 'OpenShift Virtualization'
  1. OpenShift Virtualization
  2. CNV-69351

[R&D] VM Object Graph: External Resource Integration

XMLWordPrintable

    • object-graph-external-resource
    • Product / Portfolio Work
    • 34
    • Hide
      • Research the inclusion of a mechanism to include additional external resources defined by cluster admins
      • A sample configuration format is provided (ConfigMap, CRD, or other) to define external resources by Group/Kind
      • PoC to demonstrate feasibility
      • Final decision should be made on whether we should include or exclude object graph from main Kubevirt repository.
      • no-doc
      • no-ux
      Show
      Research the inclusion of a mechanism to include additional external resources defined by cluster admins A sample configuration format is provided (ConfigMap, CRD, or other) to define external resources by Group/Kind PoC to demonstrate feasibility Final decision should be made on whether we should include or exclude object graph from main Kubevirt repository. no-doc no-ux
    • To Do
    • VIRTSTRAT-520 - Improve data protection integrations with easier VM metadata
    • VIRTSTRAT-520Improve data protection integrations with easier VM metadata
    • 80% To Do, 20% In Progress, 0% Done
    • dev-ready, doc-ready, qe-ready, ux-ready
    • Hide

      2025-09-01:
      Missing the testing (starting this sprint)...

      Show
      2025-09-01: Missing the testing (starting this sprint)...

      Goal

      As new features continue to be added to VMs, the number of objects they depend on continues to grow. Currently, the Object Graph statically defines the resources to include, which makes it hard to extend and maintain resources that are not handled by the main project.

      This epic aims to deliver a proof-of-concept for a generic resource-addition mechanism to the VM Object Graph. This mechanism should allow cluster administrators to manually configure additional external resources to be included in the graph (for example, IPAMClaims, custom CRDs, or other third-party dependencies).

      This is a POC epic and the outcome will guide the long-term plan. Potential outcomes include:

      • Integrate the mechanism into the object graph and let it remain in kubevirt/kubevirt
      • Keep the Object Graph in the core project but do not support external resources
      • Extract the entire Object Graph feature into a separate repository

      Key considerations for the POC:

      • RBAC and security
      • Extensibility and maintainability of the design
      • Compatibility with backup/restore and cross-cluster live migration

      User Stories

      • As a backup partner, I want to identify all of a VM’s related objects so I can back up and restore everything the VM needs to function.
      • As a VM owner, I want to see all of the objects that comprise my VM through an authoritative and centralized API.
      • As a cluster admin, I want to extend the list of objects included in the graph depending on my cluster needs.
      • As a VM owner, I want to migrate my VM between clusters and know exactly which dependencies must be replicated to the target cluster.

      Non-Requirements

      • Implementing GA support for external dependencies
      • Moving the Object Graph feature to GA
      • Guaranteeing that all external resources are backed up or migrated automatically

          1.
          upstream roadmap issue Sub-task New Undefined Unassigned
          2.
          upstream design Sub-task New Undefined Unassigned
          3.
          upstream documentation Sub-task New Undefined Unassigned
          4.
          upstream roadmap issue Sub-task New Undefined Unassigned
          5.
          upgrade consideration Sub-task New Undefined Unassigned
          6.
          test plans in polarion Sub-task New Undefined Unassigned
          7.
          upstream design Sub-task New Undefined Unassigned
          8.
          automated tests Sub-task New Undefined Unassigned
          9.
          upstream documentation Sub-task New Undefined Unassigned
          10.
          downstream documentation merged Sub-task New Undefined Unassigned
          11.
          upgrade consideration Sub-task New Undefined Unassigned
          12.
          CNV QE DevOps Requirement/Enablement Sub-task New Undefined Unassigned
          13.
          test plans in polarion Sub-task New Undefined Unassigned
          14.
          automated tests Sub-task New Undefined Unassigned
          15.
          downstream documentation merged Sub-task New Undefined Unassigned
          16.
          CNV QE DevOps Requirement/Enablement Sub-task New Undefined Unassigned

              rh-ee-alromero Alvaro Romero
              alitke@redhat.com Adam Litke
              Ahmad Hafi Ahmad Hafi
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: