5 个冷门且实用的 Kubectl 使用技巧( 二 )

默认启动的 proxy 是屏蔽了某些 api 的,并且有一些限制,例如无法使用 exec 进入 pod 之中可以使用 kubectl proxy —help 来看,例如
# 仅允许本机访问--accept-hosts='^localhost$,^127.0.0.1$,^[::1]$': Regular expression for hosts that the proxy should accept.# 不允许访问下面的api, 也就是说默认没法exec进入容器--reject-paths='^/api/.*/pods/.*/exec,^/api/.*/pods/.*/attach': Regular expression for paths that the proxy should reject. Paths specified here will be rejected even accepted by --accept-paths.# 想跳过exec的限制也很简单, 把reject-paths去掉就可以了kubectl proxy -p 8080 --keepalive 3600s --reject-paths='' -v=9有人说 kubectl proxy 可能没什么作用,那可能仅仅是你还没有实际的应用场景 。例如当我想要调试 K8s dashboard 代码的时候 。如果直接使用 kubeconfig 文件,我没法看到具体的请求过程,如果你加上一层 proxy 转发,并且设置 -v=9 的时候,你就自动获得了一个日志记录工具,在调试时相当有用 。
总结kubectl 是一个强大的命令行工具,上面我只是介绍了我工作中对其用法的一点探索,也并不鼓励大家非要记住这些命令,只是希望当读者需要的时候,能够想起来kubectl可以有类似的功能,就不需要针对几个临时需求去研读client-api了 。
来源:https://corvo.myseu.cn/2021/08/16/2021-08-16-kubectl%E7%9A%84%E5%A4%9A%E6%A0%B7%E7%94%A8%E6%B3%95/




推荐阅读