메뉴
Amazon Elastic Compute Cloud
User Guide for Linux Instances

인스턴스 상태 확인

인스턴스 상태 모니터링 작업은 Amazon EC2에서 인스턴스의 애플리케이션 실행에 지장을 줄 수 있는 문제를 발견했을 때 빠르게 확인할 수 있는 방법입니다. Amazon EC2에서는 실행 중인 모든 EC2 인스턴스에 대하여 자동 검사를 실행하여 하드웨어 및 소프트웨어 문제를 확인합니다. 이러한 상태 확인 결과를 토대로 식별 가능한 특정 문제를 확인할 수 있습니다. 이러한 데이터는 계획했던 각 인스턴스 상태(pending, running, stopping 등)를 비롯해 Amazon CloudWatch가 모니터링하는 사용 지표(CPU 사용량, 네트워크 트래픽, 디스크 입/출력)에 대한 Amazon EC2 정보를 늘려주는 역할을 합니다.

상태 확인은 매분마다 자동으로 실행되며 통과 또는 실패 상태를 반환합니다. 모든 검사 결과가 통과인 경우 인스턴스의 전체 상태는 [OK]로 표시됩니다. 하나 이상의 검사 결과가 실패인 경우에는 인스턴스의 전체 상태가 [impaired]로 표시됩니다. 상태 확인은 Amazon EC2에 내장된 기능으로 비활성화하거나 삭제할 수 없습니다. 그러나 상태 확인 결과를 기준으로 표시되는 경보를 새로 추가하거나 삭제하는 것은 가능합니다. 예를 들어 특정 인스턴스의 상태 확인에서 실패 항목이 있을 때 알리는 경보를 생성할 수 있습니다. 자세한 내용은 상태 확인 경보 생성 및 수정 단원을 참조하십시오.

Amazon EC2 인스턴스를 모니터링하고 기본 문제로 인해 인스턴스가 손상된 경우 인스턴스를 자동으로 복구하는 Amazon CloudWatch 경보를 생성할 수도 있습니다. 자세한 내용은 인스턴스 복구 단원을 참조하십시오.

상태 확인 유형

상태 확인은 시스템 상태 확인과 인스턴스 상태 확인, 두 가지로 제공됩니다.

시스템 상태 확인

인스턴스가 실행되는 AWS 시스템을 모니터링합니다. 이러한 확인에서는 복구 시 AWS 개입이 필요한 인스턴스와 관련된 근본적인 문제를 찾아냅니다. 시스템 상태 확인이 실패한 경우, AWS에서 문제를 해결할 때까지 기다리거나 문제를 직접 해결할 수 있습니다. Amazon EBS가 지원하는 인스턴스의 경우, 직접 인스턴스를 중단한 후 다시 시작할 수 있습니다. 그러면 대부분의 경우 새로운 호스트 컴퓨터로 인스턴스를 마이그레이션합니다. 인스턴스 스토어가 지원하는 인스턴스의 경우, 인스턴스를 종료하고 교체할 수 있습니다.

다음은 시스템 상태 확인의 실패 원인이 되는 몇 가지 문제의 예입니다.

  • 네트워크 연결 끊김

  • 시스템 전원 중단

  • 물리적 호스트의 소프트웨어 문제

  • 네트워크 연결성에 영향을 주는 물리적 호스트의 하드웨어 문제

인스턴스 상태 확인

개별 인스턴스에 대한 소프트웨어 및 네트워크 구성을 모니터링합니다. 이러한 확인에서는 복구 시 사용자의 개입이 필요한 문제를 찾아냅니다. 인스턴스 상태 확인이 실패할 경우에는 일반적으로 사용자가 인스턴스를 재부팅하거나 인스턴스 구성을 변경하는 등의 방법으로 문제를 직접 해결해야 합니다.

다음은 인스턴스 상태 확인의 실패 원인이 되는 몇 가지 문제의 예입니다.

  • 시스템 상태 확인 실패

  • 잘못된 네트워킹 또는 스타트업 구성

  • 메모리가 모두 사용됨

  • 파일 시스템 손상

  • 호환되지 않는 커널

상태 확인 결과 확인

