自定义资源定义 API 参考
本文档提供了 APISIX Ingress Controller 自定义资源定义 (CRD) 的 API 资源描述。
包
apisix.apache.org/v1alpha1
包 v1alpha1 包含 apisix.apache.org v1alpha1 API 组的 API Schema 定义。
BackendTrafficPolicy
BackendTrafficPolicy 定义了应用于后端服务的流量处理策略配置。
| 字段 | 描述 |
|---|---|
apiVersion string | apisix.apache.org/v1alpha1 |
kind string | BackendTrafficPolicy |
metadata ObjectMeta | 有关 metadata 字段的详细信息,请参阅 Kubernetes API 文档。 |
spec BackendTrafficPolicySpec | BackendTrafficPolicySpec 定义了应用于后端服务的流量处理策略,例如负载均衡策略、连接设置和故障转移行为。 |
Consumer
Consumer 定义了消费者的配置。
| 字段 | 描述 |
|---|---|
apiVersion string | apisix.apache.org/v1alpha1 |
kind string | Consumer |
metadata ObjectMeta | 有关 metadata 字段的详细信息,请参阅 Kubernetes API 文档。 |
spec ConsumerSpec | ConsumerSpec 定义了消费者的配置,包括消费者名称、认证凭证和插件设置。 |
GatewayProxy
GatewayProxy 定义了用于将流量路由到服务的网关代理实例的配置。
| 字段 | 描述 |
|---|---|
apiVersion string | apisix.apache.org/v1alpha1 |
kind string | GatewayProxy |
metadata ObjectMeta | 有关 metadata 字段的详细信息,请参阅 Kubernetes API 文档。 |
spec GatewayProxySpec | GatewayProxySpec 定义了网关代理实例的配置,包括网络设置、全局插件和插件元数据。 |
HTTPRoutePolicy
HTTPRoutePolicy 定义了流量策略的配置。
| 字段 | 描述 |
|---|---|
apiVersion string | apisix.apache.org/v1alpha1 |
kind string | HTTPRoutePolicy |
metadata ObjectMeta | 有关 metadata 字段的详细信息,请参阅 Kubernetes API 文档。 |
spec HTTPRoutePolicySpec | HTTPRoutePolicySpec 定义了 HTTPRoutePolicy 的配置,包括路由优先级和请求匹配条件。 |
PluginConfig
PluginConfig 定义了插件配置。
| 字段 | 描述 |
|---|---|
apiVersion string | apisix.apache.org/v1alpha1 |
kind string | PluginConfig |
metadata ObjectMeta | 有关 metadata 字段的详细信息,请参阅 Kubernetes API 文档。 |
spec PluginConfigSpec | PluginConfigSpec 定义了 PluginConfig 的期望状态,其中指定了插件及其配置。 |
类型
本节描述 CRD 使用的类型。
ActiveHealthCheck
ActiveHealthCheck 定义了主动上游健康检查配置。
| 字段 | 描述 |
|---|---|
type string | Type 是健康检查类型。可以是 http、https 或 tcp。 |
timeout Duration | Timeout 设置健康检查超时时间。 |
concurrency integer | Concurrency 设置同时检查的目标数量。 |
host string | Host 设置健康检查请求中使用的上游主机。 |
port integer | Port 设置要探测的上游节点端口。 |
httpPath string | HTTPPath 设置 HTTP 探测请求路径。 |
strictTLS boolean | StrictTLS 控制是否强制校验 TLS 证书。 |
requestHeaders string 数组 | RequestHeaders 设置探测请求附加的 HTTP 请求头。 |
healthy ActiveHealthCheckHealthy | Healthy 配置将节点标记为健康的阈值。 |
unhealthy ActiveHealthCheckUnhealthy | Unhealthy 配置将节点标记为不健康的阈值。 |
出现在:
ActiveHealthCheckHealthy
ActiveHealthCheckHealthy 定义了主动将上游节点标记为健康的阈值。
| 字段 | 描述 |
|---|---|
httpCodes integer 数组 | HTTPCodes 是被视为健康的 HTTP 状态码列表。 |
successes integer | Successes 是将节点标记为健康所需的连续成功响应次数。 |
interval Duration | Interval 定义健康检查探测之间的时间间隔,最小值为 1s。 |
出现在:
ActiveHealthCheckUnhealthy
ActiveHealthCheckUnhealthy 定义了主动将上游节点标记为不健康的阈值。
| 字段 | 描述 |
|---|---|
httpCodes integer 数组 | HTTPCodes 是被视为不健康的 HTTP 状态码列表。 |
httpFailures integer | HTTPFailures 是将节点标记为不健康所需的 HTTP 失败次数。 |
tcpFailures integer | TCPFailures 是将节点标记为不健康所需的 TCP 失败次数。 |
timeouts integer | Timeouts 是将节点标记为不健康所需的超时次数。 |
interval Duration | Interval 定义健康检查探测之间的时间间隔,最小值为 1s。 |
出现在:
AdminKeyAuth
AdminKeyAuth 定义了管理员密钥认证配置。
| 字段 | 描述 |
|---|---|
value string | Value 显式设置管理员密钥值(不建议用于生产环境)。 |
valueFrom AdminKeyValueFrom | ValueFrom 指定管理员密钥的来源。 |
出现在:
AdminKeyValueFrom
AdminKeyValueFrom 定义了管理员密钥的来源。
| 字段 | 描述 |
|---|---|
secretKeyRef SecretKeySelector | SecretKeyRef 引用 Secret 中的一个键。 |
出现在:
AuthType
基础类型 (Base type): string
AuthType 定义了认证的类型。
出现在:
BackendPolicyTargetReferenceWithSectionName
基础类型 (Base type): LocalPolicyTargetReferenceWithSectionName
| 字段 | 描述 |
|---|---|
group Group | Group 是目标资源的 API 组。 |
kind Kind | Kind 是目标资源的种类。 |
name ObjectName | Name 是目标资源的名称。 |
sectionName SectionName | SectionName 是目标资源内某一部分的名称。如果未指定,此 targetRef 将针对整个资源。在以下资源中,SectionName 按如下方式解释: • Gateway:监听器名称 • HTTPRoute:HTTPRouteRule 名称 • Service:端口名称 如果指定了 SectionName,但在目标对象上不存在,则策略必须附加失败,并且策略实现应在策略的状态中记录 ResolvedRefs 或类似的条件。 |
出现在:
BackendTrafficPolicySpec
| 字段 |
|---|