我正在尝试使用HTTP应用程序路由公开应用程序。我启用了http_application_routing插件,这是此配置的结果:
"addonProfiles": {
"httpapplicationrouting": {
"config": {
"HTTPApplicationRoutingZoneName": "****.northeurope.aksapp.io",
"httpapplicationroutingzonename": "****.northeurope.aksapp.io"
},
"enabled": true
}
}
我创建了入口资源:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: addon-http-application-routing
labels:
name: axon-azure
name: axon-ing-azure
spec:
rules:
- host: axon.****.northeurope.aksapp.io
http:
paths:
- backend:
serviceName: axon-svc
servicePort: 8024
path: /
但是当我测试它时不起作用:
curl axon.****.northeurope.aksapp.io
curl: (6) Could not resolve host: axon.****.northeurope.aksapp.io
在AKS文档之后,我正在考虑DNS问题,因为使用此命令不会显示DNS区域名称(但我不知道为什么):
az aks show --resource-group myResourceGroup --name myAKSCluster --query addonProfiles.httpApplicationRouting.config.HTTPApplicationRoutingZoneName -o table
在这种情况下有什么问题的想法吗?
答案 0 :(得分:0)
对于AKS中的HTTP应用程序路由,使用CLI命令启用路由功能时:
az aks enable-addons --resource-group your_resource_group --name your_akscluster --addons http_application_routing
如果没有错误,则可以通过CLI命令获得Azure为您创建的DNS区域:
az aks show --resource-group your_resource_group --name your_akscluster --query addonProfiles.httpApplicationRouting.config.HTTPApplicationRoutingZoneName -o table
在以上两个CLI命令中,您需要使用自己的组和AKS更改your_resource_group
和your_akscluster
。
在使用yaml文件创建入口之后,您应该等待很长时间,以便Azure在DNS区域中为您创建记录。可能需要5分钟。您可以查看记录是否已在DNS区域中。
如果您需要HTTP路由,建议您按照Create an ingress controller in Azure Kubernetes Service (AKS)或Use a static IP中的步骤自行创建。这样,您将确切地知道您执行了哪个步骤或出错了。