我使用内部入口 Nginx 创建了 AKS。这在集群中如下所示。
然后我创建了 Azure 私有 DNS 服务。在 Azure 私有 DNS 服务中,我创建了一个“记录集”,例如
块引用
从技术上讲,我应该能够使用promotion.mydomain.com 访问LoadBalancer External ip(例如)。对此,当我在浏览器中点击http://promotion.mydomain.com时出现“502 Bad Gateway”错误。有什么建议吗?
我使用内部入口 Nginx 创建了 AKS。这在集群中如下所示。
然后我创建了 Azure 私有 DNS 服务。在 Azure 私有 DNS 服务中,我创建了一个“记录集”,例如
块引用
从技术上讲,我应该能够使用promotion.mydomain.com 访问LoadBalancer External ip(例如)。对此,当我在浏览器中点击http://promotion.mydomain.com时出现“502 Bad Gateway”错误。有什么建议吗?
我遇到了同样的问题,并且最近能够解决它。
我创建了另一个 Ingress,但在所需的命名空间(我的是默认命名空间)中,定义如下:
(我已启用 tls 但您可以删除该部分)
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: nginx
name: my-custom-ingress
spec:
tls:
- hosts:
- foo.mydomain.com
secretName: my-tls-secret
rules:
- host: foo.mydomain.com
http:
paths:
- path: /
backend:
serviceName: my-foo-app-service-nodeport
servicePort: 4444
首先找到你的 nginx 入口的外部 IP 并牢记:
kubectl get svc --namespace ingress-basic
然后在 Azure DNS 区域中,您可以将域附加到 Azure 资源:
MC_...
由 AKS 群集创建的资源组。现在它应该可以工作了。
我看到您的目的是使用内部 Ingress Nginx 创建 AKS 并使用自定义 DNS。我看到你的 Ingress 外部 IP 是 10.240.0.42。它似乎是您 AKS 节点所在的子网的私有 IP。
所以我认为您需要创建一个 Azure 应用程序网关或 Azure 负载均衡器来将您的请求从 Internet 路由到您的内部 Ingress Nginx 接口。并且A记录也需要更改,您需要将IP更改为您从Azure应用程序网关和Azure负载均衡器中选择的一个的公共IP。我想您知道您需要在 DNS 所在的 DNS 服务器中更新您的自定义 DNS 设置。
当所有的事情都做完了。请求路由路径将如下所示: