문제 해결 및 진단 - AWS Elastic Beanstalk

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

문제 해결 및 진단

이 섹션에서는 IIS 애플리케이션을 Elastic Beanstalk로 마이그레이션하는 동안 발생할 수 있는 일반적인 문제를 해결하기 위한 지침을 제공합니다.

EC2 키 페어를 환경과 연결

Amazon EC2 키 페어를 사용하여 Elastic Beanstalk 애플리케이션에 프로비저닝된 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에 안전하게 로그인할 수 있습니다. 키 페어를 생성하는 방법에 대한 지침은 Amazon EC2 사용 설명서Amazon EC2를 사용하여 키 페어 만들기를 참조하세요.

에 키 이름을 지정하면 Elastic Beanstalk 환경을 키 페어와 연결하는 eb migrate 효과가 있습니다. 보안을 위해 EC2 인스턴스 보안 그룹에서 포트 3389가 열리지 않습니다. 초기 마이그레이션 eb config 후 포트 3389에서를 통해 트래픽을 허용하는 추가 EC2 보안 그룹을 연결할 수 있습니다.

PS C:\migrations_workspace> eb migrate ` --keyname "my-keypair" ` --verbose

키 페어를 만들면 Amazon EC2가 해당 퍼블릭 키의 복사본을 저장합니다. 환경 인스턴스에 연결하는 데 이 키를 더 이상 사용하지 않는 경우 Amazon EC2에서 삭제해도 됩니다. 자세한 내용은 Amazon EC2 사용 설명서키 페어 삭제를 참조하세요.

Windows Amazon EC2 인스턴스에 연결하는 방법에 대한 자세한 내용은 Windows 인스턴스에 연결을 참조하세요.

로그 액세스

EB CLI는 EC2 인스턴스에 로그인하지 않고도 Elastic Beanstalk 환경에서 로그를 검색하는 데 사용할 수 있는 eb logs 기능을 제공합니다. 실행 후 eb logs --zip 명령을 실행eb migrate하여 .elasticbeanstalk\logs 디렉터리에 로그를 다운로드하고 저장할 수 있습니다.

또는 AWS Elastic Beanstalk 콘솔을 통해 로그를 볼 수 있습니다. 자세한 내용은 Elastic Beanstalk 환경에서 Amazon EC2 인스턴스 로그 보기 단원을 참조하십시오.

클라이언트 측 아티팩트에 액세스

eb migrate 명령은 msdeploy 내부 마이그레이션 아티팩트 디렉터리에서 생성된 애플리케이션 및 오류 로그를 저장합니다.

./migrations/ ├── latest -> migration_20240308_123456/ └── migration_20240308_123456/ ├── application.log ├── error.log └── upload_target\

환경 상태 모니터링

Elastic Beanstalk는 향상된 상태 모니터링 기능을 사용하여 상태를 모니터링하는 데 도움이 됩니다. CPU 사용률, 지연 시간, 요청 수 및 응답 코드와 같은 기본 제공 지표를 활용하여 애플리케이션 인스턴스의 운영 상태를 지속적으로 추적하는 자동화된 상태 모니터링 시스템입니다.

상태 모니터링 시스템은 에이전트 기반 접근 방식을 사용하여 인스턴스 수준 데이터를 수집하고 실시간 로깅 및 알림과 통합합니다. Elastic Load Balancing(ELB) 및 Auto Scaling은 상태 변화에 동적으로 대응하여 고가용성과 내결함성을 보장합니다. 향상된 상태 보고를 포함한 고급 모니터링 모드는 애플리케이션 동작에 대한 세분화된 가시성을 제공하여 사전 예방적 문제 해결 및 자동 복구 메커니즘을 지원합니다.

EB CLI eb health 명령을 실행하여 환경의 상태를 표시합니다. 다음과 같은 정보가 표시됩니다.

  • 인스턴스 상태

  • 애플리케이션 응답 지표

  • 시스템 리소스 사용률

  • 최근 배포 이벤트