Amazon EC2는 상태 확인 결과를 확인하고 대응할 수 있는 몇 가지 방법이 있습니다.

콘솔을 사용해 상태 확인

AWS Management Console을 사용해 상태 확인 결과를 확인할 수 있습니다.

콘솔을 사용해 상태 확인 결과를 확인하는 방법

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 Instances를 선택합니다.

  3. [Instances] 페이지의 [Status Checks] 열에는 각 인스턴스의 운영 상태가 목록으로 표시됩니다.

  4. 특정 인스턴스의 상태를 보려면 인스턴스를 선택하고 [Status Checks] 탭을 선택합니다.

     상태 확인
  5. 상태 확인 실패로 표시된 인스턴스가 있고 이 인스턴스가 확인 불가 상태로 20분 넘게 유지될 경우, [ AWS Support]를 선택하여 지원을 요청합니다. 시스템 또는 인스턴스 상태 확인 실패 문제를 직접 해결하려면 상태 확인에 실패한 인스턴스 문제 해결 단원을 참조하십시오.

명령줄 또는 API를 사용해 상태 확인

describe-instance-status(AWS CLI) 명령을 사용해 실행 중인 인스턴스의 상태 확인 결과를 확인할 수 있습니다.

모든 인스턴스 상태를 확인하려면 다음 명령을 사용합니다.

Copy
aws ec2 describe-instance-status

impaired로 표시된 인스턴스의 상태를 모두 확인할 수 있는 명령:

Copy
aws ec2 describe-instance-status --filters Name=instance-status.status,Values=impaired

단일 인스턴스의 상태를 확인하려면 다음 명령을 사용합니다.

Copy
aws ec2 describe-instance-status --instance-ids i-1234567890abcdef0

또는 다음 명령을 사용합니다.

상태 확인 실패로 표시된 인스턴스가 있는 경우, 상태 확인에 실패한 인스턴스 문제 해결 단원을 참조하십시오.

상태 확인 보고

상태가 impaired로 표시되지 않은 인스턴스임에도 불구하고 문제가 발생하는 경우 피드백을 제공할 수 있습니다. 또는 impaired 상태의 인스턴스와 관련해 문제에 대한 추가 정보를 작성하여 AWS로 전달할 수 있습니다.

전달받은 피드백은 다수의 고객이 경험하는 문제를 식별하는 데 사용되며, 개별적인 계정 문제에 대해 따로 응답을 제공하지는 않습니다. 피드백을 제공해도 해당 인스턴스의 상태 확인 결과는 변동되지 않습니다.

콘솔을 사용해 상태 피드백을 보고하는 방법

콘솔을 사용해 인스턴스 상태를 보고하는 방법

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 Instances를 선택합니다.

  3. 인스턴스를 선택합니다.

  4. [Status Checks] 탭을 선택한 후 [Submit feedback]을 선택합니다.

  5. [Report Instance Status] 양식을 작성한 후 [Submit]을 선택합니다.

명령줄 또는 API를 사용해 상태 피드백 보고

아래와 같이 report-instance-status(AWS CLI) 명령을 사용해 impaired 상태의 인스턴스에 대한 피드백을 전송합니다.

Copy
aws ec2 report-instance-status --instances i-1234567890abcdef0 --status impaired --reason-codes code

또는 다음 명령을 사용합니다.

상태 확인 경보 생성 및 수정

인스턴스 상태와 시스템 상태 경보를 추가하면 인스턴스에서 상태 확인 실패가 발생했을 때 알림을 받을 수 있습니다.

콘솔을 사용해 상태 확인 경보 생성

인스턴스 상태나 시스템 상태를 모니터링하기 위해 기존 인스턴스에 대한 상태 확인 경보를 생성할 수 있습니다. 알림 내용을 이메일로 받아보거나 인스턴스 상태 확인 또는 시스템 상태 확인 실패가 발생했을 때 해당 인스턴스를 중지, 종료 또는 복구하도록 경보를 구성할 수 있습니다.

