완벽한 세상에서 VM 게스트는 완벽한 시간을 유지하거나 최소한 호스트가 제공하는 완벽을 유지합니다. 불행히도 우리는 완벽한 세상에 살고 있지 않습니다.
사람에게 알려진 거의 모든 하이퍼 바이저에 대한 경험을 바탕으로 항상 예외없이 가상 머신에서 NTP 클라이언트를 실행합니다. 내 일반적인 설정은 -g 옵션을 사용하여 ntpd를 사용하거나 이전 시스템의 경우 ntpdate를 시작하여 이전 단계에서 시계를 밟는 것입니다 (시스템 부팅시 동기화되지 않을 수 있음).
KVM은 반 가상화 된 실시간 클럭으로 거의 완벽한 설정을 갖추고 있습니다 . 적절한 드라이버 (최신 모든 Linux)를 보유한 게스트는 호스트뿐만 아니라 시간을 유지합니다. 그러나 여전히 문제가 있습니다. 예를 들어 호스트에서 NTP를 실행하지 않거나 호스트에 잘못된 시간대가 설정되어 있거나 호스트의 시계가 잘못되었을 수 있습니다.
VMware와 Hyper-V는 중간에 떨어집니다. 각각에는 게스트에서 실행되는 도구가있어 시계를 호스트와 주기적으로 동기화하지만 다시 말하면 호스트 시계의 기존 문제에 취약합니다.
테스트 Hyper-V 서버의 게스트도 이상한 동작을 보였습니다. 통합 서비스를 사용하더라도 게스트 시계가 500ppm보다 빠르게 표류하여 ntpd가 작동하지 못하게합니다 ( 이보다 더 빨리 표류하면 시계가 미친 것으로 간주합니다 ). 나는 이러한 손님을 전환했다 chrony 수 있으며, 이 값을 조정 할 수 있습니다.
젠은 이런 점에서 최악이다. 그것은 절대적으로 동기화 가 없으며 게스트에서 NTP를 실행하는 것이 거의 필요합니다. (최신 버전의 Xen은 일종의 동기화가 있지만 아직 개인적으로 작업하지 않았다고 들었습니다.)
퍼블릭 클라우드와 같이 호스트 하이퍼 바이저가 제어 할 수없는 경우 상황이 악화됩니다. 귀하는 호스트 시계와 관련하여 제공자의 자비에 있으며, 동기화를 유지하는데 부지런하지 않으면 귀하는 잃게됩니다.
이 모든 것 때문에 반 정확한 시계조차도 필요하다면 가상 머신에서 NTP 클라이언트를 실행하는 것이 매우 필요합니다. NB : Windows 가상 머신을 실행하는 경우 시계를 지속적으로 조정하는 타사 NTP 클라이언트를 확보하십시오. Windows와 함께 제공되는 클라이언트에 대한 잘못된 구실 은 일주일에 한 번만 시계를 조정하므로 완전히 어리 석습니다.