【发布时间】:2019-07-17 18:48:14
【问题描述】:
我正在尝试使用 Google 的 Deployment Manager 和 Kubernetes Engine 从头开始构建 Kubernetes 环境。到目前为止,集群已配置为托管两个应用程序。每个应用程序都由一个专有服务提供服务,该服务反过来接收来自专有入口的流量。两个入口都是使用相同的 Deployment Manager jinja 模板创建的:
- name: {{ NAME_PREFIX }}-ingress
type: {{ CLUSTER_TYPE_BETA }}:{{ INGRESS_COLLECTION }}
metadata:
dependsOn:
- {{ properties['cluster-type-v1beta1-extensions'] }}
properties:
apiVersion: extensions/v1beta1
kind: Ingress
namespace: {{ properties['namespace'] | default('default') }}
metadata:
name: {{ NAME_PREFIX }}
labels:
app: {{ env['name'] }}
deployment: {{ env['deployment'] }}
spec:
rules:
- host: {{ properties['host'] }}
http:
paths:
- backend:
serviceName: {{ NAME_PREFIX }}-svc
servicePort: {{ properties['node-port'] }}
环境部署工作正常。但是,我希望两个入口都绑定到同一个外部地址,但这种情况没有发生。如何设置模板以强制执行此限制?更一般地说,为每个环境的基于主机的规则生成一个入口是否被认为是 kubernetes 的不良做法?
【问题讨论】:
标签: kubernetes google-kubernetes-engine google-deployment-manager