apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress
spec:
rules:
- host: api.mydomain.com
http:
paths:
- backend:
serviceName: api-service
servicePort: 80
- host: console.mydomain.com
http:
paths:
- backend:
serviceName: console-service
servicePort: 80
以下是每个部署的潜在工作流:
feature.api.mydomain.com
指定serviceName:feature-api-service
但是枚举和维护所有的子域->服务映射将会因为分解部署而变得混乱,并且会创建大量的GCE后端(默认配额是5...)所以不太理想。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress
spec:
rules:
- host: *.api.mydomain.com
http:
paths:
- backend:
serviceName: {value of *}-api-service
servicePort: 80
当然,在kubernetes中没有类似通配符域的东西,但是您可能可以使用Helm来获得想要的
使用helm,您可以在清单中对变量进行模板化,因此您可以在helm values文件中包含分支的名称
从那里,您可以让gitlab-ci在构建管道中执行helm安装,如果您正确配置了图表,您可以指定管道名称的helm参数。
我正在开发一个将在Kubernetes运行的SaaS应用程序。我们使用了一个将所有组件部署到集群中的Helm图表(为了简单起见,我们假设它是一个前端服务、一个后端和一个数据库)。应用程序架构是多租户的(我们有每个服务的一个实例,由所有租户共享),我们希望保持这种方式。我目前正在苦苦思索并想征求建议/最佳实践的是,如何为租户自动提供自定义子域? null
我正在尝试设置K8s部署,ingress的控制器可以将服务定义为子域。i、 e.
我安装了通配符 SSL 证书,允许我通过 SSL 为任何子域提供页面。 例如:https://www.domain.comhttps://test.domain.comhttps://demo.domain.com 我需要编写一些. htaccess规则来执行以下操作。 > 如果单独请求域,则强制使用WWW和SSL 例如,将 http://domain.com 或 https://domain.c
通常,我希望启用来自起源匹配的请求(并且仅限于):
我对 Kubernetes 很陌生。但到目前为止,能够配置AKS(Azure Kubernetes Services)群集。我的服务有多个命名空间(开发、阶段、生产)。并使用nginx配置了一个入口服务(进入它自己的命名空间“ingress-nginx”)。该设置与HTTP完美配合。 当我试图使用HTTPS时,我的问题就开始了。使用此脚本首次安装证书管理器。它再次创建了自己的名称空间:“cert-