zoukankan      html  css  js  c++  java
  • kuberneets 1.17 采坑

    kube-proxy 报错

    conntrack returned error: error looking for path of conntrack: exec: "conntrack": executable file not found in $PATH
    导致 dns 无法访问 host unresolve 

    安装 conntrack-tools  yum install conntrack-tools

    关闭所有服务,清空iptables -F nat ,iptables -F, iptables -F raw , iptables -F mangle ,重新启动服务,如果还不行就重新安装覆盖网重新清空iptables    

    Bootstrap TLS 验证的问题

    根据文档不使用kubeadm搭建 bootstrap TLS 验证的kubelet

    参考文档 

    https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/#token-authentication-file

    https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/

    https://kubernetes.io/docs/reference/access-authn-authz/node/

    注意事项:

    1. 首先kubelet启动时用static token作为验证,要保证token文件里配置的用户名有bootstrap的权限,这里需要绑定到system:node-bootstrapper的clusterrole

    2. 申请成功后会有csr 可以通过kubectl get csr 查看,但是手动approve是无效的,需要controller-manager来issue

    3. 要配置--authorization-mode里 增加 Node, --admission-control里增加NodeRestriction

    4. 如果Kubelet使用bootstrap启动 则需要用 --bootstrap-kubeconfig 来指定一个绑定到与token一样User的config

    5. kubelet启动后会生成kubeconfig与cert-dir下的文件

    证书过期问题

    之前是手动搭建没有用Kubeadm, 证书过期后需要重新生成,涉及到的所有ServiceAccount都失效了,重新创建。

    删除的node如何恢复

    需要把cert-dir下生成的文件删除,重启kubelet,这种方式仅限于bootstrap启动模式

  • 相关阅读:
    浅谈JavaScript中this指向的⼏种情况
    JavaScript、html简单的级联操作。
    异常处理中throws和throw的区别?
    java异常处理try-catch-finally的执行过程?
    什么是内连接、外连接、交叉连接(笛卡尔积)?
    主键和外键的区别
    集合和数组的比较(为什么要引入集合)?
    Java中对比单继承与多继承的优劣,以及java的解决方案
    数据库
    数据库集中控制的优势
  • 原文地址:https://www.cnblogs.com/xuchenCN/p/12170948.html
Copyright © 2011-2022 走看看