kubernetes - 具有不同 DNS 的多租户设置的任何解决方案?
问题描述
我已经在我的 Kubernetes 中设置了我的前端集群并公开为frontend.loaner.com
,我想指向这两者的 DNS 记录johndoe.loaner.com
,janedoe.loaner.com
以查看frontend.loaner.com
.
是否可以仅将两个 DNS 指向一个正在运行的服务器并且仍然可以正常使用主机名?
我阅读了有关 CNAME 的信息,但它会将我重定向到frontend.loaner.com
解决方案
您可以使用 Kubernetes Ingress来做到这一点。基本上,是这样的:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: test-ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: frontend.loaner.com
http:
paths:
- path: /
backend:
serviceName: backend1
servicePort: 80
- host: johndoe.loaner.com
http:
paths:
- path: /
backend:
serviceName: backend2
servicePort: 80
- host: janedoe.loaner.com
http:
paths:
- path: /
backend:
serviceName: backend3
servicePort: 80
上述 Ingress 资源假设您在集群中使用Nginx Ingress Controller。
推荐阅读
- angular - 从 Angular 请求时的 HttpErrorResponse
- mysql - sql 存储过程 Quotes()
- reactjs - 如何使用异步功能并使用 React Native 正确导出?
- .net-core - NSwag 可以在具有传统路由的自托管 .net 核心 API 中使用吗?
- r - R:过滤出现在较小向量中的大向量元素
- flutter - Flutter 可以在 kiosk 模式下制作 Application 吗?
- excel - 使一个工作簿中的范围等于另一个工作簿中的相同大小范围
- vb.net - 应用程序在系统托盘中时显示工具提示?
- mysql - 根据查询结果重新分配号码范围
- typescript - 将 tsconfig 设置为忽略“类型 'bar' 上不存在属性 'foo'。” 但仅适用于特定变量