Compartilhar via


Especificação da API do Gateway de Aplicativos para contêineres para Kubernetes

Pacotes

O pacote v1 é a versão v1 da API.

alb.networking.azure.io/v1

Este documento define cada um dos tipos de recursos para alb.networking.azure.io/v1.

Tipos de recurso:

AffinityType (alias string)

(Aparece em:SessionAffinity)

AffinityType define o tipo de afinidade para Service

Valor Descrição

"application-cookie"

AffinityTypeApplicationCookie é um tipo de afinidade de sessão para um cookie de aplicativo

"managed-cookie"

AffinityTypeManagedCookie é um tipo de afinidade de sessão para um cookie gerenciado

AlbConditionReason (alias string)

AlbConditionReason define o conjunto de motivos que explicam por que um determinado tipo de condição é gerado no recurso do Gateway de Aplicativos para contêineres.

Valor Descrição

"Accepted"

AlbReasonAccepted indica que o recurso do Gateway de Aplicativos para contêineres é aceito pelo controlador.

"Ready"

AlbReasonDeploymentReady indica o status de implantação de recurso do Gateway de Aplicativos para contêineres.

"InProgress"

AlbReasonInProgress indica se o recurso do Gateway de Aplicativos para contêineres está em processo de criação, atualização ou exclusão.

AlbConditionType (alias string)

AlbConditionType é um tipo de condição associada a um recurso do Gateway de Aplicativos para contêineres. Esse tipo deve ser usado com o campo AlbStatus.Conditions.

Valor Descrição

"Accepted"

AlbConditionTypeAccepted indica se o recurso do Gateway de Aplicativos para contêineres é aceito pelo controlador.

"Deployment"

AlbConditionTypeDeployment indica o status de implantação do recurso do Gateway de Aplicativos para contêineres.

AlbSpec

(Aparece em:ApplicationLoadBalancer)

AlbSpec define as especificações do recurso do Gateway de Aplicativos para contêineres.

Campo Descrição
associations
[]string

As associações são IDs de recursos de sub-rede aos quais o recurso do Gateway de Aplicativos para contêineres está associado.

AlbStatus

(Aparece em:ApplicationLoadBalancer)

AlbStatus define o estado observado do recurso do Gateway de Aplicativos para contêineres.

Campo Descrição
conditions
[]meta/v1.Condition do Kubernetes
(Opcional)

Os tipos de condição conhecidos são:

  • “Aceito”
  • “Pronto”

ApplicationLoadBalancer

ApplicationLoadBalancer é o esquema do recurso do Gateway de Aplicativos para contêineres.

Campo Descrição
metadata
meta/v1.ObjectMeta do Kubernetes
(Opcional)

Metadados do objeto.

Veja a documentação da API do Kubernetes para conferir os campos do campo metadata.
spec
AlbSpec

Spec são as especificações do recurso do Gateway de Aplicativos para contêineres.



associations
[]string

As associações são IDs de recursos de sub-rede aos quais o recurso do Gateway de Aplicativos para contêineres está associado.

status
AlbStatus

Status define o estado atual do recurso do Gateway de Aplicativos para contêineres.

BackendTLSPolicy

BackendTLSPolicy é o esquema da API BackendTLSPolicys.

Campo Descrição
metadata
meta/v1.ObjectMeta do Kubernetes
(Opcional)

Metadados do objeto.

Veja a documentação da API do Kubernetes para conferir os campos do campo metadata.
spec
BackendTLSPolicySpec

Spec é a especificação de BackendTLSPolicy.



targetRef
CustomTargetRef

TargetRef identifica um objeto de API ao qual a política será aplicada.

override
BackendTLSPolicyConfig
(Opcional)

Override define a configuração de política que deve substituir a configuração de política anexada abaixo do recurso de destino na hierarquia.

Observação: atualmente, não há suporte para substituição e resulta em um erro de validação. O suporte para substituição será adicionado em uma versão futura.

default
BackendTLSPolicyConfig
(Opcional)

Default define a configuração de política padrão para o recurso de destino.

status
BackendTLSPolicyStatus

Status define o estado atual de BackendTLSPolicy.

BackendTLSPolicyConditionReason (alias string)

BackendTLSPolicyConditionReason define o conjunto de motivos que explicam por que um determinado tipo de condição de BackendTLSPolicy é gerado.

Valor Descrição

"Accepted"

BackendTLSPolicyReasonAccepted é usado para definir o BackendTLSPolicyConditionReason como Accepted quando a BackendTLSPolicy especificada é configurada corretamente

"InvalidBackendTLSPolicy"

BackendTLSPolicyReasonInvalid é o motivo usado quando a BackendTLSPolicy não é Accepted

"InvalidCertificateRef"

BackendTLSPolicyReasonInvalidCertificateRef é usado quando um certificado inválido é referenciado

"InvalidGroup"

BackendTLSPolicyReasonInvalidGroup é usado quando o grupo é inválido

"InvalidKind"

BackendTLSPolicyReasonInvalidKind é usado quando o tipo/o grupo é inválido

"InvalidName"

BackendTLSPolicyReasonInvalidName é usado quando o nome é inválido

"InvalidSecret"

BackendTLSPolicyReasonInvalidSecret é usado quando o Secret é inválido

"InvalidService"

BackendTLSPolicyReasonInvalidService é usado quando Service é inválido

"NoTargetReference"

BackendTLSPolicyReasonNoTargetReference é usado quando não há referência de destino

"OverrideNotSupported"

BackendTLSPolicyReasonOverrideNotSupported é usado quando não há suporte para substituição

"RefNotPermitted"

BackendTLSPolicyReasonRefNotPermitted é usado quando a referência não é permitida

"SectionNamesNotPermitted"

BackendTLSPolicyReasonSectionNamesNotPermitted é usado quando os nomes de seção não são permitidos

BackendTLSPolicyConditionType (alias string)

BackendTLSPolicyConditionType é um tipo de condição associada a uma BackendTLSPolicy. Esse tipo deve ser usado com o campo BackendTLSPolicyStatus.Conditions.

