Workload v1alpha1

Workload дозволяє виражати обмеження планування, які слід використовувати при керуванні життєвим циклом робочих навантажень з точки зору планування, включаючи планування, витіснення, виселення та інші фази.

apiVersion: scheduling.k8s.io/v1alpha1

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

Workload

Workload дозволяє виражати обмеження планування, які слід використовувати при керуванні життєвим циклом робочих навантажень з точки зору планування, включаючи планування, витіснення, виселення та інші фази.


  • apiVersion: scheduling.k8s.io/v1alpha1

  • kind: Workload

  • metadata (ObjectMeta)

    Стандартні метадані обʼєкта. Назва повинна бути піддоменом DNS.

  • spec (WorkloadSpec), обовʼязково

    Spec визначає бажану поведінку Workload.

WorkloadSpec

WorkloadSpec визначає бажаний стан Workload.


  • podGroups ([]PodGroup), обовʼязково

    Map: унікальні значення імені ключа будуть збережені під час злиття

    PodGroups — це список груп подів, які складають Workload. Максимальна кількість груп подів — 8. Це поле є незмінним.

    PodGroup представляє набір подів із спільною політикою планування.

    • podGroups.name (string), обовʼязково

      Name — це унікальний ідентифікатор для PodGroup у межах Workload. Він повинен бути міткою DNS. Це поле є незмінним.

    • podGroups.policy (PodGroupPolicy), обовʼязково

      Policy визначає політику планування для цієї PodGroup.

      PodGroupPolicy визначає конфігурацію планування для PodGroup.

      • podGroups.policy.basic (BasicSchedulingPolicy)

        Basic вказує, що поди в цій групі повинні плануватися з використанням стандартної поведінки планування Kubernetes.

        BasicSchedulingPolicy вказує, що слід використовувати стандартну поведінку планування Kubernetes.

      • podGroups.policy.gang (GangSchedulingPolicy)

        Gang вказує, що поди в цій групі повинні плануватися з використанням семантики все-або-нічого.

        GangSchedulingPolicy визначає параметри для групового планування.

        • podGroups.policy.gang.minCount (int32), обовʼязково

          MinCount — це мінімальна кількість підів, які повинні бути заплановані або заплановані одночасно, щоб планувальник прийняв всю групу. Це має бути додатне ціле число.

  • controllerRef (TypedLocalObjectReference)

    ControllerRef — це необовʼязкове посилання на керуючий обʼєкт, такий як Deployment або Job. Це поле призначено для використання інструментами, такими як CLI, щоб надати посилання назад на оригінальне визначення робочого навантаження. Після встановлення його не можна змінити.

    TypedLocalObjectReference дозволяє посилатися на типізований обʼєкт всередині того самого простору імен.

    • controllerRef.kind (string), обовʼязково

      Kind — це тип ресурсу, на який посилається. Він повинен бути назвою сегмента шляху.

    • controllerRef.name (string), обовʼязково

      Name — це назва ресурсу, на який посилається. Він повинен бути назвою сегмента шляху.

    • controllerRef.apiGroup (string)

      APIGroup — це група для ресурсу, на який посилається. Якщо APIGroup порожній, вказаний Kind повинен бути в основній групі API. Для будь-яких інших сторонніх типів встановлення APIGroup обовʼязкове. Він повинен бути піддоменом DNS.

WorkloadList

WorkloadList містить список ресурсів Workload.


  • apiVersion: scheduling.k8s.io/v1alpha1

  • kind: WorkloadList

  • metadata (ListMeta)

    Стандартні метадані списку.

  • items ([]Workload), обовʼязково

    Items — це список Workload.

Операції


get отримати вказаний Workload

HTTP-запит

GET /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads/{name}

Параметри

  • name (в шляху): string, обовʼязково

    назва Workload

  • namespace (в шляху): string, обовʼязково

    namespace

  • pretty (в запиті): string

    pretty

Відповідь

200 (Workload): OK

401: Unauthorized

list список або перегляд обʼєктів типу Workload

HTTP-запит

GET /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads

Параметри

Відповідь

200 (WorkloadList): OK

401: Unauthorized

list список або перегляд обʼєктів типу Workload

HTTP-запит

GET /apis/scheduling.k8s.io/v1alpha1/workloads

Параметри

Відповідь

200 (WorkloadList): OK

401: Unauthorized

create створення Workload

HTTP-запит

POST /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads

Параметри

  • namespace (в шляху): string, обовʼязково

    namespace

  • body: Workload, обовʼязково

  • dryRun (в запиті): string

    dryRun

  • fieldManager (в запиті): string

    fieldManager

  • fieldValidation (в запиті): string

    fieldValidation

  • pretty (в запиті): string

    pretty

Відповідь

200 (Workload): OK

201 (Workload): Created

202 (Workload): Accepted

401: Unauthorized

update замінити вказаний Workload

HTTP-запит

PUT /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads/{name}

Параметри

  • name (в шляху): string, обовʼязково

    назва Workload

  • namespace (в шляху): string, обовʼязково

    namespace

  • body: Workload, обовʼязково

  • dryRun (в запиті): string

    dryRun

  • fieldManager (в запиті): string

    fieldManager

  • fieldValidation (в запиті): string

    fieldValidation

  • pretty (в запиті): string

    pretty

Відповідь

200 (Workload): OK

201 (Workload): Created

401: Unauthorized

patch часткове оновленя вказаного Workload

HTTP-запит

PATCH /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads/{name}

Параметри

  • name (в шляху): string, обовʼязково

    назва Workload

  • namespace (в шляху): string, обовʼязково

    namespace

  • body: Patch, обовʼязково

  • dryRun (в запиті): string

    dryRun

  • fieldManager (в запиті): string

    fieldManager

  • fieldValidation (в запиті): string

    fieldValidation

  • force (в запиті): boolean

    force

  • pretty (в запиті): string

    pretty

Відповідь

200 (Workload): OK

201 (Workload): Created

401: Unauthorized

delete видалення Workload

HTTP-запит

DELETE /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads/{name}

Параметри

Відповідь

200 (Status): OK

202 (Status): Accepted

401: Unauthorized

deletecollection видалити колекцію Workload

HTTP-запит

DELETE /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads

Параметри

Відповідь

200 (Status): OK

401: Unauthorized