PodScheduling v1alpha1

PodScheduling objects hold information that is needed to schedule a Pod with ResourceClaims that use “WaitForFirstConsumer” allocation mode.

apiVersion: resource.k8s.io/v1alpha1

import "k8s.io/api/resource/v1alpha1"

PodScheduling

PodScheduling objects hold information that is needed to schedule a Pod with ResourceClaims that use “WaitForFirstConsumer” allocation mode.

This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.


  • apiVersion: resource.k8s.io/v1alpha1

  • kind: PodScheduling

  • metadata (ObjectMeta)

    Standard object metadata

  • spec (PodSchedulingSpec), required

    Spec describes where resources for the Pod are needed.

  • status (PodSchedulingStatus)

    Status describes where resources for the Pod can be allocated.

PodSchedulingSpec

PodSchedulingSpec describes where resources for the Pod are needed.


  • potentialNodes ([]string)

    Set: unique values will be kept during a merge

    PotentialNodes lists nodes where the Pod might be able to run.

    The size of this field is limited to 128. This is large enough for many clusters. Larger clusters may need more attempts to find a node that suits all pending resources. This may get increased in the future, but not reduced.

  • selectedNode (string)

    SelectedNode is the node for which allocation of ResourceClaims that are referenced by the Pod and that use “WaitForFirstConsumer” allocation is to be attempted.

PodSchedulingStatus

PodSchedulingStatus describes where resources for the Pod can be allocated.


  • resourceClaims ([]ResourceClaimSchedulingStatus)

    Map: unique values on key name will be kept during a merge

    ResourceClaims describes resource availability for each pod.spec.resourceClaim entry where the corresponding ResourceClaim uses “WaitForFirstConsumer” allocation mode.

    ResourceClaimSchedulingStatus contains information about one particular ResourceClaim with “WaitForFirstConsumer” allocation mode.

    • resourceClaims.name (string)

      Name matches the pod.spec.resourceClaims[*].Name field.

    • resourceClaims.unsuitableNodes ([]string)

      Set: unique values will be kept during a merge

      UnsuitableNodes lists nodes that the ResourceClaim cannot be allocated for.

      The size of this field is limited to 128, the same as for PodSchedulingSpec.PotentialNodes. This may get increased in the future, but not reduced.

PodSchedulingList

PodSchedulingList is a collection of Pod scheduling objects.


  • apiVersion: resource.k8s.io/v1alpha1

  • kind: PodSchedulingList

  • metadata (ListMeta)

    Standard list metadata

  • items ([]PodScheduling), required

    Items is the list of PodScheduling objects.

Operations


get read the specified PodScheduling

HTTP Request

GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}

Parameters

  • name (in path): string, required

    name of the PodScheduling

  • namespace (in path): string, required

    namespace

  • pretty (in query): string

    pretty

Response

200 (PodScheduling): OK

401: Unauthorized

get read status of the specified PodScheduling

HTTP Request

GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}/status

Parameters

  • name (in path): string, required

    name of the PodScheduling

  • namespace (in path): string, required

    namespace

  • pretty (in query): string

    pretty

Response

200 (PodScheduling): OK

401: Unauthorized

list list or watch objects of kind PodScheduling

HTTP Request

GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings

Parameters

Response

200 (PodSchedulingList): OK

401: Unauthorized

list list or watch objects of kind PodScheduling

HTTP Request

GET /apis/resource.k8s.io/v1alpha1/podschedulings

Parameters

Response

200 (PodSchedulingList): OK

401: Unauthorized

create create a PodScheduling

HTTP Request

POST /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings

Parameters

Response

200 (PodScheduling): OK

201 (PodScheduling): Created

202 (PodScheduling): Accepted

401: Unauthorized

update replace the specified PodScheduling

HTTP Request

PUT /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}

Parameters

Response

200 (PodScheduling): OK

201 (PodScheduling): Created

401: Unauthorized

update replace status of the specified PodScheduling

HTTP Request

PUT /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}/status

Parameters

Response

200 (PodScheduling): OK

201 (PodScheduling): Created

401: Unauthorized

patch partially update the specified PodScheduling

HTTP Request

PATCH /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}

Parameters

  • name (in path): string, required

    name of the PodScheduling

  • namespace (in path): string, required

    namespace

  • body: Patch, required

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • fieldValidation (in query): string

    fieldValidation

  • force (in query): boolean

    force

  • pretty (in query): string

    pretty

Response

200 (PodScheduling): OK

201 (PodScheduling): Created

401: Unauthorized

patch partially update status of the specified PodScheduling

HTTP Request

PATCH /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}/status

Parameters

  • name (in path): string, required

    name of the PodScheduling

  • namespace (in path): string, required

    namespace

  • body: Patch, required

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • fieldValidation (in query): string

    fieldValidation

  • force (in query): boolean

    force

  • pretty (in query): string

    pretty

Response

200 (PodScheduling): OK

201 (PodScheduling): Created

401: Unauthorized

delete delete a PodScheduling

HTTP Request

DELETE /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}

Parameters

Response

200 (PodScheduling): OK

202 (PodScheduling): Accepted

401: Unauthorized

deletecollection delete collection of PodScheduling

HTTP Request

DELETE /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings

Parameters

Response

200 (Status): OK

401: Unauthorized