Skip to content

[FEAT] Allow HTTPRoute takeover between Clusters/Controllers for Blue/Green multi-cluster migration #724

@yfauser

Description

@yfauser

Today, when we perform blue/green cluster migrations, we follow the following workflow:

  1. The original HTTPRoute (or any other route type) creates the VPC Lattice Service and the controller annotates the VPC Lattice Service with the ManagedBy tag
  2. We then export the original "Blue Service" using a ServiceExport (creates a VPC Lattice TargetGroup)
  3. We now need to change the ManagedBy tag "out-of-band", e.g. via the CLI, to allow the new "Green" cluster controller to take over the ownership of the VPC Lattice Service
  4. We then create an HTTPRoute in the "Green" cluster that exactly matches the original HTTPRoute in the "Blue" cluster. The "Green Controller" will then find the VPC Lattice service created in Step 1 as we changed the ManagedBy tag in step 3.
  5. Finally, we move the weights around in the new HTTPRoute on Green until we have finally moved everything to Green and are able to delete the Blue Cluster

What we would like to have is a capability in the controller to automate the out-of-band step 3.

One suggestion would be to implement an "allow-takeover-from" annotation on the HTTPRoute, which signals to the new controller that it can change the ManagedBy tag and take over the VPC Lattice service that was initially created by another controller.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions