WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

MultiKueue via ClusterProfile: Standardize credentials plugins distribution #8042

@hdp617

Description

@hdp617

What would you like to be added:
MultiKueue with ClusterProfile API requires a credentials plugin to be available to the kueue manager (see KEP-5993). Currently, there is no standardized way to distribute these plugins. This enhancement request aims to standardize the method for distributing and making cloud-provider credential plugins available to the kueue manager.

Proposed Options

Option 1: Include the plugins in the Kueue Manager container image

  • Option 1A: Plugins Built and Managed by Kueue. Plugins (e.g., for AWS, GCP, Azure) are compiled and included directly in the official Kueue manager container image, similar to Argo CD.

    • Pros: Offers the best UX as it requires zero extra configuration from the user.
    • Cons: Introduces cloud-provider specific logic in kueue - this might be acceptable as there's prededence from Argo CD and the provider-specific logic is limited to auth.
  • Option 1B: Plugins Built and Managed by Customers. Customers are responsible for compiling and building a custom Kueue manager image that includes their required credential plugins.

    • Pros: Keeps cloud-specific logic out of the main Kueue repository.
    • Cons: High friction for users, requiring them to maintain a custom build pipeline.

Option 2: Provide the plugins at run time

Plugins are provided at run time, typically via an initContainer that mounts them into the Kueue manager's volume.

  • Pros: Decouples the plugin lifecycle from the Kueue manager release cycle.
  • Cons: Adds complexity to the deployment manifest as it requires an initContainer, volume mounts, etc. It also requires maintaining container images for the plugins - it would be useful to have the plugins hosted in a k8s repos and shared among multi-cluster toolings.

Why is this needed:

Completion requirements:

This enhancement requires the following artifacts:

  • Design doc
  • API change
  • Docs update

The artifacts should be linked in subsequent comments.

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/featureCategorizes issue or PR as related to a new feature.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions