首页 文章

Google容器引擎中的Kubernetes HTTPS Ingress

提问于
浏览
6

我想通过 HTTPS only 负载均衡器公开在Google容器引擎中运行的HTTP服务 .

如何在入口对象中定义我想要 HTTPS 仅负载均衡器而不是默认HTTP?

或者有没有办法从创建的负载均衡器中永久删除 HTTP 协议?当我添加 HTTPS 协议然后删除 HTTP 协议时,平台几分钟后重新创建 HTTP .

入口:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: myapp-ingress
spec:
  backend:
    serviceName: myapp-service
    servicePort: 8080

1 回答

  • 3

    为了仅暴露HTTPs服务,您可以阻止端口80上的流量,如link所述:

    您可以通过注释来阻止流量:80 . 如果所有客户端都只是通过https命中负载均衡器并且您不想浪费额外的GCE转发规则,则可能需要执行此操作,例如:

    apiVersion: extensions/v1beta1
    kind: Ingress
    metadata:
      name: test
      annotations:
        kubernetes.io/ingress.allow-http: "false"
    spec:
      tls:
      # This assumes tls-secret exists.
      # To generate it run the make in this directory.
      - secretName: tls-secret
      backend:
        serviceName: echoheaders-https
        servicePort: 80
    

相关问题