Skip to content

Support multiple network interfaces per workload instance #442

Open

Description

@scotwells

Problem

Compute instances are limited to one network interface. This prevents network appliances and other multi-homed workloads from connecting to separate tenant networks—for example, a VyOS instance with management, WAN, and LAN interfaces.

Desired outcome

Customers can declare multiple named network interfaces on a workload. Each interface is attached to its selected network, receives independent addressing and status, and keeps a stable guest-visible identity across instance replacement.

One interface must be designated as primary for default routing and primary-IP presentation. Additional interfaces should be governed by project quota, while every instance continues to receive its first interface by default.

Acceptance criteria

  • A workload can request more than one named network interface, subject to the selected runtime class's supported limit.
  • Every declared interface is provisioned, attached, and reported independently.
  • The primary interface and default-route behavior are deterministic.
  • Adding, removing, or changing interfaces results in a safe instance rollout with no orphaned interface allocations.
  • Quota can limit additional interfaces per project without hiding the API behind a feature flag.
  • CLI output and documentation make all interfaces and their readiness visible.
  • End-to-end coverage demonstrates a multi-homed VM or sandbox attached to at least three networks.

Dependencies

Requires corresponding multi-interface support in the cell networking path, including Multus injection, Galactic attachment lifecycle, and the active runtime provider.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions