Інформація в цьому документі може бути застарілою
Дата оновлення цього документа старіша за оригінал, можливо інформація в ньому застаріла. Радимо ознайомитись з оригіналом англійською для отримання найсвіжіших відомостей: IngressClass
IngressClass
apiVersion: networking.k8s.io/v1
import "k8s.io/api/networking/v1"
IngressClass
IngressClass представляє клас Ingress, на який посилається Ingress Spec. Анотацію ingressclass.kubernetes.io/is-default-class
можна використовувати, щоб вказати, що IngressClass слід вважати стандартним класом. Коли для одного ресурсу IngressClass ця анотація має значення true, новим ресурсам Ingress без вказаного класу буде присвоєно цей клас.
apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata (ObjectMeta)
Стандартний обʼєкт метаданих. Докладніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
spec (IngressClassSpec)
spec — є бажаним станом IngressClass. Докладніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
IngressClassSpec
IngressClassSpec надає інформацію про клас Ingress.
controller (string)
controller вказує на імʼя контролера, який має обробляти цей клас. Це дозволяє використовувати різні "різновиди", керовані тим самим контролером. Наприклад, для одного імплементованого контролера можуть існувати різні параметри. Це повинно бути вказане як шлях з префіксом домену, не довше ніж 250 символів, наприклад, "acme.io/ingress-controller". Це поле є незмінним.
parameters (IngressClassParametersReference)
parameters це посилання на спеціалізований ресурс, що містить додаткову конфігурацію для контролера. Це необовʼязково, якщо контролер не вимагає додаткових параметрів.
IngressClassParametersReference ідентифікує обʼєкт API. Це може бути використано для вказівки на обʼєкт, що належить кластеру або області простору імен.
parameters.kind (string), обовʼязково
kind це тип ресурсу, на який вказується посилання.
parameters.name (string), обовʼязково
name це імʼя ресурсу, на який вказується посилання.
parameters.apiGroup (string)
apiGroup це група для ресурсу, на який вказується посилання. Якщо apiGroup не вказано, вказаний Kind повинен бути в основній групі API. Для будь-яких інших типів сторонніх ресурсів apiGroup є обовʼязковим.
parameters.namespace (string)
namespace це простір імен для ресурсу, на який вказується посилання. Це поле обовʼязкове, коли scope встановлено на "Namespace", і його не слід встановлювати, коли scope встановлено у "Cluster".
parameters.scope (string)
scope вказує на те, чи відноситься ресурс до кластера або простору імен. Цей параметр може мати значення "Cluster" (типово) або "Namespace".
IngressClassSpec
IngressClassSpec надає інформацію про клас Ingress.
controller (string)
controller вказує на імʼя контролера, який повинен обробляти цей клас. Це дозволяє використовувати різні "різновиди", які контролюються тим самим контролером. Наприклад, у вас можуть бути різні параметри для одного й того ж імплементаційного контролера. Це повинно бути вказано як шлях з префіксом домену довжиною не більше 250 символів, наприклад, "acme.io/ingress-controller". Це поле є незмінним.
parameters (IngressClassParametersReference)
parameters це посилання на власний ресурс, що містить додаткову конфігурацію для контролера. Це необовʼязково, якщо контролер не потребує додаткових параметрів.
IngressClassParametersReference ідентифікує обʼєкт API. Це може бути використано для {#list-list-or-watch-objects-of-kind-ingressclass}вказівки на ресурс, обмежений кластером або простором імен. {#http-request-1}
parameters.kind (string), обовʼязково
kind це тип ресурсу, на який вказується посилання. {#parameters-1}
parameters.name (string), обовʼязково
name це імʼя ресурсу, на який вказується посилання.
parameters.apiGroup (string)
apiGroup це група для ресурсу, на який вказується посилання. Якщо apiGroup не вказано, вказаний Kind повинен належати до основної групи API. Для будь-яких інших типів сторонніх ресурсів apiGroup є обовʼязковим.
parameters.namespace (string)
namespace це простір імен для ресурсу, на який вказується посилання. Це поле є обовʼязковим, коли scope встановлено на "Namespace", і його не слід встановлювати, коли scope встановлено на "Cluster".
parameters.scope (string)
scope вказує, чи це посилання на ресурс, обмежений кластером або простором імен. Це може бути встановлено на "Cluster" (стандартно) або "Namespace".
IngressClassList
IngressClassList є колекцією IngressClasses.
apiVersion: networking.k8s.io/v1
kind: IngressClassList
metadata (ListMeta)
Стандартні метадані списку.
items ([]IngressClass), обовʼязково
items це список IngressClasses.
Операції
get
отримати вказаний IngressClass
HTTP запит
GET /apis/networking.k8s.io/v1/ingressclasses/{name}
Параметри
name (в шляху): string, обовʼязково
імʼя IngressClass
pretty (в запиті): string
Відповідь
200 (IngressClass): ОК
401: Unauthorized
list
перелік або перегляд обʼєктів типу IngressClass
HTTP запит
GET /apis/networking.k8s.io/v1/ingressclasses
Параметри
allowWatchBookmarks (в запиті): boolean
continue (в запиті): string
fieldSelector (в запиті): string
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
watch (в запиті): boolean
Відповідь
200 (IngressClassList): ОК
401: Unauthorized
create
створення IngressClass
HTTP запит
POST /apis/networking.k8s.io/v1/ingressclasses
Параметри
body: IngressClass, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (IngressClass): ОК
201 (IngressClass): Created
202 (IngressClass): Accepted
401: Unauthorized
update
заміна вказаного IngressClass
HTTP запит
PUT /apis/networking.k8s.io/v1/ingressclasses/{name}
Параметри
name (в шляху): string, обовʼязково
імʼя IngressClass
body: IngressClass, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (IngressClass): ОК
201 (IngressClass): Created
401: Unauthorized
patch
часткове оновлення вказаного IngressClass
HTTP запит
PATCH /apis/networking.k8s.io/v1/ingressclasses/{name}
Параметри
name (в шляху): string, обовʼязково
імʼя IngressClass
body: Patch, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
force (в запиті): boolean
pretty (в запиті): string
Відповідь
200 (IngressClass): ОК
201 (IngressClass): Created
401: Unauthorized
delete
видалення IngressClass
HTTP запит
DELETE /apis/networking.k8s.io/v1/ingressclasses/{name}
Параметри
name (в шляху): string, обовʼязково
імʼя IngressClass
body: DeleteOptions
dryRun (в запиті): string
gracePeriodSeconds (в запиті): integer
pretty (в запиті): string
propagationPolicy (в запиті): string
Відповідь
200 (Status): ОК
202 (Status): Accepted
401: Unauthorized
deletecollection
видалення колекції IngressClass
HTTP запит
DELETE /apis/networking.k8s.io/v1/ingressclasses
Параметри
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): ОК
401: Unauthorized