如何在ingress nginx GKE上使用内部控制器



大家好,我正在部署ingress nginx版本4.2.5,我遇到了一个问题,我阅读了文档,他们说可以让内部和外部控制器都使用相同的ingressClass,我正在使用pulumi在GCP上部署,但也尝试过使用helm,结果相同https://artifacthub.io/packages/helm/ingress-nginx/ingress-nginx我验证了我有两个控制器,你可以在这里看到

NAME                                     TYPE           CLUSTER-IP       EXTERNAL-IP     PORT(S)                      AGE
ingress-nginx-test-controller            LoadBalancer   10.132.134.99    34.138.195.84   80:30345/TCP,443:31306/TCP   103s
ingress-nginx-test-controller-internal   LoadBalancer   10.132.133.193   10.128.0.131    80:30851/TCP,443:30081/TCP   104s
ingress-nginx-test-controller-metrics    ClusterIP      10.132.193.30    <none>          10254/TCP                    105s

但是当我创建一个入口并将IngressClass设置为nginxinternal时,它会给我以下错误

"Ignoring ingress because of error while validating ingress class" ingress="XXXX/XXXX" error="no object matching key "nginx-internal" in local store"

如果Nginx入口内部ingressclass不存在,您可以使用创建一个

apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
name: internal-nginx
spec:
controller: k8s.io/internal-ingress-nginx

确保您指向的是正确的控制器。

此外,您可以将相同的ingressclass用于入口

在这里你可以参考官方文档:https://kubernetes.github.io/ingress-nginx/user-guide/multiple-ingress/

相关内容

  • 没有找到相关文章

最新更新