配置文件
API7 Ingress Controller 使用配置文件 config.yaml 定义核心设置,例如日志级别、领导者选举行为、指标端点和同步间隔。
配置在 Kubernetes ConfigMap 中定义,并在运行时作为文件挂载到 Controller Pod 中。建议通过 Helm 管理这些配置,以便于更新和版本控制。如果直接修改 ConfigMap,必须重启 Controller Deployment 才能使更改生效。
以下是所有可用的配置选项,包括它们的默认值和用法:
config.yaml
log_level: "info" # APISIX Ingress Controller 的日志级别。
# 默认值为 "info"。
controller_name: apisix.apache.org/apisix-ingress-controller # APISIX Ingress Controller 的控制器名称,
# 用于在 GatewayClass 中标识该控制器。
# 默认值为 "apisix.apache.org/apisix-ingress-controller"。
leader_election_id: "apisix-ingress-controller-leader" # APISIX Ingress Controller 的领导者选举 ID。
# 默认值为 "apisix-ingress-controller-leader"。
leader_election:
lease_duration: 30s # lease_duration 是非领导者候选人在观察到领导权续期后,
# 尝试获取领导者选 举的领导权之前将等待的持续时间。
renew_deadline: 20s # renew_deadline 是现任控制器在放弃之前,
# 重试刷新领导权的秒数。
retry_period: 2s # retry_period 是现任控制器在控制器操作重试之间,
# 将等待的秒数。
disable: false # 是否禁用领导者选举。
metrics_addr: ":8080" # 指标端点绑定的地址。
# 默认值为 ":8080"。
enable_server: false # 调试 API 位于此服务器之后,出于安全原因默认禁用。
server_addr: "127.0.0.1:9092" # 可用端点:/debug 可用于调试将要与数据面同步的已转换 ADC 配置的内存状态。
enable_http2: false # 是否为服务器启用 HTTP/2。
# 默认值为 false。
probe_addr: ":8081" # 探针端点绑定的地址。
# 默认值为 ":8081"