상태 확인 경보 생성

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 Instances를 선택합니다.

  3. 인스턴스를 선택합니다.

  4. [Status Checks] 탭을 선택한 후 [Create Status Check Alarm]을 선택합니다.

  5. [Send a notification to]를 선택합니다. 기존 SNS 주제를 선택하거나, [Create topic]을 클릭하여 새로운 주제를 생성합니다. 새로운 주제를 생성할 때는 [With these recipients]에 자신의 이메일 주소와 추가 수신자의 주소를 콤마로 구분하여 입력합니다.

  6. (선택 사항) [Take the action]을 선택한 후 원하는 작업을 선택합니다.

  7. [Whenever]에서 알고 싶은 상태 확인를 선택합니다.

    참고

    이전 단계에서 [Recover this instance]를 선택한 경우에는 [Status Check Failed (System)]를 선택합니다.

  8. [For at least]에서 원하는 평가 주기의 개수를 설정하고 [consecutive periods]에서 경보가 실행되고 이메일 전송이 이루어지기 전에 적용할 평가 주기의 시간 단위를 설정합니다.

  9. (선택 사항) [Name of alarm]에서 경보의 기본 이름을 다른 이름으로 변경합니다.

  10. [Create Alarm]을 선택합니다.

    중요

    수신자 목록에 이메일 주소를 추가했거나 새 주제를 만든 경우 Amazon SNS에서는 각각의 새 주소로 가입 확인 이메일을 보냅니다. 모든 수신자는 각각 이메일에 포함된 링크를 클릭하여 가입 여부를 확인해야 합니다. 경고 알림은 확인된 주소로만 전송됩니다.

필요한 경우 인스턴스 상태 경보를 수정할 수 있습니다.

상태 확인 경보 수정

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 Instances를 선택합니다.

  3. 인스턴스를 선택하고 [Actions]를 선택한 후 [CloudWatch Monitoring]을 선택하고 [Add/Edit Alarms]를 선택합니다.

  4. [Alarm Details] 대화 상자에서 경보 이름을 선택합니다.

  5. [Edit Alarm] 대화 상자에서 필요한 설정을 변경한 후 [Save]를 선택합니다.

AWS CLI를 사용해 상태 확인 경보 생성

다음은 인스턴스에서 연속으로 2주기 이상 인스턴스 검사 또는 시스템 상태 확인이 중단되면서 경보가 발생하여 SNS 주제인 arn:aws:sns:us-west-2:111122223333:my-sns-topic에 대한 알림 메시지를 게시하는 예제입니다. 지표는 StatusCheckFailed입니다.

CLI를 사용해 상태 확인 경보를 생성하는 방법

  1. 기존의 SNS 주제를 선택하거나 새로운 주제를 생성합니다. 자세한 내용은 AWS Command Line Interface 사용 설명서에서 Using the AWS CLI with Amazon SNS 단원을 참조하십시오.

  2. 아래와 같이 list-metrics 명령을 사용하여 Amazon EC2에 유효한 Amazon CloudWatch 지표를 확인합니다.

    Copy
    aws cloudwatch list-metrics --namespace AWS/EC2
  3. 아래와 같이 put-metric-alarm 명령을 사용하여 경보를 생성합니다.

    Copy
    aws cloudwatch put-metric-alarm --alarm-name StatusCheckFailed-Alarm-for-i-1234567890abcdef0 --metric-name StatusCheckFailed --namespace AWS/EC2 --statistic Maximum --dimensions Name=InstanceId,Value=i-1234567890abcdef0 --unit Count --period 300 --evaluation-periods 2 --threshold 1 --comparison-operator GreaterThanOrEqualToThreshold --alarm-actions arn:aws:sns:us-west-2:111122223333:my-sns-topic

    참고

    • --period는 Amazon CloudWatch 지표가 수집되는 시간 주기(초)입니다. 이 예제에서는 60초와 5분을 곱셈하여 300초를 사용합니다.

    • --evaluation-periods는 지표 값과 기준 값을 비교하도록 설정된 연속 주기의 개수입니다. 이 예제에서는 2를 사용합니다.

    • --alarm-actions는 경보 트리거 시 실행할 작업 목록입니다. 각 작업은 Amazon 리소스 이름(ARN)으로 지정되어 있습니다. 이 예제에서는 Amazon SNS를 사용해 이메일을 보낼 수 있도록 경보를 구성합니다.