zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    Atom 和 markdown 基本使用
    c++11 正则表达式基本使用
    Emacs 之窗口管理
    Emacs 之列编辑模式
    Emacs 之查看帮助
    使用 json_in_java
    Linux服务 httpd
    Linux 编译安装BIND
    Kerberos
    Linux服务 DNS&BIND
  • 原文地址:https://www.cnblogs.com/gmmy/p/14923870.html
Copyright © 2011-2022 走看看