Valor Descrição

"Accepted"

BackendTLSPolicyConditionAccepted é usado para definir o BackendTLSPolicyConditionType como Accepted

"ResolvedRefs"

BackendTLSPolicyConditionResolvedRefs é usado para definir a BackendTLSPolicyCondition como ResolvedRefs

BackendTLSPolicyConfig

(Aparece em:BackendTLSPolicySpec)

BackendTLSPolicyConfig define a especificação de política para a Política TLS de Back-end.

Campo Descrição
CommonTLSPolicy
CommonTLSPolicy

(Os membros de CommonTLSPolicy são inseridos nesse tipo.)

sni
string
(Opcional)

Sni é o nome do servidor a ser usado para a conexão TLS com o back-end.

ports
[]BackendTLSPolicyPort

As portas especificam a lista de portas em que a política é aplicada.

clientCertificateRef
.SecretObjectReference da API do Gateway
(Opcional)

ClientCertificateRef é a referência ao certificado do cliente a ser usada para a conexão TLS com o back-end.

BackendTLSPolicyPort

(Aparece em:BackendTLSPolicyConfig)

BackendTLSPolicyPort define a porta a ser usada para a conexão TLS com o back-end

Campo Descrição
port
int

Port é a porta a ser usada para a conexão TLS com o back-end

BackendTLSPolicySpec

(Aparece em:BackendTLSPolicy)

BackendTLSPolicySpec define o estado desejado de BackendTLSPolicy.

Campo Descrição
targetRef
CustomTargetRef

TargetRef identifica um objeto de API ao qual a política será aplicada.

override
BackendTLSPolicyConfig
(Opcional)

Override define a configuração de política que deve substituir a configuração de política anexada abaixo do recurso de destino na hierarquia.

Observação: atualmente, não há suporte para substituição e resulta em um erro de validação. O suporte para substituição será adicionado em uma versão futura.

default
BackendTLSPolicyConfig
(Opcional)

Default define a configuração de política padrão para o recurso de destino.

BackendTLSPolicyStatus

(Aparece em:BackendTLSPolicy)

BackendTLSPolicyStatus define o estado observado de BackendTLSPolicy.

Campo Descrição
conditions
[]meta/v1.Condition do Kubernetes
(Opcional)

Conditions descreve as condições atuais de BackendTLSPolicy.

As implementações devem dar preferência a expressar as condições de BackendTLSPolicy por meio das constantes BackendTLSPolicyConditionType e BackendTLSPolicyConditionReason para que os operadores e as ferramentas possam convergir em um vocabulário comum para descrever o estado de BackendTLSPolicy.

Os tipos de condição conhecidos são:

  • “Aceito”

CommonTLSPolicy

(Aparece em:BackendTLSPolicyConfig)

CommonTLSPolicy é o esquema da API CommonTLSPolicy.

Campo Descrição
verify
CommonTLSPolicyVerify
(Opcional)

Verificar fornece as opções para verificar o certificado de par.

CommonTLSPolicyVerify

(Aparece em:CommonTLSPolicy)

CommonTLSPolicyVerify define o esquema para a API CommonTLSPolicyVerify.

Campo Descrição
caCertificateRef
.SecretObjectReference da API do Gateway

CaCertificateRef é o Certificado de Autoridade de Certificação usado para verificar o certificado par.

subjectAltName
string
(Opcional)

SubjectAltName é o nome alternativo da entidade usado para verificar o certificado de par.

CustomTargetRef

(Aparece em:BackendTLSPolicySpec, FrontendTLSPolicySpec, HealthCheckPolicySpec, RoutePolicySpec)

CustomTargetRef é uma referência a um recurso personalizado que não faz parte da API principal do Kubernetes.

Campo Descrição
NamespacedPolicyTargetReference
API do Gateway alpha2. NamespacedPolicyTargetReference

(Os membros de NamespacedPolicyTargetReference são inseridos nesse tipo.)

sectionNames
[]string
(Opcional)

SectionNames é o nome da seção dentro do recurso de destino. Quando não especificado, esse targetRef tem como destino todo o recurso. Nos seguintes recursos, SectionNames é interpretado como o seguinte:

  • Gateway: nome do ouvinte
  • Serviço: nome da porta

Se um SectionNames for especificado, mas ’não existir no objeto visado, a política não será anexada e a implementação da política registrará ResolvedRefsuma Condição ou similar no status da política’.

FrontendTLSPolicy

FrontendTLSPolicy é o esquema da API FrontendTLSPolicy

Campo Descrição
metadata
meta/v1.ObjectMeta do Kubernetes
(Opcional)

Metadados do objeto.

Veja a documentação da API do Kubernetes para conferir os campos do campo metadata.
spec
FrontendTLSPolicySpec

Spec é a especificação de FrontendTLSPolicy.



targetRef
CustomTargetRef

TargetRef identifica um objeto de API ao qual a política será aplicada.

default
FrontendTLSPolicyConfig
(Opcional)

Default define a configuração de política padrão para o recurso de destino.

override
FrontendTLSPolicyConfig
(Opcional)

Override define a configuração de política que deve substituir a configuração de política anexada abaixo do recurso de destino na hierarquia.

Observação: atualmente, não há suporte para substituição e resulta em um erro de validação. O suporte para substituição será adicionado em uma versão futura.

status
FrontendTLSPolicyStatus

Status define o estado atual de FrontendTLSPolicy.

FrontendTLSPolicyConditionReason (alias string)

FrontendTLSPolicyConditionReason define o conjunto de motivos que explicam por que um determinado tipo de condição FrontendTLSPolicy é gerado.

Valor Descrição

"Accepted"

FrontendTLSPolicyReasonAccepted é usado para definir a FrontendTLSPolicyConditionReason como Accepted quando a FrontendTLSPolicy especificada é configurada corretamente

"InvalidFrontendTLSPolicy"

FrontendTLSPolicyReasonInvalid é o motivo usado quando a FrontendTLSPolicy não é Accepted

"InvalidCertificateRef"

