我正在寻找以下日志:
/var/log/kube-apiserver.log
/var/log/kube-scheduler.log
/var/log/kube-controller-manager.log
在EKS中,用户无权访问控制平面,因此无法直接看到这些文件。
我知道AWS宣布的CloudTrail集成。但是它显示的事件不是来自k8s API的事件,而是来自CreateCluster
事件的AWS EKS API。还有一个未解决的问题,即如何获取调度程序和控制器管理器日志。
“豆荚”列表中没有用于api和控制器的豆荚。
$ kubectl get po --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system aws-node-9f4lm 1/1 Running 0 2h
kube-system aws-node-wj2cg 1/1 Running 0 2h
kube-system kube-dns-64b69465b4-4gw6n 3/3 Running 0 2h
kube-system kube-proxy-7mt7l 1/1 Running 0 2h
kube-system kube-proxy-vflzv 1/1 Running 0 2h
节点列表中没有主节点
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
ip-10-0-0-92.ec2.internal Ready <none> 9m v1.10.3
ip-10-0-1-63.ec2.internal Ready <none> 9m v1.10.3
答案 0 :(得分:1)
可以将日志发送到CloudWatch(不是免费的)。可以单独选择以下日志以发送到CloudWatch:
可以通过UI或AWS CLI启用日志。参见Amazon EKS Control Plane Logging
答案 1 :(得分:0)
CloudWatch日志中将提供诸如kube-api服务器日志,kube-scheduler日志,kube-controller管理器日志等内容。虽然(如您所述)EKS API调用将记录到cloudtrail。
**我收回了,我想AWS EKS尚未解决。您将需要使用EFK堆栈来获取日志。
有人已经整理了一个快速的方法: https://github.com/aws-samples/aws-workshop-for-kubernetes/tree/master/02-path-working-with-clusters/204-cluster-logging-with-EFK