7.5. 设置 DNS 策略


步骤

  1. 为您的网关设置 DNSPolicy,如下所示:

    kubectl apply -f - <<EOF
    apiVersion: kuadrant.io/v1
    kind: DNSPolicy
    metadata:
      name: ${KUADRANT_GATEWAY_NAME}-dnspolicy
      namespace: ${KUADRANT_GATEWAY_NS}
    spec:
      healthCheck:
        failureThreshold: 3
        interval: 1m
        path: /health
      loadBalancing:
        defaultGeo: true
        geo: GEO-NA
        weight: 120
      targetRef:
        name: ${KUADRANT_GATEWAY_NAME}
        group: gateway.networking.k8s.io
        kind: Gateway
      providerRefs:
      - name: aws-credentials # Secret created earlier
    EOF
    Copy to Clipboard Toggle word wrap
    注意

    DNSPolicy 将使用您之前定义的 DNS Provider Secret。本例中的地理位置是 GEO-NA,但您可以更改它以符合您的要求。

  2. 检查您的 DNSPolicy 的状态是否为 AcceptedEnforced,如下所示:

    kubectl get dnspolicy ${KUADRANT_GATEWAY_NAME}-dnspolicy -n ${KUADRANT_GATEWAY_NS} -o=jsonpath='{.status.conditions[?(@.type=="Accepted")].message}{"\n"}{.status.conditions[?(@.type=="Enforced")].message}'
    Copy to Clipboard Toggle word wrap

    这可能需要几分钟时间。

  3. 检查 DNSPolicy 上启用的 DNS 健康检查状态,如下所示:

    kubectl get dnspolicy ${KUADRANT_GATEWAY_NAME}-dnspolicy -n ${KUADRANT_GATEWAY_NS} -
    Copy to Clipboard Toggle word wrap

    这些健康检查会根据定义的配置将发布的端点标记为健康或不健康。不健康时,如果端点尚未发布到 DNS 供应商,则不会发布端点。只有在端点是多值 A 记录的一部分时,端点才会被取消发布,且在所有情况下都可以在 DNSPolicy 状态中观察到。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat