EC2 모니터링에 100 % CPU와 20 % 만 표시되는 이유는 무엇입니까?


10

다른 인스턴스의 데이터베이스에 행을 삽입하는 ec2 인스턴스에서 Python 스크립트를 실행하고 있습니다. ec2의 모니터링에서 100 % CPU 사용률을 보았지만 top은 python 프로세스의 20 %만을 보여줍니다. 상단에서 무엇이 누락 되었습니까? 네트워크 오버 헤드?


다른 모든 프로세스는 어떻습니까?
Ladadadada 2016 년

이용률 약 0 %
RickyA

또한 dillima에, 나는 :) 클라이언트에 내 TOP 명령 reprot를 보낼 수 있어요
마니 Shrivastava

답변:


18

노출 된 데이터 top는 종종 Amazon EC2 와 같은 가상화 된 환경에서 불충분하거나 오해의 소지가 있으며보고 된 비율은 인스턴스 유형 및 기본 프로세서 코어 활용률 (일반적으로 하이퍼 바이저에서 제공하는 가상화 된 하드웨어와 일치하지 않음)에 따라 다릅니다. 다른 것들-당신이보고있는 것은 요즘 대부분의 관련 유닉스 / 리눅스 모니터링 도구에 노출 된 각각의 CPU 도용 시간 으로 인한 것입니다 -예를 들어 열 % steal 또는 st in sar또는 top:

st-Steal Time
다른 작업 (예 : 다른 가상 시스템 실행)에 대해 하이퍼 바이저가이 가상 시스템에서 가져온 '도난'CPU 양입니다.

블로그 게시물 EC2 모니터링 : CPU 도난 사례 는이 주제에 대한 훌륭한 탐색과 설명을 제공합니다.

top 명령이 40 % CPU 사용 중을 표시하지만 CloudWatch에서 서버가 100 %로 최대 값을 초과했다고 표시하면 어느 쪽을 선택합니까? 대답은 간단하다 (CloudWatch는 정확하다, 정상은 아니다) [...]

이 하이퍼 바이저 메트릭은 Unix / Linux 시스템에서만 (쉽게) 액세스 할 수있는 것처럼 보이지만 Windows (아직)에서는 볼 수없는 것 같습니다. 내 질문을 참조하십시오. Unix 'CPU 도용 시간'에 해당하는 Windows가 있습니까? 이 문제에 대한 자세한 내용은


2
블로그 포스트에 감사드립니다. 정말 분명합니다. Ganglia를 출시하려고하므로이 사실을 아는 것이 정말 좋으며, 잘못된 메트릭을 측정하는 것은 부끄러운 일입니다. 유휴 시간 측정!
RickyA

필자의 경우 Cloudwatch는 3mb / s 네트워크 사용량을보고하지만 서버 (iftop, iptraf, netstat 등)를 보면 네트워크 연결이 서버에 대한 유일한 ssh라는 것을 알 수 있습니다. 내가 정말로 의심하는 것은 3mb / s를 사용하는 것입니다.
Benubird

-2

아마존은 아마도 TOP에서 부하 및 사용량을 확인합니다. CPU에 두 개의 프로세스가있는 경우 20 %로 활용할 수 있지만로드 2는 가질 수 있습니다.


로드 2의 의미를 잘 모르겠습니다.
RickyA

2에서 시스템로드를 가질 수 있습니다. CPU에서 두 개의 프로세스가 있지만 활용률은 낮습니다.
MartinSVK
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.