Amazon ECS 로그 수집기를 사용하여 컨테이너 로그 수집 - Amazon Elastic Container Service

Amazon ECS 로그 수집기를 사용하여 컨테이너 로그 수집

컨테이너 인스턴스에서 다양한 로그를 모두 수집하는 방법을 잘 모르겠다면 Amazon ECS 로그 수집기를 사용하면 됩니다. 이것은 LinuxWindows용 GitHub에서 모두 사용할 수 있습니다. 스크립트는 일반적인 운영 체제 로그와 AWS Support 사례 문제 해결에 도움이 될 수 있는 Docker 및 Amazon ECS 컨테이너 에이전트 로그를 수집합니다. 그런 다음 수집된 정보를 진단 목적을 위해 쉽게 공유할 수 있는 단일 파일로 압축해 보관합니다. 또한 Amazon ECS 최적화 AMI와 같은 Amazon Linux 변형에서 Docker 대몬과 Amazon ECS 컨테이너 에이전트의 디버그 모드 활성화도 지원합니다. 현재 Amazon ECS 로그 수집기가 지원하는 운영 체제는 다음과 같습니다.

  • Amazon Linux

  • Red Hat Enterprise Linux 7

  • Debian 8

  • Ubuntu 14.04

  • Ubuntu 16.04

  • Ubuntu 18.04

  • Windows Server 2016

참고

Amazon ECS 로그 수집기의 소스 코드는 LinuxWindows용 GitHub에서 제공됩니다. 포함하고 싶은 변경에 대해서는 풀 요청을 제출할 것을 권장합니다. 하지만 Amazon Web Services는 현재 이 소프트웨어의 변경된 사본을 실행하도록 지원하지 않습니다.

Linux용 Amazon ECS 로그 수집기를 다운로드하고 실행하려면
  1. 컨테이너 인스턴스에 연결합니다.

  2. Amazon ECS 로그 수집기 스크립트를 다운로드합니다.

    curl -O https://raw.githubusercontent.com/awslabs/ecs-logs-collector/master/ecs-logs-collector.sh
  3. 스크립트를 실행해 로그를 수집하고 아카이브를 생성합니다.

    참고

    Docker 대몬과 Amazon ECS 컨테이너 에이전트에 대해 디버그 모드를 활성화하려면 --mode=enable-debug 옵션을 다음 명령에 추가합니다. 인스턴스에서 실행 중인 모든 컨테이너를 종료하는 Docker 대몬이 다시 시작될 수 있습니다. 디버그 모드를 활성화하기 전에 컨테이너 인스턴스 드레이닝과 다른 컨테이너 인스턴스로의 중요한 작업 이동을 고려합니다. 자세한 내용은 Amazon ECS 컨테이너 인스턴스 드레이닝 단원을 참조하십시오.

    [ec2-user ~]$ sudo bash ./ecs-logs-collector.sh
중요

로그 파일을 편집하여 민감한 데이터를 모두 제거하는 것이 좋습니다. 파일에서 알려진 데이터를 검색하거나 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN 등과 같은 환경 변수를 검색할 수도 있습니다.

스크립트를 실행한 후 스크립트가 생성한 collect 폴더에서 수집된 로그를 검사할 수 있습니다. collect.tgz 파일은 모든 로그가 압축된 아카이브로서 진단 지원을 위해 AWS Support와 공유할 수 있습니다.

Windows용 Amazon ECS 로그 수집기를 다운로드하고 실행하려면
  1. 컨테이너 인스턴스에 연결합니다. 자세한 내용은 Amazon EC2 사용 설명서의 Windows 인스턴스에 연결을 참조하세요.

  2. PowerShell을 사용하여 Amazon ECS 로그 수집기 스크립트를 다운로드합니다.

    Invoke-WebRequest -OutFile ecs-logs-collector.ps1 https://raw.githubusercontent.com/awslabs/aws-ecs-logs-collector-for-windows/master/ecs-logs-collector.ps1
  3. 스크립트를 실행해 로그를 수집하고 아카이브를 생성합니다.

    참고

    Docker 대몬과 Amazon ECS 컨테이너 에이전트에 대해 디버그 모드를 활성화하려면 -RunMode debug 옵션을 다음 명령에 추가합니다. 인스턴스에서 실행 중인 모든 컨테이너를 종료하는 Docker 대몬이 다시 시작됩니다. 디버그 모드를 활성화하기 전에 컨테이너 인스턴스 드레이닝과 다른 컨테이너 인스턴스로의 중요한 작업 이동을 고려합니다. 자세한 내용은 Amazon ECS 컨테이너 인스턴스 드레이닝 단원을 참조하십시오.

    .\ecs-logs-collector.ps1
중요

로그 파일을 편집하여 민감한 데이터를 모두 제거하는 것이 좋습니다. 파일에서 알려진 데이터를 검색하거나 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN 등과 같은 환경 변수를 검색할 수도 있습니다.

스크립트를 실행한 후 스크립트가 생성한 collect 폴더에서 수집된 로그를 검사할 수 있습니다. collect.tgz 파일은 모든 로그가 압축된 아카이브로서 진단 지원을 위해 AWS Support와 공유할 수 있습니다.