Skip to content

Use-case: Multiple composable resource operators #8

Description

@mgazz

In this issue we can discuss how to tackle the following scenario: A cluster with two namespaces, has the following configuration:

  • A namespace a with a running composable resource operator coA.
  • A namespace b with a running composable resource operator coB.

This is a corner case because, in most cases, the administrator is in charge of the cluster and they are the only one in a position to install and configure the composable resource operator to interact with the underlining composable infrastructure.

In any case, we should consider such scenario.

In such scenario:

  • admin in namespace a create a cluster wide composability request CR1: {size: 2, model:A100}
  • admin in namespace b create a cluster wide composability request CR2: {size: 4, model:A100}

In a similar fashion, for the scale-down scenario:

  • admin in namespace b decreases a cluster wide composability request to CR2: {size: 2, model:A100}

What we need to define is how we would like to handle such scenario.

Proposal: we can define the ComposabilityRequest as a namespaced-scoped CRD.

└❯kubectl explain crd.spec.scope
GROUP:      apiextensions.k8s.io
KIND:       CustomResourceDefinition
VERSION:    v1

FIELD: scope <string>

DESCRIPTION:
    scope indicates whether the defined custom resource is cluster- or
    namespace-scoped. Allowed values are `Cluster` and `Namespaced`.

As a result, the coA will have visibility of CR1 but no awareness of CR2. Same reasoning applies to namespace b.
In the scale-down scenario, where CR2 gets scaled to size2, coB has no visibility of the GPUs connected by the CR1 request and CR2 can be scaled to size: 2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions