zoukankan      html  css  js  c++  java
  • k8s部署ingress-nginx报错排错

      不是ingress-nginx不成功出现错误提示

    kubectl describe pod nginx-ingress-controller-6ffc8fdf96-xtg6n -n ingress-nginx
    
     Normal   Scheduled  <unknown>         default-scheduler      Successfully assigned ingress-nginx/nginx-ingress-controller-6ffc8fdf96-xtg6n to 192.168.1.12
      Normal   Pulled     21s               kubelet, 192.168.1.12  Container image "quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.30.0" already present on machine
      Normal   Created    21s               kubelet, 192.168.1.12  Created container nginx-ingress-controller
      Normal   Started    20s               kubelet, 192.168.1.12  Started container nginx-ingress-controller
      Warning  Unhealthy  5s (x2 over 15s)  kubelet, 192.168.1.12  Readiness probe failed: Get http://192.168.1.12:10254/healthz: dial tcp 192.168.1.12:10254: connect: connection refused
      Warning  Unhealthy  2s                kubelet, 192.168.1.12  Liveness probe failed: Get http://192.168.1.12:10254/healthz: dial tcp 192.168.1.12:10254: connect: connection refused
    

       对应node的kubelet日志

    systemctl status kube-proxy -l
    

       报错如下

    kuberuntime_container.go:490] preStop hook for container "nginx-ingress-controller" failed: command '/wait-shutdown' exited with 137:
    

     

       查看pod日志

    # kubectl logs nginx-ingress-controller-6ffc8fdf96-xtg6n -n ingress-nginx
    -------------------------------------------------------------------------------
    NGINX Ingress controller
      Release:       0.30.0
      Build:         git-7e65b90c4
      Repository:    https://github.com/kubernetes/ingress-nginx
      nginx version: nginx/1.17.8
    
    -------------------------------------------------------------------------------
    
    W0430 09:48:42.198239       6 flags.go:260] SSL certificate chain completion is disabled (--enable-ssl-chain-completion=false)
    W0430 09:48:42.198310       6 client_config.go:543] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
    I0430 09:48:42.198533       6 main.go:193] Creating API client for https://10.0.0.1:443
    

       判断是10.0.0.443有问题

      node上telnet失败

    # telnet 10.0.0.1 443
    Trying 10.0.0.1...
    

       解决方法,修改kube-proxy配置把流量转发该成ipvs模式

    cat /opt/kubernetes/cfg/kube-proxy
    
    # cat /opt/kubernetes/cfg/kube-proxy
    KUBE_PROXY_OPTS="--logtostderr=false 
    --log-dir=/opt/kubernetes/logs/kube-proxy 
    --v=4 
    --hostname-override=192.168.1.12 
    --cluster-cidr=10.0.0.0/24 
    --proxy-mode=ipvs 
    --masquerade-all=true 
    --kubeconfig=/opt/kubernetes/cfg/kube-proxy.kubeconfig"
    

       增加的内容

       重启kube-proxy

      重新不是ingress-nginx即可

  • 相关阅读:
    超值干货:微服务架构下如何解耦,对于已经紧耦合下如何重构?
    程序员收藏不看系列:近三万字总结Spring注解开发!
    干货收藏:6 款能挣钱的 Spring Boot 开源后台管理系统
    美团二面:你向 Mysql 数据库插入 100w 条数据用了多久?
    5分钟快速掌握阿里内部MySQL性能优化的核心技术!
    优秀!一鼓作气学会“一致性哈希”,就靠这 18 张图了
    分库分表神器 Sharding-JDBC,几千万的数据你不搞一下?
    熬夜肝出5大点,18张图带你彻底弄懂MySQL事务日志
    jdk8新特性Stream
    java多线程
  • 原文地址:https://www.cnblogs.com/minseo/p/12810278.html
Copyright © 2011-2022 走看看