У меня есть экземпляр CentOS 6.8 EC2 на AWS, который работает уже 1232 дня. 11 октября 2021 года я обнаружил, что команда «s3cmd» не удалась из-за дрейфа аппаратных часов. Я отладил его и обнаружил дрейф аппаратных часов. Затем я синхронизировал аппаратные часы с системными часами, используя команду «hwclock» в CentOS. В cron с момента установки я запланировал задание cron для синхронизации системного времени с помощью команды «ntpdate» каждые 15 минут. Но синхронизация аппаратных часов была установлена на «нет» в конфигурации ntpdate. Итак, я также включил это следующим образом:
vi /etc/sysconfig/ntpdate
SYNC_HWCLOCK=да
Так что с тех пор все выглядело нормально.
Сегодня при проверке машины обнаружил, что аппаратные часы сдвинулись примерно на 3 минуты, при этом системное время показывалось правильно.
- Это виртуальный экземпляр AWS, так какова роль аппаратных часов на уровне гипервизора?
- Если вообще необходима синхронизация аппаратных часов, если да, то почему и как часто?
- Даже после синхронизации аппаратных часов с помощью команды «ntpdate» каждые 15 секунд, откуда берется этот дрейф аппаратных часов?
- Что следует делать в случае установки виртуальных машин в Azure, GC, AWS и т. д., чтобы обеспечить правильную синхронизацию аппаратных часов?
- Если системное время ОС правильное, но аппаратные часы виртуальной машины смещены, почему «s3cmd» выдает следующую ошибку, поскольку она должна проверять системное время ОС?
ОШИБКА: ошибка S3: 403 (RequestTimeTooSkewed): разница между
время запроса и текущее время слишком велики.