有没有一种方法可以在一个kubectl命令中检查多个Pod

时间:2020-10-30 20:33:23

标签: kubernetes kubectl

是否有一种方法可以在一个命令中检查多个Pod,也许类似

kubectl logs pods/pod1 pods/pod2 [container-name]

1 个答案:

答案 0 :(得分:4)

kubectl logs无法从名称指定的多个窗格中打印日志。

尽管如此,您可以使用-l, --selector=''标志作为标签查询来进行过滤。例如:

# Return snapshot logs from all containers in pods defined by label app=nginx
kubectl logs -lapp=nginx --all-containers=true

如果您需要从多个不同的容器中打印日志,那么有些项目可以提供帮助:

  • Kubetail:Bash脚本,使您可以将多个Pod中的日志聚合(尾部/跟随)成一个流。这与运行kubectl logs -f相同,但要运行多个pod。
  • Kubelogs:这是一个bash脚本,使用您当前的kubectl context交互地选择名称空间和多个Pod,以从中下载日志。它基本上为所有容器循环运行kubectl logs,将日志重定向到本地文件。