k8s筆記——NodePort暴露nginx-controller實現https自動跳轉自定義nodePort端口

安裝nginx-controller並暴露nodePort

helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx/
helm repo update
helm install gateway ingress-nginx/ingress-nginx --set controller.service.type=NodePort --set controller.admissionWebhooks.enabled=false
kubectl patch svc gateway-ingress-nginx-controller  -p '{\"spec\":{\"ports\":[{\"name\":\"http\",\"nodePort\":30882,\"port\":80,\"protocol\":\"TCP\",\"targetPort\":30882},{\"name\":\"https\",\"nodePort\":30883,\"port\":443,\"protocol\":\"TCP\",\"targetPort\":30883}]}}'

修改deployment

kubectl edit deploy gateway-ingress-nginx-controller
      containers:
      - args:
        - /nginx-ingress-controller
        - --publish-service=$(POD_NAMESPACE)/gateway-ingress-nginx-controller
        - --election-id=ingress-controller-leader
        - --ingress-class=nginx
        - --http-port=30882
        - --https-port=30883
        - --configmap=$(POD_NAMESPACE)/gateway-ingress-nginx-controller

修改configmap,新增use-port-in-redirects並禁用hsts(不禁用hsts瀏覽器在第二次訪問時不會走服務器的308讓ingress跳轉到https_port而是會自動http->https端口不會修改導致https:http_port訪問出現訪問失敗)

kubectl edit configmap gateway-ingress-nginx-controller
apiVersion: v1
data:  
hsts: "false" use
-port-in-redirects: "true" kind: ConfigMap

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章