我想使用服務公開 k8s api。我的問題是 api 僅在 https 上的埠 6443 上回應。任何對 http 回傳狀態 400 錯誤請求的嘗試。如何將服務“強制”給用戶 https ?
apiVersion: v1
kind: Service
metadata:
name: k8s-api
namespace: kube-system
labels:
label: k8s-api
spec:
ports:
- port: 80 #Port on which your service is running
targetPort: 6443
protocol: TCP
name: http
selector:
name: kube-apiserver-master-node
可能是這個?
apiVersion: v1
kind: Service
metadata:
name: k8s-api
namespace: kube-system
labels:
label: k8s-api
spec:
ports:
- port: 443 #Port on which your service is running
targetPort: 6443
protocol: TCP
name: http
selector:
name: kube-apiserver-master-node
uj5u.com熱心網友回復:
如果您默認使用 Nginx 入口,它會卸載SSL 并在后臺發送純HTTP。
如果您請求直接連接到服務,更改埠6443可能會有所幫助。
如果您使用的是 Nginx 入口,請確保它不會終止 SSL。
nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/384967.html
標籤:Kubernetes Kubernetes 服务 kubernetes-apiserver
上一篇:何時使用NodePort、ClusterIP、LoadBalancer、Headless作為Ingress的后端?