FrontendTLSPolicyReasonInvalidCertificateRef é usado quando um certificado inválido é referenciado

"InvalidDefault"

FrontendTLSPolicyReasonInvalidDefault é usado quando o padrão é inválido

"InvalidGateway"

FrontendTLSPolicyReasonInvalidGateway é usado quando o gateway é inválido

"InvalidGroup"

FrontendTLSPolicyReasonInvalidGroup é usado quando o grupo é inválido

"InvalidKind"

FrontendTLSPolicyReasonInvalidKind é usado quando o tipo/o grupo é inválido

"InvalidName"

FrontendTLSPolicyReasonInvalidName é usado quando o nome é inválido

"InvalidPolicyName"

FrontendTLSPolicyReasonInvalidPolicyName é usado quando o nome da política é inválido

"InvalidPolicyType"

FrontendTLSPolicyReasonInvalidPolicyType é usado quando o tipo de política é inválido

"InvalidTargetReference"

FrontendTLSPolicyReasonInvalidTargetReference é usado quando a referência de destino é inválida

"NoTargetReference"

FrontendTLSPolicyReasonNoTargetReference é usado quando não há referência de destino

"OverrideNotSupported"

FrontendTLSPolicyReasonOverrideNotSupported é usado quando não há suporte para substituição

"RefNotPermitted"

FrontendTLSPolicyReasonRefNotPermitted é usado quando a referência não é permitida

"SectionNamesNotPermitted"

FrontendTLSPolicyReasonSectionNamesNotPermitted é usado quando os nomes de seção não são permitidos

FrontendTLSPolicyConditionType (alias string)

FrontendTLSPolicyConditionType é um tipo de condição associada a uma FrontendTLSPolicy. Esse tipo deve ser usado com o campo FrontendTLSPolicyStatus.Conditions.

Valor Descrição

"Accepted"

FrontendTLSPolicyConditionAccepted é usado para definir a FrontendTLSPolicyCondition como Accepted

"ResolvedRefs"

FrontendTLSPolicyConditionResolvedRefs é usado para definir a FrontendTLSPolicyCondition como ResolvedRefs

FrontendTLSPolicyConfig

(Aparece em:FrontendTLSPolicySpec)

FrontendTLSPolicyConfig define a especificação de política para a Política TLS de Front-end.

Campo Descrição
verify
MTLSPolicyVerify
(Opcional)

Verificar fornece as opções para verificar o certificado de par.

policyType
PolicyType
(Opcional)

Type é o tipo da política.

FrontendTLSPolicySpec

(Aparece em:FrontendTLSPolicy)

FrontendTLSPolicySpec define o estado desejado de FrontendTLSPolicy

Campo Descrição
targetRef
CustomTargetRef

TargetRef identifica um objeto de API ao qual a política será aplicada.

default
FrontendTLSPolicyConfig
(Opcional)

Default define a configuração de política padrão para o recurso de destino.

override
FrontendTLSPolicyConfig
(Opcional)

Override define a configuração de política que deve substituir a configuração de política anexada abaixo do recurso de destino na hierarquia.

Observação: atualmente, não há suporte para substituição e resulta em um erro de validação. O suporte para substituição será adicionado em uma versão futura.

FrontendTLSPolicyStatus

(Aparece em:FrontendTLSPolicy)

FrontendTLSPolicyStatus define o estado observado de FrontendTLSPolicy.

Campo Descrição
conditions
[]meta/v1.Condition do Kubernetes
(Opcional)

Conditions descreve as condições atuais de FrontendTLSPolicy.

As implementações devem dar preferência a expressar as condições de FrontendTLSPolicy por meio das constantes FrontendTLSPolicyConditionType e FrontendTLSPolicyConditionReason para que os operadores e as ferramentas possam convergir em um vocabulário comum para descrever o estado de FrontendTLSPolicy.

Os tipos de condição conhecidos são:

  • “Aceito”

FrontendTLSPolicyType (alias string)

(Aparece em:PolicyType)

FrontendTLSPolicyType é o tipo da Política TLS de Front-end.

Valor Descrição

"predefined"

PredefinedFrontendTLSPolicyType é o tipo da política TLS de Front-end predefinida.

FrontendTLSPolicyTypeName (alias string)

(Aparece em:PolicyType)

FrontendTLSPolicyTypeName é o nome da política TLS de front-end.

Valor Descrição

"2023-06"

PredefinedPolicy202306 é o nome da política TLS de front-end predefinida para a política “2023-06”.

"2023-06-S"

PredefinedPolicy202306Strict é o nome da política TLS de front-end predefinida para a política “2023-06-S”. Esta é uma versão estrita da política “2023-06”.

GRPCSpecifiers

(Aparece em:HealthCheckPolicyConfig)

GRPCSpecifiers define o esquema para GRPC HealthCheck.

Campo Descrição
authority
string
(Opcional)

A autoridade se presente for usada como o valor do cabeçalho autoridade na verificação de integridade.

service
string
(Opcional)

O serviço permite a configuração de uma verificação de integridade registrada em um nome de serviço diferente.

HTTPHeader

(Aparece em:HeaderFilter)

HTTPHeader representa um nome e um valor de cabeçalho HTTP, conforme definido pelo RFC 7230.

Campo Descrição
name
HTTPHeaderName

