首页 > 解决方案 > 没有通过 CI/DC 部署到 Azure 开发空间的 DNS/入口

问题描述

使用 Azure Dev Spaces 进行试验后,azds ip从 Visual Studio 运行可以正常工作 - 生成公共 URL(格式为 http://xxxdemoappcore.rxxxxxxn.weu.azds.io/)并且还创建了到 localhost 的隧道。

我不想在 CI/CD 管道中使用 Azure Dev Spaces。我刚刚按照本教程通过 Azure Pipelines CI/CD 和 Azure Dev Spaces 设置了 .NET 核心 Web 应用程序的部署。

将 CI/CD 与 Azure Dev Spaces 一起使用 https://docs.microsoft.com/en-us/azure/dev-spaces/how-to/setup-cicd

在 Release 任务中进行 helm upgrade 后,会生成以下输出:

2019-03-03T10:28:41.8525110Z ##[section]Starting: helm upgrade xxxdemoappcore
2019-03-03T10:28:41.8531800Z ==============================================================================
2019-03-03T10:28:41.8531952Z Task         : Package and deploy Helm charts
2019-03-03T10:28:41.8532015Z Description  : Deploy, configure, update your Kubernetes cluster in Azure Container Service by running helm commands.
2019-03-03T10:28:41.8532120Z Version      : 0.138.15
2019-03-03T10:28:41.8532164Z Author       : Microsoft Corporation
2019-03-03T10:28:41.8532422Z Help         : [More Information](https://go.microsoft.com/fwlink/?linkid=851275)
2019-03-03T10:28:41.8532483Z ==============================================================================
2019-03-03T10:28:44.0765885Z [command]/opt/hostedtoolcache/helm/2.13.0/x64/linux-amd64/helm upgrade --namespace dev-spaces --install --force --set image.repository=xxxdemocontainers.azurecr.io/xxxdemoappcore,image.tag=4518,ingress.hosts[0]=dev-spaces.xxxdemoappcore.b0ada56739xxxxc79d0a.westeurope.aksapp.io --wait xxxdemoappcore-dev-spaces /home/vsts/work/r1/a/drop/xxxdemoappcore/chart
2019-03-03T10:28:47.3563764Z Release "xxxdemoappcore-dev-spaces" has been upgraded. Happy Helming!
2019-03-03T10:28:47.3564495Z LAST DEPLOYED: Sun Mar  3 10:28:43 2019
2019-03-03T10:28:47.3565059Z NAMESPACE: dev-spaces
2019-03-03T10:28:47.3565364Z STATUS: DEPLOYED
2019-03-03T10:28:47.3565552Z 
2019-03-03T10:28:47.3565805Z RESOURCES:
2019-03-03T10:28:47.3566010Z ==> v1/Pod(related)
2019-03-03T10:28:47.3566261Z NAME                                 READY  STATUS   RESTARTS  AGE
2019-03-03T10:28:47.3567019Z xxxdemoappcore-66c677db44-c2x59  2/2    Running  0         77m
2019-03-03T10:28:47.3567230Z 
2019-03-03T10:28:47.3567451Z ==> v1/Service
2019-03-03T10:28:47.3567816Z NAME                TYPE       CLUSTER-IP   EXTERNAL-IP  PORT(S)  AGE
2019-03-03T10:28:47.3568098Z xxxdemoappcoreClusterIP  10.0.91.148  <none>       80/TCP   152m
2019-03-03T10:28:47.3568252Z 
2019-03-03T10:28:47.3568443Z ==> v1beta1/Ingress
2019-03-03T10:28:47.3568645Z NAME                HOSTS                                                                    ADDRESS  PORTS  AGE
2019-03-03T10:28:47.3569110Z xxxdemoappcoredev-spaces.xxxdemowebappcore.b0ada56739xxxxc79d0a.westeurope.aksapp.io  80       152m
2019-03-03T10:28:47.3569326Z 
2019-03-03T10:28:47.3569494Z ==> v1beta2/Deployment
2019-03-03T10:28:47.3569878Z NAME                READY  UP-TO-DATE  AVAILABLE  AGE
2019-03-03T10:28:47.3570104Z xxxdemoappcore1/1    1           1          152m
2019-03-03T10:28:47.3570298Z 
2019-03-03T10:28:47.3570439Z 
2019-03-03T10:28:47.3570594Z NOTES:
2019-03-03T10:28:47.3570804Z 1. Get the application URL by running these commands:
2019-03-03T10:28:47.3571184Z   http://dev-spaces.xxxdemoappcore.b0ada56739xxxxc79d0a.westeurope.aksapp.io/
2019-03-03T10:28:47.3571445Z 
2019-03-03T10:28:47.3597040Z ##[section]Finishing: helm upgrade xxxdemoappcore

URL http://dev-spaces.xxxdemoappcore.b0ada56739xxxxc79d0a.westeurope.aksapp.io/无法解析 DNS。

是否可以通过上面的输出或任何其他日志来确定为什么无法解析公共 URL?

为什么从 CI/CD 生成的 URL 与azds up从本地生成的 URL 不同?

标签: kubernetesazure-devopskubernetes-helmazure-aks

解决方案


来自官方文档:

运行 prep 命令时,您可以选择指定 --public 标志。此标志告诉控制器为此服务创建一个可访问 Internet 的端点

azds up基于默认的 azds.yaml 文件模板扩展 DNS 名称(Ingress.hosts 的值),如果是 Windows,可以在此处找到:

"C:\Program Files\Microsoft SDKs\Azure\Azure Dev Spaces CLI (Preview)\InitTemplates\azds.yaml.generic"

它仍然可以直接在您工作区的 azds.yaml 文件中进行修改。


推荐阅读