我有吊舱,它有两个容器。如果我发出命令";CCD_ 1";它不列出日志,我需要提供容器名称和这个命令。
有没有一种方法可以在我们发出命令"时显示两个容器日志;kubectl logs pod_name
";?
显示特定容器的日志
kubectl logs <pod-name> -c <container_name>
要显示所有容器日志,请使用以下命令
kubectl logs <pod-name> --all-containers=true
获取吊舱日志的其余API是
GET /api/v1/namespaces/{namespace}/pods/{name}/log
您可以将容器作为查询参数传递给上面的API,以获取特定容器的日志
GET /api/v1/namespaces/{namespace}/pods/{name}/log?container=containername
当您使用服务帐户或用户从代码中点击上述API时,您需要具有以下RBACRole
和RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
namespace: default
name: pod-logs-reader
rules:
- apiGroups: [""]
resources: ["pods/log"]
verbs: ["get", "list"]
此处记录了API