Name é o nome do cabeçalho HTTP para correspondência. A correspondência de nomes não DEVE diferenciar maiúsculas de minúsculas. (Confira https://tools.ietf.org/html/rfc7230#section-3.2).

Se várias entradas especificarem nomes de cabeçalho equivalentes, a primeira entrada com um nome equivalente DEVERÁ ser considerada para uma correspondência. As entradas seguintes com um nome de cabeçalho equivalente DEVEM ser ignoradas. Devido à não diferenciação de maiúsculas e minúsculas dos nomes de cabeçalho, “foo” e “Foo” são considerados equivalentes.

value
string

Value é o valor do cabeçalho HTTP para correspondência.

HTTPHeaderName (alias string)

(Aparece em:HTTPHeader)

HTTPHeaderName é o nome de um cabeçalho HTTP.

Os valores válidos incluem:

  • “Autorização”
  • “Set-Cookie”

Os valores válidos incluem:

  • ”:method” - “:” é um caractere inválido. Isso significa que atualmente não há suporte a pseudo-cabeçalhos HTTP/2 nesse tipo.
  • ”/invalid” - “/ ” é um caractere inválido

HTTPMatch

(Aparece em:HTTPSpecifiers)

HTTPMatch define as correspondências HTTP a serem usadas para as verificações de HealthCheck.

Campo Descrição
body
string
(Opcional)

Body define as correspondências de corpo HTTP a serem usadas para as verificações de HealthCheck.

statusCodes
[]StatusCodes
(Opcional)

StatusCodes define as correspondências de código de status HTTP a serem usados para as verificações de HealthCheck.

HTTPPathModifier

(Aparece em:Redirect, URLRewriteFilter)

HTTPPathModifier define a configuração para modificadores de caminho.

Campo Descrição
type
HTTPPathModifierType

Type define o tipo de modificador de caminho. Mais tipos podem ser adicionados em uma versão futura da API.

Valores podem ser adicionados a essa enumeração. As implementações devem garantir que valores desconhecidos não causem uma falha.

Os valores desconhecidos aqui precisam resultar na configuração de implementação da Accepted Condition para que a regra seja falsa

replaceFullPath
string
(Opcional)

ReplaceFullPath especifica o valor pelo qual o caminho completo de uma solicitação será substituído durante uma reescrita ou um redirecionamento.

replacePrefixMatch
string
(Opcional)

ReplacePrefixMatch especifica o valor pelo qual a correspondência de prefixo de uma solicitação será substituída durante uma reescrita ou um redirecionamento. Por exemplo, uma solicitação para “/foo/bar” com a correspondência de prefixo “/foo” e um ReplacePrefixMatch igual a “/xyz” será modificada para “/xyz/bar”.

Isso corresponde ao comportamento do tipo de correspondência de PathPrefix. Isso corresponde a elementos de caminho completo. Um elemento de caminho refere-se à lista de rótulos no caminho dividido pelo separador /. Quando especificado, um / à direita é ignorado. Por exemplo, os caminhos /abc, /abc/ e /abc/def corresponderão ao prefixo /abc, mas o caminho /abcd não.

ReplacePrefixMatch só é compatível com um PathPrefix HTTPRouteMatch. O uso de qualquer outro tipo de HTTPRouteMatch no mesmo HTTPRouteRule resultará na configuração de implementação da condição aceita para a rota como status: False.

Caminho da solicitação Correspondência de prefixo Prefixo substituto Caminho modificado
/foo/bar /foo /xyz /xyz/bar
/foo/bar /foo /xyz/ /xyz/bar
/foo/bar /foo/ /xyz /xyz/bar
/foo/bar /foo/ /xyz/ /xyz/bar
/foo /foo /xyz /xyz
/foo/ /foo /xyz /xyz/
/foo/bar /foo /bar
/foo/ /foo /
/foo /foo /
/foo/ /foo / /
/foo /foo / /

HTTPPathModifierType (alias string)

(Aparece em:HTTPPathModifier)

HTTPPathModifierType define o tipo de redirecionamento ou reescrita do caminho.

Valor Descrição

"ReplaceFullPath"

FullPathHTTPPathModifier substitui o caminho completo pelo valor especificado.

"ReplacePrefixMatch"

PrefixMatchHTTPPathModifier substitui qualquer caminho de prefixo pelo valor de substituição. Por exemplo, um caminho com uma correspondência de prefixo de “/foo” e uma substituição ReplacePrefixMatch igual a “/bar” substitui “/foo” por “/bar” nas solicitações correspondentes.

Isso corresponde ao comportamento do tipo de correspondência de PathPrefix. Isso corresponde a elementos de caminho completo. Um elemento de caminho refere-se à lista de rótulos no caminho dividido pelo separador /. Quando especificado, um / à direita é ignorado. Por exemplo, os caminhos /abc, /abc/ e /abc/def corresponderão ao prefixo /abc, mas o caminho /abcd não.

HTTPSpecifiers

(Aparece em:HealthCheckPolicyConfig)

HTTPSpecifiers define o esquema para a especificação de verificação HTTP de HealthCheck.

Campo Descrição
host
string
(Opcional)

Host é o valor do cabeçalho do host a ser usado para as verificações de HealthCheck.

path
string
(Opcional)

Path é o caminho a ser usado para as verificações de HealthCheck.

match
HTTPMatch
(Opcional)

Match define as correspondências HTTP a serem usadas para as verificações de HealthCheck.

HeaderFilter

(Aparece em:IngressRewrites)

HeaderFilter define um filtro que modifica os cabeçalhos de uma solicitação ou uma resposta HTTP. Somente uma ação para determinado nome de cabeçalho é permitida. Os filtros que especificam várias ações do mesmo tipo ou um tipo diferente para qualquer nome de cabeçalho são inválidos e rejeitados. A configuração para definir ou adicionar vários valores a um cabeçalho precisa usar a formatação de valor de cabeçalho RFC 7230, com a separação de cada valor com uma vírgula.

Campo Descrição
set
[]HTTPHeader
(Opcional)

Set substitui a solicitação pelo cabeçalho fornecido (nome, valor) antes da ação.

Entrada: GET /foo HTTP/1.1 my-header: foo

Config: set: - name: “my-header” value: “bar”

Saída: GET /foo HTTP/1.1 my-header: bar

add
[]HTTPHeader
(Opcional)

Add adiciona os cabeçalhos fornecidos (nome, valor) à solicitação antes da ação. Ele os acrescenta a todos os valores existentes associados ao nome do cabeçalho.

Entrada: GET /foo HTTP/1.1 my-header: foo

Config: add: - name: “my-header” value: “bar,baz”

Saída: GET /foo HTTP/1.1 my-header: foo,bar,baz

remove
[]string
(Opcional)

Remova os cabeçalhos especificados da solicitação HTTP antes da ação. O valor de Remove é uma lista de nomes de cabeçalho HTTP. Os nomes de cabeçalho não diferenciam maiúsculas de minúsculas (confira https://datatracker.ietf.org/doc/html/rfc2616#section-4.2).

Entrada: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

Config: remove: [“my-header1”, “my-header3”]

Saída: GET /foo HTTP/1.1 my-header2: bar

HeaderName (alias string)

HeaderName é o nome de um cabeçalho ou de um parâmetro de consulta.

HealthCheckPolicy

HealthCheckPolicy é o esquema da API HealthCheckPolicy.

Campo Descrição
metadata
meta/v1.ObjectMeta do Kubernetes
(Opcional)

Metadados do objeto.

Veja a documentação da API do Kubernetes para conferir os campos do campo metadata.
spec
HealthCheckPolicySpec

Spec é a especificação de HealthCheckPolicy.



targetRef
CustomTargetRef

TargetRef identifica um objeto de API ao qual a política será aplicada.

override
HealthCheckPolicyConfig
(Opcional)

Override define a configuração de política que deve substituir a configuração de política anexada abaixo do recurso de destino na hierarquia.

Observação: atualmente, não há suporte para substituição e resultará em um erro de validação. O suporte para substituição será adicionado em uma versão futura.

default
HealthCheckPolicyConfig
(Opcional)

Default define a configuração de política padrão para o recurso de destino.

status
HealthCheckPolicyStatus

Status define o estado atual de HealthCheckPolicy.

HealthCheckPolicyConditionReason (alias string)

HealthCheckPolicyConditionReason define o conjunto de motivos que explicam por que um determinado tipo de condição do HealthCheckPolicy é gerado.

Valor Descrição

"BackendTLSPolicyNotFound"

BackendTLSPolicyConditionNotFound é usado quando o BackendTLSPolicy não é encontrado para o serviço.

"Accepted"

HealthCheckPolicyReasonAccepted é usado para definir HealthCheckPolicyConditionReason como Accepted. Quando o HealthCheckPolicy especificado estiver configurado corretamente.

"InvalidHealthCheckPolicy"

HealthCheckPolicyReasonInvalid é o motivo usado quando a HealthCheckPolicy ’não é aceito.

"InvalidGroup"

HealthCheckPolicyReasonInvalidGroup é usado quando o grupo é inválido.

"InvalidKind"

HealthCheckPolicyReasonInvalidKind é usado quando o tipo/o grupo é inválido.

"InvalidName"

HealthCheckPolicyReasonInvalidName é usado quando o nome é inválido.

"InvalidPort"

HealthCheckPolicyReasonInvalidPort é usado quando a porta é inválida.

"InvalidService"

HealthCheckPolicyReasonInvalidService é usado quando Service é inválido.

"NoTargetReference"

HealthCheckPolicyReasonNoTargetReference é usado quando não’ há referência de destino.

"OverrideNotSupported"

HealthCheckPolicyReasonOverrideNotSupported é usado quando não’ há suporte para substituição.

"RefNotPermitted"

HealthCheckPolicyReasonRefNotPermitted é usado quando a referência não’ é permitida.

"SectionNamesNotPermitted"

HealthCheckPolicyReasonSectionNamesNotPermitted é usado quando os nomes de seção não’ são permitidos.

HealthCheckPolicyConditionType (alias string)

HealthCheckPolicyConditionType é um tipo de condição associada a uma HealthCheckPolicy. Esse tipo deve ser usado com o campo HealthCheckPolicyStatus.Conditions.

Valor Descrição

"Accepted"

HealthCheckPolicyConditionAccepted é usado para definir o HealthCheckPolicyConditionType como Accepted.

"ResolvedRefs"

HealthCheckPolicyConditionResolvedRefs é usado para definir a HealthCheckPolicyCondition como ResolvedRefs.

HealthCheckPolicyConfig

(Aparece em:HealthCheckPolicySpec)

HealthCheckPolicyConfig define o esquema para a especificação de verificação de HealthCheck.

Campo Descrição
interval
meta/v1.Duration do Kubernetes
(Opcional)

Interval é o número de segundos entre as verificações de HealthCheck.

timeout
meta/v1.Duration do Kubernetes
(Opcional)

Timeout é o número de segundos após o qual a verificação de HealthCheck é considerada com falha.

port
int32
(Opcional)

Port é a porta a ser usada para as verificações de HealthCheck.

unhealthyThreshold
int32
(Opcional)

UnhealthyThreshold é o número de verificações de HealthCheck com falha consecutivas.

healthyThreshold
int32
(Opcional)

HealthyThreshold é o número de verificações de HealthCheck bem-sucedidas consecutivas.

useTLS
bool
(Opcional)

UseTLS indica se a verificação de integridade deve impor o TLS. Por padrão, a verificação de integridade usará o mesmo protocolo que o serviço se a mesma porta for usada para verificação de integridade. Se a porta for diferente, a verificação de integridade será texto sem formatação.

http
HTTPSpecifiers
(Opcional)

HTTP define a especificação de restrição HTTP para a HealthCheck de um recurso de destino.

grpc
GRPCSpecifiers

GRPC configura um gRPC v1 HealthCheck (https://github.com/grpc/grpc-proto/blob/master/grpc/health/v1/health.proto) no recurso de destino.

HealthCheckPolicySpec

(Aparece em:HealthCheckPolicy)

HealthCheckPolicySpec define o estado desejado de HealthCheckPolicy.

Campo Descrição
targetRef
CustomTargetRef

TargetRef identifica um objeto de API ao qual a política será aplicada.

override
HealthCheckPolicyConfig
(Opcional)

Override define a configuração de política que deve substituir a configuração de política anexada abaixo do recurso de destino na hierarquia.

Observação: atualmente, não há suporte para substituição e resultará em um erro de validação. O suporte para substituição será adicionado em uma versão futura.

default
HealthCheckPolicyConfig
(Opcional)

Default define a configuração de política padrão para o recurso de destino.

HealthCheckPolicyStatus

(Aparece em:HealthCheckPolicy)

HealthCheckPolicyStatus define o estado observado de HealthCheckPolicy.

Campo Descrição
conditions
[]meta/v1.Condition do Kubernetes
(Opcional)

Conditions descreve as condições atuais de HealthCheckPolicy.

As implementações devem dar preferência a expressar as condições de HealthCheckPolicy por meio das constantes HealthCheckPolicyConditionType e HealthCheckPolicyConditionReason para que os operadores e as ferramentas possam convergir em um vocabulário comum para descrever o estado de HealthCheckPolicy.

Os tipos de condição conhecidos são:

  • “Aceito”

IngressBackendPort

(Aparece em:IngressBackendSettings)

IngressBackendPort descreve uma porta em um back-end. Apenas um nome/um número deve ser definido.

Campo Descrição
port
int32
(Opcional)

Port indica a porta do serviço de back-end

name
string
(Opcional)

Name precisa se referir a um nome em uma porta do serviço de back-end

protocol
Protocol

O protocolo deve ser “HTTP” ou “HTTPS”

IngressBackendSettingStatus

(Aparece em:IngressExtensionStatus)

IngressBackendSettingStatus descreve o estado de uma BackendSetting

Campo Descrição
service
string

Service identifica a BackendSetting descrita por esse status

validationErrors
[]string
(Opcional)

Erros são uma lista de erros relacionados a essa configuração

valid
bool

Valid indica que não há erros de validação presentes nesta BackendSetting

IngressBackendSettings

(Aparece em:IngressExtensionSpec)

IngressBackendSettings fornece opções de configuração estendida para um serviço de back-end

Campo Descrição
service
string

Service é o nome de um serviço de back-end ao qual esta configuração se aplica

ports
[]IngressBackendPort
(Opcional)

As portas podem ser usadas para indicar se o serviço de back-end está fazendo a escuta em HTTP ou HTTPS

trustedRootCertificate
string
(Opcional)

TrustedRootCertificate pode ser usado para fornecer um certificado para confiança do gateway ao se comunicar com o back-end em uma porta especificada como HTTPS

sessionAffinity
SessionAffinity
(Opcional)

SessionAffinity permite que as solicitações do cliente sejam fornecidas de maneira consistente ao mesmo back-end

timeouts
IngressTimeouts
(Opcional)

Timeouts define um conjunto de parâmetros de tempo limite a ser aplicado a uma Ingress

IngressExtension

IngressExtension é o esquema da API IngressExtension

Campo Descrição
metadata
meta/v1.ObjectMeta do Kubernetes
(Opcional)

Metadados do objeto.

Veja a documentação da API do Kubernetes para conferir os campos do campo metadata.
spec
IngressExtensionSpec

Spec é a especificação de IngressExtension.



rules
[]IngressRuleSetting
(Opcional)

Regras definem as regras por host

backendSettings
[]IngressBackendSettings
(Opcional)

BackendSettings define um conjunto de opções de configuração para back-ends de serviço de Ingress

status
IngressExtensionStatus

IngressExtensionConditionReason (alias string)

IngressExtensionConditionReason define o conjunto de motivos que explicam por que um determinado tipo de condição IngressExtension é gerado.

Valor Descrição

"Accepted"

IngressExtensionReasonAccepted é usado para definir IngressExtensionConditionAccepted como Accepted

"HasValidationErrors"

IngressExtensionReasonHasErrors indica que há alguns erros de validação

"NoValidationErrors"

IngressExtensionReasonNoErrors indica que não há erros de validação

"PartiallyAcceptedWithErrors"

IngressExtensionReasonPartiallyAccepted é usado para definir o IngressExtensionConditionAccepted como Aceito, mas com erros de validação não fatais

IngressExtensionConditionType (alias string)

IngressExtensionConditionType é um tipo de condição associada a uma IngressExtension. Esse tipo deve ser usado com o campo IngressExtensionStatus.Conditions.

Valor Descrição

"Accepted"

IngressExtensionConditionAccepted indica se o IngressExtension foi aceito (reconciliado) pelo controlador

"Errors"

IngressExtensionConditionErrors indica se há erros de validação ou de build na extensão

IngressExtensionSpec

(Aparece em:IngressExtension)

IngressExtensionSpec define a configuração desejada de IngressExtension

Campo Descrição
rules
[]IngressRuleSetting
(Opcional)

Regras definem as regras por host

backendSettings
[]IngressBackendSettings
(Opcional)

BackendSettings define um conjunto de opções de configuração para back-ends de serviço de Ingress

IngressExtensionStatus

(Aparece em:IngressExtension)

IngressExtensionStatus descreve o estado atual da IngressExtension

Campo Descrição
rules
[]IngressRuleStatus
(Opcional)

Regras têm informações de status detalhadas sobre cada regra

backendSettings
[]IngressBackendSettingStatus
(Opcional)

BackendSettings traz informações de status detalhadas sobre cada BackendSettings

conditions
[]meta/v1.Condition do Kubernetes
(Opcional)

Conditions descreve as condições atuais de IngressExtension. Os tipos de condição conhecidos são:

  • “Aceito”
  • “Erros”

IngressRewrites

(Aparece em:IngressRuleSetting)

IngressRewrites fornece as várias reescritas com suporte em uma regra

Campo Descrição
type
RewriteType

Type identifica o tipo de reescrita

requestHeaderModifier
HeaderFilter
(Opcional)

RequestHeaderModifier define um esquema que modifica os cabeçalhos de solicitação.

responseHeaderModifier
HeaderFilter
(Opcional)

RequestHeaderModifier define um esquema que modifica os cabeçalhos de resposta.

urlRewrite
URLRewriteFilter
(Opcional)

URLRewrite define um esquema que modifica uma solicitação durante o encaminhamento.

IngressRuleSetting

(Aparece em:IngressExtensionSpec)

IngressRuleSetting fornece opções de configuração para regras

Campo Descrição
host
string

Host é usado para correspondência com as regras de entrada com o mesmo nome de host, a fim de identificar quais regras afetam essas configurações

additionalHostnames
[]string
(Opcional)

AdditionalHostnames especifica nomes de host adicionais para escutar

rewrites
[]IngressRewrites
(Opcional)

Rewrites define as reescritas para a regra

requestRedirect
Redirect
(Opcional)

RequestRedirect define o comportamento de redirecionamento para a regra

IngressRuleStatus

(Aparece em:IngressExtensionStatus)

IngressRuleStatus descreve o estado de uma regra

Campo Descrição
host
string

Host identifica a regra descrita por esse status

validationErrors
[]string
(Opcional)

Erros são uma lista de erros relacionados a essa configuração

valid
bool
(Opcional)

Valid indica que não há erros de validação presentes nesta regra

IngressTimeouts

(Aparece em:IngressBackendSettings)

IngressTimeouts pode ser usado para configurar as propriedades de tempo limite para uma Ingress

Campo Descrição
requestTimeout
meta/v1.Duration do Kubernetes
(Opcional)

RequestTimeout define o tempo limite usado pelo balanceador de carga ao encaminhar solicitações para um serviço de back-end

MTLSPolicyVerify

(Aparece em:FrontendTLSPolicyConfig)

MTLSPolicyVerify define o esquema para a API MTLSPolicyVerify.

Campo Descrição
caCertificateRef
.SecretObjectReference da API do Gateway

CaCertificateRef é o Certificado de Autoridade de Certificação usado para verificar o certificado par.

subjectAltNames
[]string
(Opcional)

SubjectAltNames é a lista de nomes alternativos de assunto usados para verificar o certificado de par.

PolicyType

(Aparece em:FrontendTLSPolicyConfig)

PolicyType é o tipo da política.

Campo Descrição
name
FrontendTLSPolicyTypeName

Name é o nome da política.

type
FrontendTLSPolicyType

PredefinedFrontendTLSPolicyType é o tipo da política TLS de Front-end predefinida.

PortNumber (alias int32)

(Aparece em:Redirect)

PortNumber define uma porta de rede.

PreciseHostname (alias string)

(Aparece em:Redirect, URLRewriteFilter)

PreciseHostname é o nome de domínio totalmente qualificado de um host de rede. Isso corresponde à definição RFC 1123 de um nome de host, com a exceção notável de que endereços IP numéricos não são permitidos.

De acordo com o RFC1035 e o RFC1123, um rótulo deve consistir em caracteres alfanuméricos minúsculos ou ‘-’, e deve começar e terminar com um caractere alfanumérico. Nenhuma outra pontuação é permitida.

Protocol (alias string)

(Aparece em:IngressBackendPort)

Protocol define o protocolo usado para determinadas propriedades. Os valores válidos de Protocol são:

  • HTTP
  • HTTPS
  • TCP
Valor Descrição

"HTTP"

ProtocolHTTP implica que o serviço usa HTTP.

"HTTPS"

ProtocolHTTPS implica que o serviço usa HTTPS.

"TCP"

ProtocolTCP implica que o serviço usa TCP simples.

Redirecionar

(Aparece em:IngressRuleSetting)

Redirect define um filtro que redireciona uma solicitação. Isso NÃO DEVE ser usado na mesma regra que também tem um URLRewriteFilter.

Campo Descrição
scheme
string
(Opcional)

Scheme é o esquema a ser usado no valor do cabeçalho Location na resposta. Quando vazio, o esquema da solicitação é usado.

hostname
PreciseHostname
(Opcional)

Hostname é o nome do host a ser usado no valor do cabeçalho Location na resposta. Quando vazio, o nome do host no cabeçalho Host da solicitação é usado.

path
HTTPPathModifier
(Opcional)

Path define os parâmetros usados para modificar o caminho da solicitação de entrada. Em seguida, o caminho modificado é usado para construir o cabeçalho Location. Quando vazio, o caminho da solicitação é usado no estado em que se encontra.

port
PortNumber
(Opcional)

Port é a porta a ser usada no valor do cabeçalho Location na resposta.

Se nenhuma porta for especificada, a porta de redirecionamento DEVERÁ ser derivada por meio das seguintes regras:

  • Se o esquema de redirecionamento não estiver vazio, a porta de redirecionamento DEVERÁ ser a porta conhecida associada ao esquema de redirecionamento. Especificamente, “http” para a porta 80 e “https” para a porta 443. Se o esquema de redirecionamento não tiver uma porta conhecida, a porta de ouvinte do gateway DEVERÁ ser usada.
  • Se o esquema de redirecionamento estiver vazio, a porta de redirecionamento DEVERÁ ser a porta do ouvinte do Gateway.

As implementações NÃO DEVEM adicionar o número da porta ao cabeçalho ‘Location’ nos seguintes casos:

  • Um cabeçalho Localização que usa HTTP (quer isso seja determinado pelo protocolo Ouvinte ou pelo campo Esquema) e usa a porta 80.
  • Um cabeçalho Localização que usa HTTPS (quer isso seja determinado pelo protocolo Ouvinte ou pelo campo Esquema) e usa a porta 443.
statusCode
int
(Opcional)

StatusCode é o código de status HTTP a ser usado na resposta.

Valores podem ser adicionados a essa enumeração, as implementações devem garantir que valores desconhecidos não causem uma falha.

RewriteType (alias string)

(Aparece em:IngressRewrites)

RewriteType identifica o tipo de reescrita

Valor Descrição

"RequestHeaderModifier"

RequestHeaderModifier pode ser usado para adicionar ou remover um cabeçalho HTTP de uma solicitação HTTP antes que ela seja enviada ao destino upstream.

"ResponseHeaderModifier"

ResponseHeaderModifier pode ser usado para adicionar ou remover um cabeçalho HTTP de uma resposta HTTP antes que ela seja enviada ao cliente.

"URLRewrite"

URLRewrite pode ser usado para modificar uma solicitação durante o encaminhamento.

RoutePolicy

RoutePolicy é o esquema da API RoutePolicy.

Campo Descrição
metadata
meta/v1.ObjectMeta do Kubernetes
(Opcional)

Metadados do objeto.

Veja a documentação da API do Kubernetes para conferir os campos do campo metadata.
spec
RoutePolicySpec

Spec é a especificação de RoutePolicy.



targetRef
CustomTargetRef

TargetRef identifica um objeto de API ao qual a política será aplicada.

override
RoutePolicyConfig
(Opcional)

Override define a configuração de política que deve substituir a configuração de política anexada abaixo do recurso de destino na hierarquia.

Observação: atualmente, não há suporte para substituição e resulta em um erro de validação. O suporte para substituição será adicionado em uma versão futura.

default
RoutePolicyConfig
(Opcional)

Default define a configuração de política padrão para o recurso de destino.

status
RoutePolicyStatus

Status define o estado atual de RoutePolicy.

RoutePolicyConditionReason (alias string)

RoutePolicyConditionReason define o conjunto de motivos que explicam por que um determinado tipo de condição de RoutePolicy é gerado.

Valor Descrição

"Accepted"

RoutePolicyReasonAccepted é usado para definir o RoutePolicyConditionReason como Accepted quando a RoutePolicy especificada é configurada corretamente

"InvalidRoutePolicy"

RoutePolicyReasonInvalid é o motivo usado quando a RoutePolicy não é Accepted

"InvalidGRPCRoute"

RoutePolicyReasonInvalidGRPCRoute é usado quando o GRPCRoute é inválido

"InvalidGroup"

RoutePolicyReasonInvalidGroup é usado quando o grupo é inválido

"InvalidHTTPRoute"

RoutePolicyReasonInvalidHTTPRoute é usado quando a HTTPRoute é inválida

"InvalidKind"

RoutePolicyReasonInvalidKind é usado quando o tipo/o grupo é inválido

"InvalidName"

RoutePolicyReasonInvalidName é usado quando o nome é inválido

"NoTargetReference"

RoutePolicyReasonNoTargetReference é usado quando não há referência de destino

"OverrideNotSupported"

RoutePolicyReasonOverrideNotSupported é usado quando não há suporte para substituição

"RefNotPermitted"

RoutePolicyReasonRefNotPermitted é usado quando a referência não é permitida

"SectionNamesNotPermitted"

RoutePolicyReasonSectionNamesNotPermitted é usado quando os nomes de seção não são permitidos

RoutePolicyConditionType (alias string)

RoutePolicyConditionType é um tipo de condição associada a uma RoutePolicy. Esse tipo deve ser usado com o campo RoutePolicyStatus.Conditions.

Valor Descrição

"Accepted"

RoutePolicyConditionAccepted é usado para definir RoutePolicyConditionType como Accepted

"ResolvedRefs"

RoutePolicyConditionResolvedRefs é usado para definir RoutePolicyCondition como ResolvedRefs

RoutePolicyConfig

(Aparece em:RoutePolicySpec)

RoutePolicyConfig define o esquema para a especificação de RoutePolicy. Isso permite a especificação dos seguintes atributos: * Tempos limite * Afinidade de sessão

Campo Descrição
timeouts
RouteTimeouts
(Opcional)

Tempo limite dos tempos limite personalizados para o recurso de destino.

sessionAffinity
SessionAffinity

SessionAffinity define o esquema para a especificação de Afinidade de sessão

RoutePolicySpec

(Aparece em:RoutePolicy)

RoutePolicySpec define o estado desejado de RoutePolicy.

Campo Descrição
targetRef
CustomTargetRef

TargetRef identifica um objeto de API ao qual a política será aplicada.

override
RoutePolicyConfig
(Opcional)

Override define a configuração de política que deve substituir a configuração de política anexada abaixo do recurso de destino na hierarquia.

Observação: atualmente, não há suporte para substituição e resulta em um erro de validação. O suporte para substituição será adicionado em uma versão futura.

default
RoutePolicyConfig
(Opcional)

Default define a configuração de política padrão para o recurso de destino.

RoutePolicyStatus

(Aparece em:RoutePolicy)

RoutePolicyStatus define o estado observado de RoutePolicy.

Campo Descrição
conditions
[]meta/v1.Condition do Kubernetes
(Opcional)

Conditions descreve as condições atuais de RoutePolicy.

As implementações devem dar preferência a expressar as condições de RoutePolicy por meio das constantes RoutePolicyConditionType e RoutePolicyConditionReason para que os operadores e as ferramentas possam convergir em um vocabulário comum para descrever o estado de RoutePolicy.

Os tipos de condição conhecidos são:

  • “Aceito”

RouteTimeouts

(Aparece em:RoutePolicyConfig)

RouteTimeouts define o esquema para a especificação de Tempos limite.

Campo Descrição
routeTimeout
meta/v1.Duration do Kubernetes
(Opcional)

RouteTimeout é o tempo limite para a rota.

SessionAffinity

(Aparece em:IngressBackendSettings, RoutePolicyConfig)

SessionAffinity define o esquema para a especificação de Afinidade de sessão.

Campo Descrição
affinityType
AffinityType
cookieName
string
(Opcional)
cookieDuration
meta/v1.Duration do Kubernetes
(Opcional)

StatusCodes

(Aparece em:HTTPMatch)

StatusCodes define as correspondências de código de status HTTP a serem usados para as verificações de HealthCheck.

Campo Descrição
start
int32
(Opcional)

Start define o início do intervalo de códigos de status a ser usado para as verificações de HealthCheck. Isso é inclusivo.

end
int32
(Opcional)

End define o fim do intervalo de códigos de status a serem usados para as verificações de HealthCheck. Isso é inclusivo.

URLRewriteFilter

(Aparece em:IngressRewrites)

URLRewriteFilter define um filtro que modifica uma solicitação durante o encaminhamento. No máximo, um desses filtros pode ser usado em uma regra. Isso NÃO DEVE ser usado na mesma regra com um sslRedirect.

Campo Descrição
hostname
PreciseHostname
(Opcional)

Hostname é o valor a ser usado para substituir o valor do cabeçalho Host durante o encaminhamento.

path
HTTPPathModifier
(Opcional)

Path define uma reescrita de caminho.