首页 文章

我无法访问google cloud kubernetes上提供的https网址

提问于
浏览
0

所有,

我按照本教程:https://github.com/ahmetb/gke-letsencrypt . 我在Google Cloud中有kubernetes的入口设置,我有一个静态IP地址,并创建了秘密 . 这是我的入口配置:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: helloweb
  annotations:
    kubernetes.io/ingress.global-static-ip-name: helloweb-ip
    certmanager.k8s.io/acme-http01-edit-in-place: "true"
  labels:
    app: hello
spec:
  backend:
    serviceName: helloweb-backend
    servicePort: 8080
  tls:
  - secretName: dogs-com-tls
    hosts:
    - app-solidair-vlaanderen.com

我可以访问http://app-solidair-vlaanderen.com,但不能访问https网址 .

如果我调用describe ingress,我会得到这个输出:

Name:             helloweb
Namespace:        default
Address:          35.190.68.173
Default backend:  helloweb-backend:8080 (10.32.0.17:8080)
TLS:
  dogs-com-tls terminates app-solidair-vlaanderen.com
Rules:
  Host                         Path  Backends
  ----                         ----  --------
  app-solidair-vlaanderen.com
                               /.well-known/acme-challenge/Q8kcFSZ0ZUJO58xZyVbK6s-cJIWu-EgwPcDd8NFyoXQ   cm-acme-http-solver-mhqnf:8089 (<none>)
Annotations:
  url-map:          k8s-um-default-helloweb--17a833239f9491d9
  backends:         {"k8s-be-30819--17a833239f9491d9":"Unknown","k8s-be-32482--17a833239f9491d9":"HEALTHY"}
  forwarding-rule:  k8s-fw-default-helloweb--17a833239f9491d9
  target-proxy:     k8s-tp-default-helloweb--17a833239f9491d9
Events:
  Type     Reason  Age                From                     Message
  ----     ------  ----               ----                     -------
  Normal   ADD     45m                loadbalancer-controller  default/helloweb
  Normal   CREATE  44m                loadbalancer-controller  ip: 35.190.68.173
  Warning  Sync    7m (x22 over 28m)  loadbalancer-controller  Error during sync: error while evaluating the ingress spec: could not find service "default/cm-acme-http-solver-mhqnf"

有人知道我错过了什么吗?

1 回答

  • 1

    您的入口定义中有一些混乱,为什么主机在tls之下?这是一个适合我的例子:

    apiVersion: extensions/v1beta1
    kind: Ingress
    metadata:
      name: {{ .Values.ingressName }}-ingress
    annotations:
      kubernetes.io/ingress.global-static-ip-name: {{ .Values.staticIpName }}-static-ip
      kubernetes.io/ingress.allow-http: "false"
    labels:
      ...
    spec:
      tls:
      - secretName: sslcerts
      rules:
      - host: {{ .Values.restApiHost }}
      http:
        paths:
        - backend:
            serviceName: rest-api-internal-service
            servicePort: 80
    

相关问题