

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon EKS의 로깅 및 모니터링
<a name="amazon-eks-logging-monitoring"></a>

Amazon Elastic Kubernetes Service(Amazon EKS)는 Kubernetes 컨트롤 플레인에 대한 CloudWatch Logs와 통합됩니다. 컨트롤 플레인은 Amazon EKS에서 관리형 서비스로 제공하며 [ CloudWatch 에이전트를 설치하지 않고도 로깅을 켤](https://docs.aws.amazon.com//eks/latest/userguide/control-plane-logs.html) 수 있습니다. CloudWatch 에이전트를 배포하여 Amazon EKS 노드 및 컨테이너 로그를 캡처할 수도 있습니다. [Fluent Bit 및 Fluentd](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/Container-Insights-EKS-logs.html)는 컨테이너 로그를 CloudWatch Logs로 전송하는 데도 지원됩니다.

CloudWatch Container Insights는 클러스터, 노드, 포드, 작업 및 서비스 수준에서 Amazon EKS에 대한 포괄적인 지표 모니터링 솔루션을 제공합니다. Amazon EKS는 [Prometheus](https://prometheus.io/)를 사용한 지표 캡처를 위한 여러 옵션도 지원합니다. Amazon EKS 컨트롤 플레인은 Prometheus 형식으로 [지표를 노출하는 지표 엔드포인트를 제공합니다](https://docs.aws.amazon.com//eks/latest/userguide/prometheus.html). Amazon EKS 클러스터에 Prometheus를 배포하여 이러한 지표를 사용할 수 있습니다.

다른 [Prometheus 엔드포인트를 사용하는 것 외에도 Prometheus 지표를 스크레이프하고 CloudWatch 지표를 생성하도록 CloudWatch 에이전트를 설정할](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/ContainerInsights-Prometheus-Setup-configure.html) 수도 있습니다. CloudWatch [또한 Prometheus에 대한 Container Insights 모니터링](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/ContainerInsights-Prometheus.html)은 지원되는 컨테이너화된 워크로드 및 시스템에서 Prometheus 지표를 자동으로 검색하고 캡처할 수 있습니다.

Amazon EC2 with Distributor 및 State Manager에 사용되는 접근 방식과 유사한 방식으로 Amazon EKS 노드에 CloudWatch 에이전트를 설치하고 구성하여 Amazon EKS 노드를 표준 시스템 로깅 및 모니터링 구성에 맞게 조정할 수 있습니다.

# Amazon EKS에 대한 로깅
<a name="kubernetes-eks-logging"></a>

Kubernetes 로깅은 컨트롤 플레인 로깅, 노드 로깅 및 애플리케이션 로깅으로 나눌 수 있습니다. [Kubernetes 컨트롤 플레](https://kubernetes.io/docs/concepts/overview/components/#control-plane-components)인은 Kubernetes 클러스터를 관리하고 감사 및 진단 목적으로 사용되는 로그를 생성하는 구성 요소 세트입니다. Amazon EKS를 사용하면 [다양한 컨트롤 플레인 구성 요소에 대한 로그를 켜고](https://docs.aws.amazon.com//eks/latest/userguide/control-plane-logs.html) CloudWatch로 전송할 수 있습니다.

또한 Kubernetes는 포드를 실행하는 각 Kubernetes 노드`kube-proxy`에서 `kubelet` 및와 같은 시스템 구성 요소를 실행합니다. 이러한 구성 요소는 각 노드 내에 로그를 작성하며 각 Amazon EKS 노드에 대해 이러한 로그를 캡처하도록 CloudWatch 및 Container Insights를 구성할 수 있습니다.

컨테이너는 Kubernetes 클러스터 내에서 [포드로](https://kubernetes.io/docs/concepts/workloads/pods/) 그룹화되며 Kubernetes 노드에서 실행되도록 예약됩니다. 대부분의 컨테이너화된 애플리케이션은 표준 출력 및 표준 오류에 쓰고 컨테이너 엔진은 출력을 로깅 드라이버로 리디렉션합니다. Kubernetes에서 컨테이너 로그는 노드의 `/var/log/pods` 디렉터리에 있습니다. 각 Amazon EKS 포드에 대해 이러한 로그를 캡처하도록 CloudWatch 및 Container Insights를 구성할 수 있습니다.

## Amazon EKS 컨트롤 플레인 로깅
<a name="eks-control-plane-logging"></a>

Amazon EKS 클러스터는 Kubernetes 클러스터와 컨테이너를 실행하는 Amazon EKS 노드를 위한 고가용성 단일 테넌트 컨트롤 플레인으로 구성됩니다. 컨트롤 플레인 노드는에서 관리하는 계정에서 실행됩니다 AWS. Amazon EKS 클러스터 컨트롤 플레인 노드는 CloudWatch와 통합되며 특정 컨트롤 플레인 구성 요소에 대한 로깅을 켤 수 있습니다.

로그는 각 Kubernetes 컨트롤 플레인 구성 요소 인스턴스에 대해 제공됩니다.는 컨트롤 플레인 노드의 상태를 AWS 관리하고 [Kubernetes 엔드포인트에 대한 서비스 수준 계약(SLA)을](https://aws.amazon.com//eks/sla/) 제공합니다.

## Amazon EKS 노드 및 애플리케이션 로깅
<a name="eks-node-application-logging"></a>

[CloudWatch Container Insights](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/Container-Insights-setup-logs.html)를 사용하여 Amazon EKS에 대한 로그 및 지표를 캡처하는 것이 좋습니다. Container Insights는 CloudWatch 에이전트와 CloudWatch에 대한 로그 캡처를 위한 Fluent Bit 또는 Fluentd를 사용하여 클러스터, 노드 및 포드 수준 지표를 구현합니다 CloudWatch. Container Insights는 캡처된 CloudWatch 지표의 계층화된 보기와 함께 자동 대시보드도 제공합니다. Container Insights는 모든 Amazon EKS 노드에서 실행되는 CloudWatch DaemonSet 및 Fluent Bit DaemonSet로 배포됩니다. Fargate 노드는에서 관리 AWS 하며 DaemonSets를 지원하지 않기 때문에 Container Insights에서 지원되지 않습니다. Amazon EKS에 대한 Fargate 로깅은이 안내서에서 별도로 다룹니다.

 다음 표에는 Amazon EKS에 대한 기본 Fluentd 또는 Fluent Bit 로그 캡처 구성으로 캡처된 CloudWatch 로그 그룹 및 로그가 나와 있습니다. [https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/Container-Insights-setup-logs-FluentBit.html](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/Container-Insights-setup-logs-FluentBit.html) 


|  |  | 
| --- |--- |
| /aws/containerinsights/Cluster\$1Name/application | 의 모든 로그 파일/var/log/containers. 이 디렉터리는 /var/log/pods 디렉터리 구조의 모든 Kubernetes 컨테이너 로그에 대한 심볼 링크를 제공합니다. 이렇게 하면 애플리케이션 컨테이너 로그가 stdout 또는에 기록됩니다stderr. 또한 aws-vpc-cni-init, kube-proxy및와 같은 Kubernetes 시스템 컨테이너에 대한 로그도 포함됩니다coreDNS. | 
| /aws/containerinsights/Cluster\$1Name/host | /var/log/dmesg, /var/log/secure및에서 로그합니다/var/log/messages. | 
| /aws/containerinsights/Cluster\$1Name/dataplane | kubelet.service, kubeproxy.service 및 docker.service에 대한 /var/log/journal에서의 로그. | 

로깅에 Container Insights를 Fluent Bit 또는 Fluentd와 함께 사용하지 않으려면 Amazon EKS 노드에 설치된 CloudWatch 에이전트를 사용하여 노드 및 컨테이너 로그를 캡처할 수 있습니다. Amazon EKS 노드는 EC2 인스턴스이므로 Amazon EC2의 표준 시스템 수준 로깅 접근 방식에 포함해야 합니다. Distributor 및 State Manager를 사용하여 CloudWatch 에이전트를 설치하는 경우 Amazon EKS 노드도 CloudWatch 에이전트 설치, 구성 및 업데이트에 포함됩니다.

다음 표에는 Kubernetes와 관련된 로그와 로깅에 Container Insights를 Fluent Bit 또는 Fluentd와 함께 사용하지 않는 경우 캡처해야 하는 로그가 나와 있습니다.


|  |  | 
| --- |--- |
| /var/log/containers | 이 디렉터리는 /var/log/pods 디렉터리 구조 아래의 모든 Kubernetes 컨테이너 로그에 대한 심볼 링크를 제공합니다. 이렇게 하면 stdout 또는에 쓰는 애플리케이션 컨테이너 로그가 효과적으로 캡처됩니다stderr. 여기에는 aws-vpc-cni-init, kube-proxy및와 같은 Kubernetes 시스템 컨테이너에 대한 로그가 포함됩니다coreDNS. 중요: Container Insights를 사용하는 경우에는 필요하지 않습니다. | 
| var/log/aws-routed-eni/ipamd.log/var/log/aws-routed-eni/plugin.log | L-IPAM 데몬에 대한 로그는 여기에서 찾을 수 있습니다. | 

Amazon EKS 노드가 적절한 시스템 수준 로그 및 지표를 전송하도록 CloudWatch 에이전트를 설치하고 구성해야 합니다. 그러나 Amazon EKS 최적화 AMI에는 Systems Manager 에이전트가 포함되지 않습니다. [시작 템플릿을](https://docs.aws.amazon.com//eks/latest/userguide/launch-templates.html) 사용하면 Systems Manager 에이전트 설치와 사용자 데이터 섹션을 통해 구현된 시작 스크립트를 사용하여 중요한 Amazon EKS별 로그를 캡처하는 기본 CloudWatch 구성을 자동화할 수 있습니다. Amazon EKS 노드는 Auto Scaling 그룹을 [관리형 노드 그룹](https://docs.aws.amazon.com//eks/latest/userguide/managed-node-groups.html) 또는 [자체 관리형 노드](https://docs.aws.amazon.com//eks/latest/userguide/worker.html)로 사용하여 배포됩니다.

관리형 노드 그룹을 사용하면 사용자 데이터 섹션이 포함된 [시작 템플릿을](https://docs.aws.amazon.com//eks/latest/userguide/launch-templates.html) 제공하여 Systems Manager 에이전트 설치 및 CloudWatch 구성을 자동화할 수 있습니다. [amazon\$1eks\$1managed\$1node\$1group\$1launch\$1config.yaml](https://github.com/aws-samples/logging-monitoring-apg-guide-examples/blob/main/examples/eks/amazon_eks_managed_node_group_launch_config.yaml) CloudFormation 템플릿을 사용자 지정하고 사용하여 Systems Manager 에이전트, CloudWatch 에이전트를 설치하고 CloudWatch 구성 디렉터리에 Amazon EKS별 로깅 구성을 추가하는 시작 템플릿을 생성할 수 있습니다. 이 템플릿을 사용하여 infrastructure-as-code(IaC) 접근 방식으로 Amazon EKS 관리형 노드 그룹 시작 템플릿을 업데이트할 수 있습니다. CloudFormation 템플릿을 업데이트할 때마다 시작 템플릿의 새 버전이 프로비저닝됩니다. 그런 다음 새 템플릿 버전을 사용하도록 노드 그룹을 업데이트하고 [관리형 수명 주기 프로세스가](https://docs.aws.amazon.com//eks/latest/userguide/managed-node-update-behavior.html) 가동 중지 없이 노드를 업데이트하도록 할 수 있습니다. 관리형 노드 그룹에 적용된 IAM 역할 및 인스턴스 프로파일에 `CloudWatchAgentServerPolicy` 및 `AmazonSSMManagedInstanceCore` AWS 관리형 정책이 포함되어 있는지 확인합니다.

자체 관리형 노드를 사용하면 Amazon EKS 노드의 수명 주기 및 업데이트 전략을 직접 프로비저닝하고 관리할 수 있습니다. 자체 관리형 노드를 사용하면 [다른 옵션](https://docs.aws.amazon.com//eks/latest/userguide/eks-compute.html)과 함께 Amazon EKS 클러스터 및 [Bottlerocket](https://aws.amazon.com//bottlerocket/)에서 Windows 노드를 실행할 수 있습니다. CloudFormation 를 사용하여 자체 관리형 노드를 Amazon EKS 클러스터에 배포할 수 있습니다. 즉, Amazon EKS 클러스터에 IaC 및 관리형 변경 접근 방식을 사용할 수 있습니다. AWS 는 있는 그대로 사용하거나 사용자 지정할 수 있는 [amazon-eks-nodegroup.yaml](https://github.com/aws-samples/logging-monitoring-apg-guide-examples/blob/main/examples/eks/amazon-eks-nodegroup.yaml) CloudFormation 템플릿을 제공합니다. 템플릿은 클러스터의 Amazon EKS 노드에 필요한 모든 리소스(예: 별도의 IAM 역할, 보안 그룹, Amazon EC2 Auto Scaling 그룹 및 시작 템플릿)를 프로비저닝합니다. [amazon-eks-nodegroup.yaml](https://github.com/aws-samples/logging-monitoring-apg-guide-examples/blob/main/examples/eks/amazon-eks-nodegroup.yaml) CloudFormation 템플릿은 필요한 Systems Manager 에이전트인 CloudWatch 에이전트를 설치하고 CloudWatch 구성 디렉터리에 Amazon EKS별 로깅 구성을 추가하는 업데이트된 버전입니다.

## Fargate의 Amazon EKS에 대한 로깅
<a name="eks-fargate-logging"></a>

Fargate의 Amazon EKS를 사용하면 Kubernetes 노드를 할당하거나 관리하지 않고도 포드를 배포할 수 있습니다. 이렇게 하면 Kubernetes 노드에 대한 시스템 수준 로그를 캡처할 필요가 없습니다. Fargate 포드에서 로그를 캡처하려면 Fluent Bit를 사용하여 로그를 CloudWatch에 직접 전달할 수 있습니다. 이를 통해 추가 구성이나 Fargate의 Amazon EKS 포드용 사이드카 컨테이너 없이 CloudWatch로 로그를 자동으로 라우팅할 수 있습니다. 이에 대한 자세한 내용은 Amazon EKS 설명서의 [Fargate 로깅](https://docs.aws.amazon.com//eks/latest/userguide/fargate-logging.html) 및 AWS 블로그의 [Amazon EKS용 Fluent Bit](https://aws.amazon.com//blogs/containers/fluent-bit-for-amazon-eks-on-aws-fargate-is-here/)를 참조하세요. 이 솔루션은 컨테이너에서 `STDOUT` 및 `STDERR` 입출력(I/O) 스트림을 캡처하여 Fargate의 Amazon EKS 클러스터에 대해 설정된 Fluent Bit 구성을 기반으로 Fluent Bit를 통해 CloudWatch로 전송합니다.

# Amazon EKS 및 Kubernetes에 대한 지표
<a name="kubernetes-eks-metrics"></a>

Kubernetes는 리소스 사용량 지표(예: 노드 및 포드의 CPU 및 메모리 사용량)에 액세스할 수 있는 지표 API를 제공하지만 API는 과거 지표가 아닌 point-in-time 정보만 제공합니다. [Kubernetes 지표 서버](https://github.com/kubernetes-sigs/metrics-server)는 일반적으로 Amazon EKS 및 Kubernetes 배포에 사용되어 지표를 집계하고, 지표에 대한 단기 기록 정보를 제공하고, [Horizontal Pod Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/)와 같은 기능을 지원합니다.

Amazon EKS는 Kubernetes API 서버를 통해 [ Prometheus 형식으로](https://docs.aws.amazon.com//eks/latest/userguide/prometheus.html) 컨트롤 플레인 지표를 노출하며 CloudWatch는 이러한 지표를 캡처하고 수집할 수 있습니다. CloudWatch 및 Container Insights는 Amazon EKS 노드 및 포드에 대한 포괄적인 지표 캡처, 분석 및 경보를 제공하도록 구성할 수도 있습니다.

## Kubernetes 컨트롤 플레인 지표
<a name="kubernetes-control-plane-metrics"></a>

Kubernetes는 `/metrics` HTTP API 엔드포인트를 사용하여 Prometheus 형식의 컨트롤 플레인 지표를 노출합니다. 웹 브라우저를 사용하여 이러한 지표를 그래프로 표시하고 보려면 Kubernetes 클러스터에 [Prometheus](https://prometheus.io/)를 설치해야 합니다. Kubernetes API 서버에서 [노출한 지표를 CloudWatch로 수집할](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/ContainerInsights-Prometheus-Setup-configure.html#ContainerInsights-Prometheus-Setup-new-exporters) 수도 있습니다. CloudWatch

## Kubernetes에 대한 노드 및 시스템 지표
<a name="kubernetes-node-system-metrics"></a>

Kubernetes는 클러스터, 노드, 포드 수준 CPU 및 메모리 통계를 위해 Kubernetes 클러스터에 [배포하고 실행할](https://docs.aws.amazon.com//eks/latest/userguide/metrics-server.html) 수 있는 Prometheus [지표 서버](https://github.com/kubernetes-sigs/metrics-server) 포드를 제공합니다. 이러한 지표는 [Horizontal Pod Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) 및 [Vertical Pod Autoscaler](https://docs.aws.amazon.com/eks/latest/userguide/vertical-pod-autoscaler.html)와 함께 사용됩니다. CloudWatch는 이러한 지표를 제공할 수도 있습니다.

Kubernetes [대시보드 또는 수평 및 수직 포드 오토스케일러를 사용하는 경우 Kubernetes](https://github.com/kubernetes/dashboard) 지표 서버를 설치해야 합니다. Kubernetes 대시보드를 사용하면 Kubernetes 클러스터, 노드, 포드 및 관련 구성을 검색 및 구성하고 Kubernetes 지표 서버에서 CPU 및 메모리 지표를 볼 수 있습니다.

Kubernetes Metrics Server에서 제공하는 지표는 비자동 조정(예: 모니터링)을 위해 사용할 수 없습니다. 지표는 과거 분석이 아닌 point-in-time 분석을 위한 것입니다. Kubernetes 대시보드는를 배포`dashboard-metrics-scraper`하여 Kubernetes 지표 서버의 지표를 짧은 기간 동안 저장합니다.

Container Insights는 Kubernetes DaemonSet에서 실행되는 컨테이너화된 버전의 CloudWatch 에이전트를 사용하여 클러스터에서 실행 중인 모든 컨테이너를 검색하고 노드 수준 지표를 제공합니다. 성능 스택의 모든 계층에서 성능 데이터를 수집합니다. 퀵 스타트에서 AWS 퀵 스타트를 사용하거나 Container Insights를 별도로 구성할 수 있습니다. 퀵 스타트는 CloudWatch 에이전트를 사용한 지표 모니터링과 Fluent Bit를 사용한 로깅을 설정하므로 로깅 및 모니터링을 위해 한 번만 배포하면 됩니다.

Amazon EKS 노드는 EC2 인스턴스이므로 Amazon EC2에 대해 정의한 표준을 사용하여 Container Insights에서 캡처한 지표 외에도 시스템 수준 지표를 캡처해야 합니다. 이 가이드의 [CloudWatch 에이전트 배포 및 구성을 위한 State Manager 및 Distributor 설정](install-cloudwatch-systems-manager.md#set-up-systems-manager-distributor) 섹션에서 동일한 접근 방식을 사용하여 Amazon EKS 클러스터에 대한 CloudWatch 에이전트를 설치하고 구성할 수 있습니다. 지표와 Amazon EKS별 로그 구성을 포함하도록 Amazon EKS별 CloudWatch 구성 파일을 업데이트할 수 있습니다.

Prometheus가 지원되는 CloudWatch 에이전트는 [지원되는 컨테이너화된 워크로드 및 시스템에서](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/ContainerInsights-Prometheus.html) Prometheus 지표를 자동으로 검색하고 스크레이프할 수 있습니다. CloudWatch Logs Insights를 사용하여 분석하기 위해 임베디드 지표 형식의 CloudWatch 로그로 수집하고 CloudWatch 지표를 자동으로 생성합니다.

**중요**  
Prometheus 지표를 수집하려면 [특수 버전의 CloudWatch 에이전트를 배포](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/ContainerInsights-Prometheus-Setup.html#ContainerInsights-Prometheus-Setup-install-agent)해야 합니다. CloudWatch 이는 Container Insights용으로 배포된 CloudWatch 에이전트와는 별도의 에이전트입니다. CloudWatch 에이전트 및 Amazon EKS 포드 배포에 대한 배포 및 구성 파일이 포함된 [prometheus\$1jmx](https://github.com/aws-samples/logging-monitoring-apg-guide-examples/tree/main/examples/eks/prometheus_jmx) 샘플 Java 애플리케이션을 사용하여 Prometheus 지표 검색을 시연할 수 있습니다. 자세한 내용은 CloudWatch 설명서의 [Amazon EKS 및 Kubernetes에서 Java/JMX 샘플 워크로드 설정을](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/ContainerInsights-Prometheus-Sample-Workloads-javajmx.html) 참조하세요. Amazon EKS 클러스터에서 실행되는 다른 Prometheus 대상의 지표를 캡처하도록 CloudWatch 에이전트를 구성할 수도 있습니다.

## 애플리케이션 지표
<a name="application-metrics-eks"></a>

[CloudWatch 임베디드 지표 형식을 사용하여 사용자 지정 지표를 생성할 수 있습니다.](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/CloudWatch_Embedded_Metric_Format.html) 임베디드 지표 형식 문을 수집하려면 임베디드 지표 형식 항목을 임베디드 지표 형식 엔드포인트로 전송해야 합니다. CloudWatch 에이전트는 [Amazon EKS 포드에서 사이드카 컨테이너로 구성할 수 있습니다](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/CloudWatch_Embedded_Metric_Format_Generation_CloudWatch_Agent.html). CloudWatch 에이전트 구성은 Kubernetes ConfigMap으로 저장되며 CloudWatch 에이전트 사이드카 컨테이너에서 읽어 임베디드 지표 형식 엔드포인트를 시작합니다.

또한 애플리케이션을 Prometheus 대상으로 설정하고 Prometheus 지원을 통해 CloudWatch 에이전트를 구성하여 지표를 검색, 스크레이프 및 CloudWatch로 수집할 수 있습니다. 예를 들어 [오픈 소스 JMX Exporter](https://github.com/prometheus/jmx_exporter)를 Java 애플리케이션과 함께 사용하여 CloudWatch 에이전트의 Prometheus 소비를 위해 JMX Beans를 노출할 수 있습니다.

임베디드 지표 형식을 사용하지 않으려면 [AWS API](https://docs.aws.amazon.com//AmazonCloudWatch/latest/APIReference/Welcome.html) 또는 [AWS SDK](https://aws.amazon.com/developer/tools/)를 사용하여 CloudWatch 지표를 생성하고 업데이트할 수도 있습니다. 그러나 모니터링과 애플리케이션 로직을 혼합하므로이 접근 방식은 권장하지 않습니다.

## Fargate의 Amazon EKS 지표
<a name="metrics-fargate-eks-workloads"></a>

Fargate는 Kubernetes 포드를 실행하도록 Amazon EKS 노드를 자동으로 프로비저닝하므로 노드 수준 지표를 모니터링하고 수집할 필요가 없습니다. 그러나 Fargate의 Amazon EKS 노드에서 실행되는 포드에 대한 지표를 모니터링해야 합니다. Container Insights는 현재 지원되지 않는 다음 기능이 필요하므로 Fargate의 Amazon EKS에서는 현재 사용할 수 없습니다.
+ DaemonSets는 현재 지원되지 않습니다. Container Insights는 각 클러스터 노드에서 CloudWatch 에이전트를 DaemonSet로 실행하여 배포됩니다.
+ HostPath 영구 볼륨은 지원되지 않습니다. CloudWatch 에이전트 컨테이너는 컨테이너 지표 데이터를 수집하기 위한 사전 조건으로 hostPath 영구 볼륨을 사용합니다.
+ Fargate는 권한이 있는 컨테이너와 호스트 정보에 대한 액세스를 방지합니다.

[Fargate용 내장 로그 라우터](https://docs.aws.amazon.com//eks/latest/userguide/fargate-logging.html)를 사용하여 임베디드 지표 형식 문을 CloudWatch로 전송할 수 있습니다. 로그 라우터는 임베디드 지표 형식 문을 지원하도록 구성할 수 있는 CloudWatch 플러그인이 있는 Fluent Bit를 사용합니다.

Amazon EKS 클러스터에 Prometheus 서버를 배포하여 Fargate 노드에서 지표를 수집하여 Fargate 노드에 대한 포드 수준 지표를 검색하고 캡처할 수 있습니다. Prometheus에는 영구 스토리지가 필요하므로 영구 스토리지에 Amazon Elastic File System(Amazon EFS)을 사용하는 경우 Fargate에 Prometheus를 배포할 수 있습니다. Amazon EC2 지원 노드에 Prometheus를 배포할 수도 있습니다. 자세한 내용은 블로그[의 Monitoring Amazon EKS on AWS Fargate using Prometheus and Grafana](https://aws.amazon.com//blogs/containers/monitoring-amazon-eks-on-aws-fargate-using-prometheus-and-grafana/)를 AWS 참조하세요.