如何在EKS上获取k8s主日志?

lex*_*sys 11 amazon-web-services kubernetes amazon-eks

我正在寻找这些日志:

/var/log/kube-apiserver.log
/var/log/kube-scheduler.log
/var/log/kube-controller-manager.log
Run Code Online (Sandbox Code Playgroud)

在EKS中,用户无权访问控制平面,无法直接查看这些文件.

我知道AWS宣布的CloudTrail集成.但它显示的事件不是来自k8s API,而是来自事件的AWS EKS API CreateCluster.还有一个问题是如何获取调度程序和控制器管理器日志.

在pods列表中没有用于api和控制器的pod.

$ 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
Run Code Online (Sandbox Code Playgroud)

节点列表中没有主节点

$ 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
Run Code Online (Sandbox Code Playgroud)

小智 0

kube-api 服务器日志、kube-scheduler 日志、kube-controller 管理器日志等内容将在 CloudWatch 日志中提供。而(正如您所说)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 -与-EFK

  • 这是关于主日志和 EKS 的。使用AWS托管的EKS时,我们如何访问kubernetes的组件日志 (3认同)