기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon EKS 로깅
쿠버네티스 로깅은 컨트롤 플레인 로깅, 노드 로깅 및 애플리케이션 로깅으로 나눌 수 있다. 이Kubernetes 제어 플레인
쿠버네티스는 또한 다음과 같은 시스템 컴포넌트를 실행합니다.kubelet
과kube-proxy
파드를 실행하는 각 쿠버네티스 노드에서. 이러한 구성 요소는 각 노드 내에 로그를 작성하고 사용자가 구성할 수 있습니다. CloudWatch 및 컨테이너 인사이트를 사용하여 각 Amazon EKS 노드에 대해 이러한 로그를 캡처합니다.
컨테이너는 다음과 같이 그룹화됩니다.꼬투리/var/log/pods
노드의 디렉토리입니다. 구성할 수 있습니다. CloudWatch 각 Amazon EKS 포드에 대해 이러한 로그를 캡처하는 컨테이너 통찰력을 제공합니다.
Amazon EKS 제어 영역 로깅
Amazon EKS 클러스터는 쿠버네티스 클러스터용 고가용성 단일 테넌트 컨트롤 플레인과 컨테이너를 실행하는 Amazon EKS 노드로 구성됩니다. 컨트롤 플레인 노드는 다음에 의해 관리되는 계정에서 실행됩니다.AWS. Amazon EKS 클러스터 컨트롤 플레인 노드는 CloudWatch 특정 제어 평면 구성요소에 대해 로깅을 켤 수 있습니다.
로그는 각 쿠버네티스 컨트롤 플레인 컴포넌트 인스턴스에 대해 제공됩니다.AWS컨트롤 플레인 노드의 상태를 관리하고쿠버네티스 엔드포인트에 대한 SLA (서비스 수준 계약)
Amazon EKS 노드 및 애플리케이션 로깅
를 사용할 것을 권장합니다.CloudWatch Container InsightsAmazon EKS의 로그 및 메트릭을 캡처합니다. 컨테이너 인사이트는 다음을 사용하여 클러스터, 노드 및 포드 수준 지표를 구현합니다. CloudWatch 에이전트 및 CloudWatch에 대한 로그 캡처용 유창한 비트 또는 Fluentd입니다. Container Insights는 캡처된 뷰를 계층화된 자동 대시보드도 제공합니다. CloudWatch 지표. 컨테이너 인사이트는 CloudWatch로 배포됩니다. DaemonSet Fluent Bit DaemonSet 모든 Amazon EKS 노드에서 실행됩니다. 노드는 다음에 의해 관리되기 때문에 컨테이너 인사이트에서 Fargate 노드는 지원되지 않습니다.AWSDaemonSets 지원하지 않습니다. Amazon EKS용 Fargate 로깅은 이 가이드에서는 별도로 다룹니다.
다음 표에는 CloudWatch 에 의해 캡처된 로그 그룹 및 로그기본 Fluentd 또는 Fluent Bit 로그 캡처 구성Amazon EKS.
/aws/containerinsights/Cluster_Name/application |
의 모든 로그 파일/var/log/containers . 이 디렉토리는 모든 쿠버네티스 컨테이너 로그에 대한 심볼릭 링크를 제공합니다./var/log/pods 디렉터리 구조입니다. 이렇게 하면 응용 프로그램 컨테이너 로그를 캡처합니다.stdout 또는stderr . 여기에는 다음과 같은 쿠버네티스 시스템 컨테이너에 대한 로그도 포함됩니다.aws-vpc-cni-init ,kube-proxy , 및coreDNS . |
/aws/containerinsights/Cluster_Name/host |
에서의 로그/var/log/dmesg ,/var/log/secure , 및/var/log/messages . |
/aws/containerinsights/Cluster_Name/dataplane |
kubelet.service , kubeproxy.service 및 docker.service 에 대한 /var/log/journal 에서의 로그. |
로깅을 위해 Fluent Bit 또는 Fluentd와 함께 컨테이너 인사이트를 사용하지 않으려면 다음을 사용하여 노드 및 컨테이너 로그를 캡처할 수 있습니다. CloudWatch Amazon EKS 노드에 설치된 에이전트입니다. Amazon EKS 노드는 EC2 인스턴스입니다. 즉, Amazon EC2 EC2의 표준 시스템 수준 로깅 접근 방식에 포함시켜야 합니다. 을 (를) 설치하는 경우 CloudWatch 대리점 및 상태 관리자를 사용하는 에이전트인 경우 Amazon EKS 노드도 CloudWatch 에이전트 설치, 구성 및 업데이트
다음 표는 쿠버네티스에만 해당하며 로깅을 위해 Fluentd 또는 Fluentd와 함께 컨테이너 인사이트를 사용하지 않을 경우 캡처해야 하는 로그를 보여줍니다.
/var/log/containers |
이 디렉토리는 아래의 모든 쿠버네티스 컨테이너 로그에 대한 심볼릭 링크를 제공합니다./var/log/pods 디렉터리 구조입니다. 이렇게 하면 응용 프로그램 컨테이너 로그를 효과적으로 캡처합니다.stdout 또는stderr . 여기에는 다음과 같은 쿠버네티스 시스템 컨테이너에 대한 로그가 포함됩니다.aws-vpc-cni-init ,kube-proxy , 및coreDNS . 중요: 컨테이너 인사이트를 사용하는 경우에는 필요하지 않습니다. |
var/log/aws-routed-eni/ipamd.log /var/log/aws-routed-eni/plugin.log |
L-IPAM 데몬에 대한 로그는 여기에서 찾을 수 있습니다. |
Amazon EKS 노드가 다음을 설치하고 구성해야 합니다. CloudWatch 적절한 시스템 수준 로그 및 메트릭을 보내는 에이전트입니다. 그러나 Amazon EKS 최적화 AMI에는 Systems Manager 에이전트가 포함되어 있지 않습니다. 를 사용하여시작 템플릿, Systems Manager 에이전트 설치 및 기본값을 자동화할 수 있습니다. CloudWatch 사용자 데이터 섹션을 통해 구현된 시작 스크립트를 사용하여 중요한 Amazon EKS별 로그를 캡처하는 구성입니다. Amazon EKS 노드는 Auto Scaling 그룹을관리형 노드 그룹또는자체 관리형 노드.
관리형 노드 그룹을 사용하면시작 템플릿여기에는 Systems Manager 에이전트 설치를 자동화하는 사용자 데이터 섹션이 포함되어 있으며 CloudWatch 구성. 를 사용자 지정하고 사용할 수 있습니다.Amazon_eks_관리_노드_그룹_런치_구성. 얌CloudWatchAgentServerPolicy
과AmazonSSMManagedInstanceCore
AWS관리형 정책
자체 관리형 노드를 사용하면 Amazon EKS 노드에 대한 수명 주기 및 업데이트 전략을 직접 프로비저닝하고 관리할 수 있습니다. 자체 관리형 노드를 사용하면 Amazon EKS 클러스터에서 Windows 노드를 실행할 수 있으며Bottlerocket
Fargate 아마존 EKS 로깅
Fargate의 Amazon EKS를 사용하면 쿠버네티스 노드를 할당하거나 관리하지 않고도 파드를 배포할 수 있습니다. 이렇게 하면 쿠버네티스 노드에 대한 시스템 레벨 로그를 캡처할 필요가 없습니다. Fargate 포드에서 로그를 캡처하려면 Fluent Bit을 사용하여 로그를 CloudWatch로 직접 전달할 수 있습니다. 이렇게 하면 로그를 자동으로 라우팅할 수 있습니다. CloudWatch Fargate의 Amazon EKS 포드에 대한 추가 구성 또는 사이드카 컨테이너가 없습니다. 자세한 내용은 단원을 참조하십시오.Fargate 로깅Amazon EKS 설명서에 나와 있습니다.아마존 EKS를 위한 유창한STDOUT
과STDERR
컨테이너에서 입/출력 (I/O) 스트림을 다음 CloudWatch Fargate의 Amazon EKS 클러스터에 대해 설정된 Fluent Bit 구성을 기반으로 하는 Fluent Bit을 통해