EC2 성능 최적화

기본적으로는 c5.2xlarge 인스턴스 유형을 eb migrate 선택하여 Elastic Beanstalk에서 최적의 최초 경험을 제공합니다. --instance-type 인수를 사용하여이 동작을 재정의할 수 있습니다.

PS C:\migrations_workspace> eb migrate ` --instance-type "t3.large"

프로덕션 환경의 경우 인스턴스 유형을 선택할 때 다음 요소를 고려하세요.

  • 애플리케이션의 메모리 요구 사항

  • 워크로드 처리를 위한 CPU 요구 사항

  • 네트워크 성능 요구 사항

  • 비용 최적화 목표

EBS 볼륨 구성

기본적으로 Elastic Beanstalk는 환경에 대한 루트 블록 디바이스 볼륨(C:\)만 생성합니다. --ebs-snapshots 옵션을 사용하여 추가 Amazon Elastic Block Store 스냅샷 볼륨을 전달할 수 있습니다.

PS C:\migrations_workspace> eb migrate ` --ebs-snapshots "snap-123456789abc"

Elastic Beanstalk를 사용하여 블록 디바이스 매핑을 구성하는 방법의 예는 블로그 기사 Customize Ephemeral and EBS Volumes in Elastic Beanstalk Environments를 참조하세요.

스토리지 요구 사항이 높은 애플리케이션의 경우 다음 옵션을 고려하세요.

  • 영구 데이터에 EBS 볼륨 사용

  • 정적 콘텐츠를 위한 Amazon S3 구현

  • 공유 파일 시스템에 Amazon FSx for Windows File Server 사용

일반적인 문제 및 해결 방법

이벤트: Web Deploy 설치 누락

Web Deploy를 찾을 수 없음과 관련된 오류가 발생하면 Microsoft Web Platform Installer에서 Web Deploy 3.6 이상을 설치합니다. 다음 예제에서는 가능한 오류 메시지를 표시합니다.

Couldn't find msdeploy.exe. Follow instructions here: https://learn.microsoft.com/en-us/iis/install/installing-publishing-technologies/installing-and-configuring-web-deploy

이벤트: 마이그레이션 중 권한 문제

권한 관련 오류가 발생하면 관리 권한으로 EB CLI를 실행하고 있는지 확인합니다. 다음 예제에서는 가능한 오류 메시지를 표시합니다.

[ERROR] Access to the path 'C:\inetpub\wwwroot\web.config' is denied.

이벤트: 애플리케이션 풀 자격 증명 문제

애플리케이션 풀 자격 증명 문제로 인해 애플리케이션이 시작되지 않는 경우에 표시된 대로 사용자 지정 스크립트를 생성하여 애플리케이션 풀 자격 증명을 구성합니다사용자 지정 애플리케이션 풀 설정.

이벤트: SSL 인증서 구성 오류

HTTPS 바인딩이 작동하지 않는 경우 eb mibrate 옵션 --ssl-certificates 파라미터를 사용하여 유효한 ACM 인증서 ARN을 지정했는지 확인합니다.

이벤트: 환경 생성 제한 시간

환경 생성 시간이 초과되면 AWS Management Console의 AWS CloudFormation 이벤트에서 특정 리소스 생성 실패를 확인합니다. 일반적인 원인으로는 VPC 구성 문제 또는 서비스 제한이 있습니다.

지원 받기

해결할 수 없는 문제가 발생하는 경우에 문의하기 전에 다음 정보를 AWS Support 수집합니다.

  • 환경 ID(eb status)

  • 애플리케이션 로그(eb logs --zip)

  • 의 마이그레이션 아티팩트 .\migrations\latest\

  • 소스 IIS 구성(의 출력eb migrate explore --verbose)

  • 자세한 오류 메시지

Elastic Beanstalk 문제 해결에 대한 자세한 내용은 섹션을 참조하세요Elastic Beanstalk 환경 문제 해결.