访问报错Client sent an HTTP request to an HTTPS server,一般是因为将CLB的80端口,指向了Ingress Controller的443端口,或是Ingress路由资源中指定的后端服务端口为HTTPS导致的。
针对CLB端口指向错误的情况,请检查集群内Ingress Controller对应的LoadBalancer Service是否配置正确(如80端口转发到Ingress Controller的80端口),针对7层CLB的情况,Service上的443端口需要指定到Ingress Controller的80端口。
针对后端服务端口为HTTPS端口的情况,您可以按照实际情况,将流量转发到后端的HTTP端口中。
针对Nginx Ingress Controller,也可以通过在Ingress路由资源的annotation上配置nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"来使后端访问使用HTTPS协议。