kubernetes pod的kubectl日志(如果包含2个容器)

shyt4zoc  于 12个月前  发布在  Kubernetes
关注(0)|答案(3)|浏览(171)

我有pod,它有2个容器。如果我给予命令“kubectl logs pod_name“,它不会列出日志,我需要给予容器名称沿着此命令。
当我们给予命令“kubectl logs pod_name“时,有没有一种方法可以同时显示两个容器日志?

qzlgjiam

qzlgjiam1#

显示特定容器的日志

kubectl logs <pod-name> -c <container_name>

字符串
要显示所有容器日志,请使用以下命令

kubectl logs <pod-name> --all-containers=true

bd1hkmkf

bd1hkmkf2#

获取Pod日志的其余API为

GET /api/v1/namespaces/{namespace}/pods/{name}/log

字符串
您可以将container作为查询参数传递给上述API,以获取特定容器的日志

GET /api/v1/namespaces/{namespace}/pods/{name}/log?container=containername


当您使用服务帐户或用户从代码中调用上述API时,您需要具有以下RBACRoleRoleBinding

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: default
  name: pod-logs-reader
rules:
- apiGroups: [""]
  resources: ["pods/log"]
  verbs: ["get", "list"]


此处记录了API

vh0rcniy

vh0rcniy3#

如果你想在真实的时间内跟踪日志,添加-f后缀。

kubectl logs -f <your-pod> --all-containers=true

字符串

相关问题