Uploaded image for project: 'Red Hat Advanced Cluster Management'
  1. Red Hat Advanced Cluster Management
  2. ACM-22958

As a Global Hub Admin, I can migrate resources to target hub in batches during deploying stage to improve scalability

XMLWordPrintable

    • Product / Portfolio Work
    • 3
    • False
    • Hide

      None

      Show
      None
    • False
    • Hide

      Provide the required acceptance criteria using this template.

      • ...
      Show
      Provide the required acceptance criteria using this template. ...
    • GH Train-34
    • Important
    • None

      Value Statement

      Currently, during the migration deploying stage, all resources are sent from the source hub to the target hub in a single large event. This approach can cause:

      • Performance bottlenecks when migrating clusters with many resources
      • Timeout issues due to large payload sizes
      • Poor scalability for large-scale migrations
      • Difficulty in tracking progress and debugging failures

      To improve migration scalability and reliability, we should support {}batch sending{} resources during the deploying stage.

      Proposed Solution

      Instead of sending all resources in one single event, the migration controller should:

      • Split resources into configurable batch sizes (e.g., 10, 20, 50 resources per batch)
      • Send multiple smaller events sequentially or in parallel
      • Provide progress tracking for each batch
      • Handle batch-level failures gracefully with retry mechanisms

      Definition of Done

      Core Functionality

      • [x] Migration controller can split resources into configurable batch sizes
      • [x] Resources are sent in multiple events instead of a single large event
      • [x] Each batch is sent sequentially with optional delay between batches

      Observability & Monitoring

      • [x] Batch progress is visible in migration status (e.g., "Batch 3/10 deployed")
      • [x] Logs clearly indicate which batch is being processed

      Benefits

        1. {}Scalability{}: Handle migrations with thousands of resources without performance degradation
        2. {}Reliability{}: Smaller payloads reduce timeout and network issues
        3. {}Observability{}: Better progress tracking and failure isolation
        4. {}Resource Efficiency{}: Lower memory usage on both source and target hubs

      Development Complete

      • The code is complete.
      • Functionality is working.
      • Any required downstream Docker file changes are made.

      Tests Automated
      [ ] Unit/function tests have been automated and incorporated into the build.
      [ ] 100% automated unit/function test coverage for new or changed APIs.

      Secure Design
      [ ] Security has been assessed and incorporated into your threat model.

      Multidisciplinary Teams Readiness
      [ ] Create an informative documentation issue using the Customer Portal Doc template that you can access from [The Playbook](https://docs.google.com/document/d/1YTqpZRH54Bnn4WJ2nZmjaCoiRtqmrc2w6DdQxe_yLZ8/edit#heading=h.9fvyr2rdriby), and ensure doc acceptance criteria is met.
      [ ] Link the development issue to the doc issue.

      Support Readiness
      [ ] The must-gather script has been updated.

              rh-ee-myan Meng Yan
              rh-ee-myan Meng Yan
              Hui Chen Hui Chen
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: