我已经使用负载均衡器向Kubernetes集群部署了一系列部署和服务。当我尝试访问我的应用程序时,此操作不起作用,因为我的应用程序在端口80上公开,但URL始终重定向到端口443(HTTPS)。我怀疑这与群集IP位于端口443上有关。
关于如何解决此问题的任何想法?
methods: {
updateNumero(index, model) {
$v.especifications.$each.$iter[index].numero[model] = parseInt(index) +1
}
}
答案 0 :(得分:2)
这可能是由于您的应用程序本身重定向到端口443
。这是什么类型的应用程序?
此在端口443
上公开的服务与您的应用程序无关:
kubernetes ClusterIP 10.245.0.1 <none> 443/TCP 8m
这基本上是一项内部服务,可让您访问集群中的kube-apiserver。
您可以尝试设置LoadBalancer
以直接在端口443
上监听。只有您必须移植80
流量不起作用。如果您希望端口80
重定向到工作,建议您使用Ingress
之类的nginx控制器。像这样:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: your-ingress
annotations:
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
spec:
tls:
- hosts:
- yourhostname.com
secretName: tls-secret
rules:
- host: yourhostname.com
http:
paths:
- path: /
backend:
serviceName: web
servicePort: 443
您还必须创建一个包含您的证书和密钥的TLS秘密:
$ kubectl create secret tls tls-secret --key /tmp/tls.key --cert /tmp/tls.crt