其实很多时候客户都不给用80端口,亦或者80端口已经被其他服务占用。

而我们使用K8S的时候,默认的 ingress-controller 端口是 80 端口。

遇到这种情况,可以将 K8S 默认的 80 端口修改为其他端口,例如 80 修改为 8081。

操作方法

kubectl edit daemonset nginx-ingress-controller -n ingress-nginx

其中 -n 参数指定的命名空间对应你自己实际存放 nginx-ingress-controller 的命名空间。

    containers:
      - args:
        - /nginx-ingress-controller
        - --default-backend-service=$(POD_NAMESPACE)/default-http-backend
        - --configmap=$(POD_NAMESPACE)/nginx-configuration
        - --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services
        - --udp-services-configmap=$(POD_NAMESPACE)/udp-services
        - --annotations-prefix=nginx.ingress.kubernetes.io
        # 增加以下两个参数参数(一个是http端口,一个是https端口)
        - --http-port=8080
        - --https-port=8443    

然后使用删除原来的 nginx-ingress-controller 这个 pod,删除后 k8s 会自动使用新的配置创建 pod,这样就可以了。


(END)

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