设置:AKS 上具有 nginx-kubernetes 入口的 Kubernetes 集群。 Azure 应用程序网关将具有 SSL 证书的域路由到 nginx-kubernetes。
在 Kubernetes 中提供一切服务都没有问题。
现在,我将静态内容移至 Azure Blob 存储。有一个选项可以使用自定义域,该选项工作正常,但不允许使用自定义 SSL 证书。唯一可能的方法是设置 CDN 并使用 Verizon 计划来使用自定义 SSL 证书。
我更愿意将所有路由保留在入口配置中,因为某些子路由定向到不同的 Kubernetes 服务。有没有办法在 nginx-kubernetes 中屏蔽和重写外部 blob 存储 url 的路径?或者是否有任何其他可用选项可以通过 ingress 代理外部 url?
我不介意为资源提供直接的 blob 存储 URL,但主入口点应使用自定义域。
最佳答案
不完全是问题的答案,而是问题的答案。不幸的是,这没有很好的记录。解决方案是创建一个类型为“ExternalName”的服务。根据https://akomljen.com/kubernetes-tips-part-1/该服务应如下所示:
kind: Service
apiVersion: v1
metadata:
name: external-service
namespace: default
spec:
type: ExternalName
externalName: full.qualified.domain.name
我刚刚尝试了一下,效果非常好。
关于azure - 有没有办法从 nginx-kubernetes 入口提供外部 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51443361/