Amazon Elastic Kubernetes Service(Amazon EKS) 인스턴스의 문제를 해결하고 있습니다. 해당 인스턴스와 관련된 Amazon EKS 로그를 모두 수집해야 합니다.
간략한 설명
AWSSupport-CollectEKSInstanceLogs 런북을 사용해 Amazon EKS 로그를 수집할 수 있습니다.
중요: 이 자동화를 적용하려면 Amazon EKS 인스턴스에 AWS Systems Manager Agent(SSM Agent)를 설치하고 실행해야 합니다.
해결 방법
참고: 다음 해결 방법은 Linux용 Amazon EKS의 작업자 노드에만 적용됩니다.
Amazon EKS 인스턴스용 로그 번들을 생성하려면 다음 단계를 따르세요.
- AWS Systems Manager 콘솔을 여세요.
- 탐색 창에서 자동화를 선택합니다.
- 자동화 실행을 선택합니다.
- Amazon 소유 탭의 자동화 문서 검색 상자에 EKSInstanceLogs를 입력합니다. 그리고 AWSSupport-CollectEKSInstanceLogs를 선택하세요.
- 다음을 선택합니다.
- 자동화 입력 페이지의 EKSInstanceId에 대상 Amazon EKS 인스턴스 ID를 입력합니다.
- LogDestination 및 AutomationAssumeRole 파라미터를 설정합니다.
참고: 로그 번들은 LogDestination 필드에 지정된 Amazon Simple Storage Service(Amazon S3) 버킷에 업로드됩니다. 버킷을 지정하지 않은 경우 인스턴스에서 로그 번들을 검색할 수 있습니다. 로그 번들은 /var/log/ 경로에 로컬로 저장됩니다.
- 자동화 실행을 선택합니다.
AWSSupport-CollectEKSInstanceLogs을 실행할 때는 다음과 같은 모범 사례와 요구 사항을 고려해야 합니다.
- Amazon 관리형 AmazonSSMManagedInstanceCore 정책을 관련 AWS Identity and Access Management(IAM) 역할에 연결하는 것이 좋습니다. 이 IAM 역할은 자동화를 특징으로 하는 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 위한 것입니다.
- 자동화 실행 전에 LogDestination 필드에 S3 버킷 이름을 입력하면 인스턴스 프로파일이 버킷에 쓰기를 수행할 수 있습니다.
- 자동화를 실행하고 명령을 인스턴스로 보내려면 최소한 ssm:ExecuteAutomation 및 ssm:SendCommand 권한이 있어야 합니다.
- 자동화 출력을 읽으려면 ssm:GetAutomationExecution 권한이 있어야 합니다.
- Amazon Linux 2의 경우, IMDS 엔드포인트가 기본적으로 IMDSv2와 IMDSv1을 모두 지원합니다. IMDSv2를 구성하면 다른 버전이 작동하지 않습니다. AWSSupport-CollectEKSInstanceLogs에서 IMDSv1을 사용하기 때문에 수집 로그가 업로드될 때 보류 중 단계가 표시될 수 있습니다.
관련 정보
Systems Manager에 대한 인스턴스 권한 구성
EKS 로그 수집기(GitHub 웹 사이트)