Workload v1alpha1
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, обовʼязково
pretty (в запиті): string
Відповідь
200 (Workload): OK
401: Unauthorized
list список або перегляд обʼєктів типу Workload
HTTP-запит
GET /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads
Параметри
namespace (в шляху): string, обовʼязково
allowWatchBookmarks (в запиті): boolean
continue (в запиті): string
fieldSelector (в запиті): string
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
watch (в запиті): boolean
Відповідь
200 (WorkloadList): OK
401: Unauthorized
list список або перегляд обʼєктів типу Workload
HTTP-запит
GET /apis/scheduling.k8s.io/v1alpha1/workloads
Параметри
allowWatchBookmarks (в запиті): boolean
continue (в запиті): string
fieldSelector (в запиті): string
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
watch (в запиті): boolean
Відповідь
200 (WorkloadList): OK
401: Unauthorized
create створення Workload
HTTP-запит
POST /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads
Параметри
namespace (в шляху): string, обовʼязково
body: Workload, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
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, обовʼязково
body: Workload, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
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, обовʼязково
body: Patch, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
force (в запиті): boolean
pretty (в запиті): string
Відповідь
200 (Workload): OK
201 (Workload): Created
401: Unauthorized
delete видалення Workload
HTTP-запит
DELETE /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads/{name}
Параметри
name (в шляху): string, обовʼязково
назва Workload
namespace (в шляху): string, обовʼязково
body: DeleteOptions
dryRun (в запиті): string
gracePeriodSeconds (в запиті): integer
ignoreStoreReadErrorWithClusterBreakingPotential (в запиті): boolean
pretty (в запиті): string
propagationPolicy (в запиті): string
Відповідь
200 (Status): OK
202 (Status): Accepted
401: Unauthorized
deletecollection видалити колекцію Workload
HTTP-запит
DELETE /apis/scheduling.k8s.io/v1alpha1/namespaces/{namespace}/workloads
Параметри
namespace (в шляху): string, обовʼязково
body: DeleteOptions
continue (в запиті): string
dryRun (в запиті): string
fieldSelector (в запиті): string
gracePeriodSeconds (в запиті): integer
ignoreStoreReadErrorWithClusterBreakingPotential (в запиті): boolean
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
propagationPolicy (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
Відповідь
200 (Status): OK
401: Unauthorized