EC2 서버가 매일 ~ 10 초씩 쉬는 이유는 무엇입니까?


12

네트워크 파일 과 동기화하기 위해 매일 /etc/cron.daily/ntpupdate실행 되는 시스템 파일이라고 생각
ntpdate ntp.ubuntu.com합니다. 매일 다음과 매우 유사한 출력을 생성합니다.

/etc/cron.daily/ntpupdate:
16 Jan 06:30:42 ntpdate[21446]:
step time server 91.189.94.4 offset -12.646804 sec

나는 그 91.189.94.4의미가 무엇인지 긍정적이지 않지만 확실히 -12.646804 sec12 초 정도 내 서버가 꺼져 있음을 의미합니다. 그러나 나는 왜 매일 같은 양만큼 떨어져 있는지 모르겠습니다. Ubuntu를 실행하는 Amazon EC2 인스턴스입니다.

나는 하루에 12 초를 잃어 버리고 있거나 다른 것이 12 초 떨어져있는 다른 시계와 시간을 동기화하고 다시 동기화하고 있다고 추측 할 수 있습니다.

이것을 더 자세히 추적하려면 어떻게해야합니까? /etc/cron.*디렉토리 또는 사용자의 cron 작업에 다른 cron 작업이 표시되지 않습니다 ...

최신 정보

특정 시간에 큰 도약이 있는지 확인하기 위해이 매시간 실행하기 시작했다고 생각했습니다. 시간별 출력은 다음과 같습니다.

16 Jan 15:17:04 ntpdate[8346]:
adjust time server 91.189.94.4 offset -0.464418 sec

따라서 매 시간마다 시계가 약 0.5 초씩 꺼 지므로 매일 (24 시간) 시계가 약 12 ​​초 정도 꺼집니다. 시계가 빨리 돌아가는 것 같아요! 감사!


91.189.94.4는 ntp.ubuntu.com의 IP 주소
Michael Mrozek

이 링크를 따르십시오. 문제가 해결 될 것입니다. 그것은 같은 문제를 해결하는 데 도움이되었습니다 docs.aws.amazon.com/AWSEC2/latest/UserGuide/set-time.html

답변:


13

소프트웨어 클럭을 느리게 또는 빠르게 실행할 수있는 여러 가지 요소가 있습니다. 가상 서버의 클럭은 특히 이러한 종류의 문제가 발생하기 쉽습니다. 180-200 % 속도로 작동하는 시계가있는 가상 상자를 발견 할 때까지 하루 12 초는 매우 나쁩니다! 일시 중단 된 랩톱의 시계에도 시간 관리 문제가 발생할 수 있습니다.

ntupdate에 찬성하는 것을 고려해야 ntpd합니다. 패키지 이름은 ntp데비안에 있습니다 (아마도 우분투도 있습니다). NTP 데몬은 하나 이상의 다른 NTP 서버와 동기화하고 시계를 훨씬 정확하게 유지하기 위해 크론 작업보다 훨씬 능동적으로 시간을 동기화합니다. 시간을 지속적으로 모니터링하는 ntpdate것을 제외하고 ntpd는 동일한 프로토콜 사용 의 다른 구현입니다 .

의 (매우 작은) 오버 헤드를 원하지 않으면 한 시간에 한 번 ntpd실행 ntpdate하는 것을 고려할 수 있습니다 . 매시간 0.5 초 떨어져 있다고 가정하면 충분합니다.


3
틱리스 커널 (CONFIG_NO_HZ)을 실행하여 가상 머신 문제를 크게 해결할 수도 있습니다. 이것이 우분투 커널에서 가능한지 또는 직접 빌드 해야하는지 확실하지 않습니다.
Patrick

1
방금 Ubuntu 11 설치 (3.0.0-14-generic)에서 커널 구성을 확인했으며 확실히 CONFIG_NO_HZ활성화되었습니다.
Alexios

0

왜 이런 일이 일어나고 있는지에 대한 귀하의 질문의 나머지 절반에 대답하십시오 : 컴퓨터 하드웨어 시계가 악명 높기 때문에 하루에 12 초 드리프트가 드문 경우이지만 실제로 그렇게 드문 것은 아닙니다.

(이것은 아마도 네트워크 시간의 사용률이 높기 때문에 하루에 12 초의 드리프트가 시계와 비교할 때 약간의 성가심이므로 하드웨어 회사는 저렴한 클럭 칩을 사용할 수 있습니다. 실제로 발생하는 일은 아마도 시계 칩의 발진기가 제대로 조정되지 않았기 때문에 약간 느리지 만 안정적으로 느리게 실행되는 것입니다.)


-1

차이가 너무 작기 때문에 ntp가 서버 시간을 업데이트하지 않는 것 같습니다. 나는 비슷한 문제가 있었는데, 약간의 차이가 있다는 것이 특정 임계 값이 존재할 때까지 업데이트되지 않는다는 것을 알 때까지 매일 같은 지연을 보았습니다.

동기화에 대한 최소 임계 값 구성을 확인하십시오.


3
사실이 아닙니다. 반대로 NTP는 차이를 최대한 줄이려고합니다. 반대 방향으로 임계 값이 있습니다. NTP는 차이가 너무 큰 경우 시계를 업데이트하지 않습니다 (예를 들어 잘못된 시간대, 예를 들어 잘못된 시간대가 의심되는 경우).
Gilles 'SO- 악마 그만'
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.