ResourceClaim v1alpha3
apiVersion: resource.k8s.io/v1alpha3
import "k8s.io/api/resource/v1alpha3"
ResourceClaim
ResourceClaim описує запит на доступ до ресурсів у кластері, для використання робочими навантаженнями. Наприклад, якщо робоче навантаження потребує пристрою-акселератора з конкретними властивостями, ось як виражається цей запит. Розділ статусу відстежує, чи було задоволено цей запит і які саме ресурси були виділені.
Це альфа-тип і потребує увімкнення функціональної можливості DynamicResourceAllocation.
apiVersion: resource.k8s.io/v1alpha3
kind: ResourceClaim
metadata (ObjectMeta)
Стандартні метадані обʼєкта
spec (ResourceClaimSpec), обовʼязково
Spec описує, що запитується і як це налаштувати. Специфікація є незмінною.
status (ResourceClaimStatus)
Status описує, чи заявка готова до використання і що було виділено.
ResourceClaimSpec
ResourceClaimSpec визначає, що запитується в ResourceClaim і як це налаштувати.
controller (string)
Controller — це імʼя драйвера DRA, який призначений для обробки розподілу цієї заявки. Якщо поле порожнє, розподіл обробляється планувальником під час планування podʼа.
Має бути піддоменом DNS і закінчуватися доменом DNS, що належить постачальнику драйвера.
Це альфа-поле і вимагає активації функціональної можливості DRAControlPlaneController.
devices (DeviceClaim)
Devices визначає як запитувати пристрої.
DeviceClaim визначає, як запитувати пристрої за допомогою ResourceClaim.
devices.config ([]DeviceClaimConfiguration)
Atomic: буде замінено під час злиття
Це поле містить конфігурацію для декількох потенційних драйверів, які можуть задовольнити запити у цій заявці. Воно ігнорується під час призначення заявки.
DeviceClaimConfiguration використовується для параметрів конфігурації у DeviceClaim.
devices.config.opaque (OpaqueDeviceConfiguration)
Opaque надає специфічні для драйвера параметри конфігурації.
OpaqueDeviceConfiguration містить параметри конфігурації драйвера у форматі, визначеному постачальником драйвера.
devices.config.opaque.driver (string), обовʼязково
Драйвер використовується для визначення того, якому втулку kubelet потрібно передати ці конфігураційні параметри.
Політика допуску, надана розробником драйвера, може використовувати цей параметр, щоб вирішити, чи потрібно їх перевіряти.
Має бути субдоменом DNS і закінчуватися на DNS-домені, що належить постачальнику драйвера.
devices.config.opaque.parameters (RawExtension), обовʼязково
Параметри можуть містити довільні дані. Відповідальність за перевірку та керування версіями покладається на розробника драйверів. Зазвичай це включає самоідентифікацію та версію ("kind" + "apiVersion" для типів Kubernetes), а також конвертацію між різними версіями.
RawExtension використовується для зберігання розширень у зовнішніх версіях.
Щоб використовувати це, створіть поле, яке має тип RawExtension у вашій зовнішній, версійованій структурі, і Object у вашій внутрішній структурі. Також потрібно зареєструвати ваші різні типи втулків.
// Внутрішній пакунок:
type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.Object `json:"myPlugin"` } type PluginA struct { AOption string `json:"aOption"` }
// Зовнішній пакунок:
type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.RawExtension `json:"myPlugin"` } type PluginA struct { AOption string `json:"aOption"` }
// Готовий JSON буде виглядати приблизно так:
{ "kind":"MyAPIObject", "apiVersion":"v1", "myPlugin": { "kind":"PluginA", "aOption":"foo", }, }
Що відбувається? Спочатку декодування використовує json або yaml для десеріалізації даних у ваш зовнішній MyAPIObject. Це призводить до зберігання необробленого JSON, але без розпакування. Наступний крок — копіювання (за допомогою pkg/conversion) у внутрішню структуру. Функції перетворення, встановлені в DefaultScheme пакета runtime, розпаковують JSON, збережений у RawExtension, перетворюючи його в правильний тип обʼєкта і зберігаючи його в Object. (TODO: У випадку, коли обʼєкт має невідомий тип, буде створено і збережено обʼєкт runtime.Unknown.)
devices.config.requests ([]string)
Atomic: буде замінено під час злиття
Requests перераховує назви запитів, до яких застосовується конфігурація. Якщо поле порожнє, конфігурація застосовується до всіх запитів.
devices.constraints ([]DeviceConstraint)
Atomic: буде замінено під час злиття
Ці обмеження повинні задовольнятися набором пристроїв, які виділяються для заявки.
DeviceConstraint повинен мати рівно одне поле, крім Requests.
devices.constraints.matchAttribute (string)
MatchAttribute вимагає, щоб усі пристрої, про які йдеться, мали цей атрибуту, а його тип і значення були однаковими для всіх цих пристроїв.
Наприклад, якщо ви вказали "dra.example.com/numa" (гіпотетичний приклад!), то будуть обрані лише пристрої в одному й тому самому NUMA-вузлі. Пристрій, який не має цього атрибуту, не буде обраний. Усі пристрої повинні використовувати значення одного типу для цього атрибуту, оскільки це є частиною його специфікації, але якщо якийсь пристрій цього не робить, він також не буде обраний.
Має включати доменний кваліфікатор.
devices.constraints.requests ([]string)
Atomic: буде замінено під час злиття
Requests — це список з одного або більше запитів у цій заявці, які мають спільно задовольняти цю умову. Якщо запит виконується кількома пристроями, то всі пристрої повинні відповідати цій умові. Якщо це не вказано, ця умова застосовується до всіх запитів у заявці.
devices.requests ([]DeviceRequest)
Atomic: буде замінено під час злиття
Requests представляють індивідуальні запити на окремі пристрої, які мають бути задоволені. Якщо список порожній, то не потрібно виділяти жодних ресурсів.
DeviceRequest — це запит на пристрої, необхідні для заявки. Зазвичай це запит на один ресурс, такий як пристрій, але також може включати запит на кілька однакових пристроїв.
Поле DeviceClassName наразі є обов’язковим. Клієнти повинні перевірити, чи воно дійсно встановлене. Його відсутність свідчить про зміни, які ще не підтримуються клієнтом, і в такому випадку клієнт повинен відмовитися від обробки запиту.
devices.requests.deviceClassName (string), обовʼязково
DeviceClassName посилається на конкретний DeviceClass, який може визначати додаткові налаштування та селектори, що будуть успадковані цим запитом.
Клас є обов’язковим. Доступність класів залежить від кластера.
Адміністратори можуть використовувати це, щоб обмежити доступні для запитів пристрої, встановлюючи класи лише з селекторами для дозволених пристроїв. Якщо користувачі можуть вільно запитувати будь-що без обмежень, адміністратори можуть створити порожній DeviceClass для використання користувачами.
devices.requests.name (string), обовʼязково
Name може бути використане для посилання на цей запит у записі pod.spec.containers[].resources.claims та в умові заявки.
Має бути міткою DNS.
devices.requests.adminAccess (boolean)
AdminAccess вказує, що це заявка на адміністративний доступ до пристрою(їв). Заявки з AdminAccess очікується використовувати для моніторингу або інших сервісів управління пристроєм. Вони ігнорують усі звичайні заявки на пристрій щодо режимів доступу та будь-яких розподілів ресурсів.
devices.requests.allocationMode (string)
AllocationMode та пов’язані з ним поля визначають, як пристрої виділяються для виконання цього запиту. Підтримувані значення:
ExactCount: Цей запит на конкретну кількість пристроїв. Це значення використовується стандартно. Точна кількість вказується в полі
count
.All: Цей запит на всі пристрої, що відповідають умовам, у пулі. Виділення не вдасться, якщо деякі пристрої вже виділені, за винятком випадків, коли запитується adminAccess.
Якщо AllocationMode не вказано, стандатний режим — ExactCount. Якщо режим — ExactCount і кількість не вказана, стандартна кількість один. Будь-які інші запити повинні вказати це поле.
Можуть бути додані нові режими в майбутньому. Клієнти повинні відмовитися від обробки запитів із невідомими режимами.
devices.requests.count (int64)
Поле Count використовується лише тоді, коли режим підрахунку — "ExactCount". Має бути більше нуля. Якщо AllocationMode встановлено як ExactCount і це поле не вказано, стандартне значення — один.
devices.requests.selectors ([]DeviceSelector)
Atomic: буде замінено під час злиття
Селектори визначають критерії, які має задовольнити конкретний пристрій, щоб він був розглянутий для цього запиту. Усі селектори повинні бути виконані, щоб пристрій був прийнятий до розгляду.
DeviceSelector повинен мати рівно одне встановлене поле.
devices.requests.selectors.cel (CELDeviceSelector)
CEL містить вираз CEL для вибору пристрою.
CELDeviceSelector містить CEL-вираз для вибору пристрою.
devices.requests.selectors.cel.expression (string), обовʼязково
Вираз є виразом CEL, який оцінює один пристрій. Він має оцінюватися як true, коли пристрій відповідає бажаним критеріям, і як false, коли не відповідає. Будь-який інший результат є помилкою і призводить до зупинки надання пристроїв.
Вхідні дані виразу — це обʼєкт з назвою "device", який має наступні властивості:
- driver (рядок): імʼя драйвера, який визначає цей пристрій.
- attributes (map[string]object): атрибути пристрою, згруповані за префіксом (наприклад, device.attributes["dra.example.com"] оцінюється як обʼєкт з усіма атрибутами, які були префіксовані "dra.example.com").
- capacity (map[string]object): обсяги пристрою, згруповані за префіксом.
Приклад: Розглянемо пристрій з driver="dra.example.com", який надає два атрибути з назвою "model" та "ext.example.com/family" і один обсяг з назвою "modules". Вхідні дані для цього виразу будуть мати такі поля:
device.driver device.attributes["dra.example.com"].model device.attributes["ext.example.com"].family device.capacity["dra.example.com"].modules
Поле device.driver можна використовувати для перевірки конкретного драйвера, або як загальну попередню умову (тобто ви хочете розглядати лише пристрої від цього драйвера), або як частину виразу з кількома умовами, який призначений для розгляду пристроїв з різних драйверів.
Тип значення кожного атрибута визначається визначенням пристрою, і користувачі, які пишуть ці вирази, повинні звертатися до документації для своїх конкретних драйверів. Тип значення кожного обсягу — Quantity.
Якщо невідомий префікс використовується для запиту в device.attributes або device.capacity, буде повернено порожній map. Будь-яке посилання на невідоме поле спричинить помилку оцінки і зупинку виділення.
Робочий вираз має перевіряти наявність атрибутів перед їх використанням.
Для зручності використання доступна функція cel.bind(), яка може бути використана для спрощення виразів, що звертаються до кількох атрибутів з одного домену. Наприклад:
cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool)
ResourceClaimStatus
ResourceClaimStatus відстежує, чи було виділено ресурс і яким був результат.
allocation (AllocationResult)
Allocation встановлюється після успішного розподілу заявки.
AllocationResult містить атрибути виділеного ресурсу.
allocation.controller (string)
controller — це імʼя драйвера DRA, який обробив виділення. Цей драйвер також відповідає за деалокацію заявки. Воно порожнє, коли заявку можна деалокувати без залучення драйвера.
Драйвер може виділяти пристрої, надані іншими драйверами, тому імʼя цього драйвера може відрізнятися від імен драйверів, зазначених у результатах.
Це альфа-поле і вимагає активації функціональної можливості DRAControlPlaneController.
allocation.devices (DeviceAllocationResult)
Devices є результатом виділення пристроїів.
DeviceAllocationResult — результат виділення пристроїв.
allocation.devices.config ([]DeviceAllocationConfiguration)
Atomic: буде замінено під час злиття
Це поле є комбінацією всіх параметрів конфігурації заявки та класу. Драйвери можуть розрізняти ці параметри за допомогою прапорця.
Воно включає параметри конфігурації для драйверів, які не мають виділених пристроїв у результаті, оскільки драйвери самостійно визначають, які параметри конфігурації вони підтримують. Вони можуть мовчки ігнорувати невідомі параметри конфігурації.
DeviceAllocationConfiguration gets embedded in an AllocationResult.
allocation.devices.config.source (string), обовʼязково
Source вказує, чи конфігурація походить з класу і, отже, не є чимось, що звичайний користувач міг би встановити, чи з заявки.
allocation.devices.config.opaque (OpaqueDeviceConfiguration)
Opaque надає специфічні для драйвера параметри конфігурації.
OpaqueDeviceConfiguration містить параметри конфігурації драйвера у форматі, визначеному постачальником драйвера.
allocation.devices.config.opaque.driver (string), обовʼязково
Драйвер використовується для визначення того, якому втулку kubelet потрібно передати ці конфігураційні параметри.
Політика допуску, надана розробником драйвера, може використовувати цей параметр, щоб вирішити, чи потрібно їх перевіряти.
Має бути субдоменом DNS і закінчуватися на DNS-домені, що належить постачальнику драйвера.
allocation.devices.config.opaque.parameters (RawExtension), обовʼязково
Параметри можуть містити довільні дані. Відповідальність за перевірку та керування версіями покладається на розробника драйверів. Зазвичай це включає самоідентифікацію та версію ("kind" + "apiVersion" для типів Kubernetes), а також конвертацію між різними версіями.
RawExtension використовується для зберігання розширень у зовнішніх версіях.
Щоб використовувати це, створіть поле, яке має тип RawExtension у вашій зовнішній, версійованій структурі, і Object у вашій внутрішній структурі. Також потрібно зареєструвати ваші різні типи втулків.
// Внутрішній пакунок:
type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.Object `json:"myPlugin"` } type PluginA struct { AOption string `json:"aOption"` }
// Зовнішній пакунок:
type MyAPIObject struct { runtime.TypeMeta `json:",inline"` MyPlugin runtime.RawExtension `json:"myPlugin"` } type PluginA struct { AOption string `json:"aOption"` }
// Готовий JSON буде виглядати приблизно так:
{ "kind":"MyAPIObject", "apiVersion":"v1", "myPlugin": { "kind":"PluginA", "aOption":"foo", }, }
Що відбувається? Спочатку декодування використовує json або yaml для десеріалізації даних у ваш зовнішній MyAPIObject. Це призводить до зберігання необробленого JSON, але без розпакування. Наступний крок — копіювання (за допомогою pkg/conversion) у внутрішню структуру. Функції перетворення, встановлені в DefaultScheme пакета runtime, розпаковують JSON, збережений у RawExtension, перетворюючи його в правильний тип обʼєкта і зберігаючи його в Object. (TODO: У випадку, коли обʼєкт має невідомий тип, буде створено і збережено обʼєкт runtime.Unknown.)
allocation.devices.config.requests ([]string)
Atomic: буде замінено під час злиття
Requests перераховує назви запитів, до яких застосовується конфігурація. Якщо поле порожнє, конфігурація застосовується до всіх запитів.
allocation.devices.results ([]DeviceRequestAllocationResult)
Atomic: буде замінено під час злиття
Results — перелік віділених пристроїв.
DeviceRequestAllocationResult містить результат розподілу для одного запиту.
allocation.devices.results.device (string), обовʼязково
Device посилається на один екземпляр пристрою за його імʼям в ресурсному пулі драйвера. Має бути міткою DNS.
allocation.devices.results.driver (string), обовʼязково
Driver вказує імʼя драйвера DRA, чий втулок kubelet слід викликати для обробки виділення, коли заявка потрібна на вузлі.
Має бути піддоменом DNS і закінчуватися доменом DNS, що належить постачальнику драйвера.
allocation.devices.results.pool (string), обовʼязково
Це імʼя разом з імʼям драйвера та полем імені пристрою ідентифікує, який пристрій був виділений (
\<імʼя драйвера>/\<імʼя пулу>/\<імʼя пристрою>
).Не повинно перевищувати 253 символи і може містити один або більше піддоменів DNS, розділених косими рисками.
allocation.devices.results.request (string), обовʼязково
Request — це імʼя запиту в заявці, який спричинив виділення цього пристрою. Для одного запиту може бути виділено кілька пристроїв.
allocation.nodeSelector (NodeSelector)
NodeSelector визначає, де доступні виділені ресурси. Якщо не встановлено, ресурси доступні скрізь.
Селектор вузлів представляє об'єднання результатів одного або кількох запитів міток над набором вузлів; тобто, він представляє логічне OR селекторів, які представлені термінами селектора вузлів.
allocation.nodeSelector.nodeSelectorTerms ([]NodeSelectorTerm), обовʼязково
Atomic: буде замінено під час злиття
Обов’язкове поле. Список термінів селектора вузлів. Термінів застосовується логічне OR.
Null або порожній термін селектора вузла не відповідає жодному об'єкту. Вимоги до них складаються за принципом AND. Тип TopologySelectorTerm реалізує підмножину NodeSelectorTerm.
allocation.nodeSelector.nodeSelectorTerms.matchExpressions ([]NodeSelectorRequirement)
Atomic: буде замінено під час злиття
Список вимог селектора вузлів за мітками вузлів.
allocation.nodeSelector.nodeSelectorTerms.matchFields ([]NodeSelectorRequirement)
Atomic: буде замінено під час злиття
Список вимог селектора вузлів за полями вузлів.
deallocationRequested (boolean)
Вказує на те, що заявку потрібно деалокувати. Поки це поле встановлене, нові споживачі не можуть бути додані до ReservedFor.
Використовується лише у випадках, коли заявку потрібно деалокувати за допомогою драйвера DRA. Цей драйвер повинен деалокувати заявку та скинути це поле разом із очищенням поля Allocation.
Це альфа-поле і вимагає активації функціональної можливості DRAControlPlaneController.
reservedFor ([]ResourceClaimConsumerReference)
Patch strategy: злиття за ключем
uid
Map: унікальні значення ключа uid будуть збережені під час злиття
ReservedFor вказує, які сутності в даний момент можуть використовувати заявку. Pod, який посилається на ResourceClaim, що не зарезервована для цього Podʼа, не буде запущений. Заявка, яка використовується або може бути використана, оскільки вона зарезервована, не повинна бути деалокована.
У кластері з кількома екземплярами планувальника два podʼи можуть бути заплановані одночасно різними планувальниками. Коли вони посилаються на один і той же ResourceClaim, який вже досяг максимального числа споживачів, лише один pod може бути запланований.
Обидва планувальники намагаються додати свій pod до поля claim.status.reservedFor, але лише оновлення, яке досягає API-сервера першим, зберігається. Інше оновлення зазнає помилки, і планувальник, який його надіслав, знає, що потрібно повернути pod у чергу, чекаючи, поки ResourceClaim знову стане доступним.
Може бути не більше 32 таких резервувань. Це число може бути збільшено в майбутньому, але не зменшено.
ResourceClaimConsumerReference містить достатньо інформації, щоб знайти споживача ResourceClaim. Користувач має бути ресурсом в тому ж просторі імен, що і ResourceClaim.
reservedFor.name (string), обовʼязково
Name — це імʼя ресурсу, на який посилаються.
reservedFor.resource (string), обовʼязково
Resource — це тип ресурсу, на який посилаються, наприклад, "pods".
reservedFor.uid (string), обовʼязково
UID ідентифікує саме одну інкарнацію ресурсу.
reservedFor.apiGroup (string)
APIGroup — це група для ресурсу, на який посилаються. Вона порожня для основного API. Це відповідає групі в APIVersion, яка використовується при створенні ресурсів.
ResourceClaimList
ResourceClaimList — це колекція заявок.
apiVersion: resource.k8s.io/v1alpha3
kind: ResourceClaimList
metadata (ListMeta)
Стандартні метадані списку
items ([]ResourceClaim), обовʼязково
Items — це список вимог на ресурси.
Операції
get
отримати вказаний ResourceClaim
HTTP запит
GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}
Параметри
name (в шляху): string, обовʼязково
name of the ResourceClaim
namespace (в шляху): string, обовʼязково
pretty (в запиті): string
Відповідь
200 (ResourceClaim): OK
401: Unauthorized
get
отримати статус вказаного ResourceClaim
HTTP запит
GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}/status
Параметри
name (в шляху): string, обовʼязково
name of the ResourceClaim
namespace (в шляху): string, обовʼязково
pretty (в запиті): string
Відповідь
200 (ResourceClaim): OK
401: Unauthorized
list
перелік або перегляд обʼєктів типу ResourceClaim
HTTP запит
GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims
Параметри
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 (ResourceClaimList): OK
401: Unauthorized
list
перелік або перегляд обʼєктів типу ResourceClaim
HTTP запит
GET /apis/resource.k8s.io/v1alpha3/resourceclaims
Параметри
allowWatchBookmarks (в запиті): boolean
continue (в запиті): string
fieldSelector (в запиті): string
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
watch (в запиті): boolean
Відповідь
200 (ResourceClaimList): OK
401: Unauthorized
create
створення ResourceClaim
HTTP запит
POST /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims
Параметри
namespace (в шляху): string, обовʼязково
body: ResourceClaim, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (ResourceClaim): OK
201 (ResourceClaim): Created
202 (ResourceClaim): Accepted
401: Unauthorized
update
заміна вказаного ResourceClaim
HTTP запит
PUT /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}
Параметри
name (в шляху): string, обовʼязково
name of the ResourceClaim
namespace (в шляху): string, обовʼязково
body: ResourceClaim, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (ResourceClaim): OK
201 (ResourceClaim): Created
401: Unauthorized
update
заміна статусу вказаного ResourceClaim
HTTP запит
PUT /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}/status
Параметри
name (в шляху): string, обовʼязково
name of the ResourceClaim
namespace (в шляху): string, обовʼязково
body: ResourceClaim, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (ResourceClaim): OK
201 (ResourceClaim): Created
401: Unauthorized
patch
часткове оновлення вказаного ResourceClaim
HTTP запит
PATCH /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}
Параметри
name (в шляху): string, обовʼязково
name of the ResourceClaim
namespace (в шляху): string, обовʼязково
body: Patch, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
force (в запиті): boolean
pretty (в запиті): string
Відповідь
200 (ResourceClaim): OK
201 (ResourceClaim): Created
401: Unauthorized
patch
часткове оновлення статусу вказаного ResourceClaim
HTTP запит
PATCH /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}/status
Параметри
name (в шляху): string, обовʼязково
name of the ResourceClaim
namespace (в шляху): string, обовʼязково
body: Patch, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
force (в запиті): boolean
pretty (в запиті): string
Відповідь
200 (ResourceClaim): OK
201 (ResourceClaim): Created
401: Unauthorized
delete
видалення ResourceClaim
HTTP запит
DELETE /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}
Параметри
name (в шляху): string, обовʼязково
name of the ResourceClaim
namespace (в шляху): string, обовʼязково
body: DeleteOptions
dryRun (в запиті): string
gracePeriodSeconds (в запиті): integer
pretty (в запиті): string
propagationPolicy (в запиті): string
Відповідь
200 (ResourceClaim): OK
202 (ResourceClaim): Accepted
401: Unauthorized
deletecollection
видалення of ResourceClaim
HTTP запит
DELETE /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims
Параметри
namespace (в шляху): string, обовʼязково
body: DeleteOptions
continue (в запиті): string
dryRun (в запиті): string
fieldSelector (в запиті): string
gracePeriodSeconds (в запиті): integer
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
propagationPolicy (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
Відповідь
200 (Status): OK
401: Unauthorized