вторник, 11 октября 2011 г.

ESX 4.x timezone


За последний месяц я получил заметное количество писем с вопросом “ААААА!!!11 мы все умрем в октябре не будет перевода часов а ESX будет думать что будет что делать?”. Разумеется, я немного шучу над формулировкой, но суть такая.

Для тех из нас, кто использует ESXi – проблемы нет, так как ESXi в принципе не знает что такое “часовой пояс”, и его локальное время – всегда UTC.

А вот для серверов ESX, версии 4 и 3 (вторая уж вряд ли у кого сохранилась?), проблема есть.

К сожалению, порадовать нечем – на текущий момент мне неизвестно о каких-либо официальных обновлениях для ESX, которые бы учитывали этот нюанс.

UPD. есть мнение:
Можно открыть кейс в тех суппорте при наличии поддержки с вопросом, что делать с временными зонами :) и там вобщем-то отвечают, что уже вот-вот выйдет патч.


К счастью, есть чем порадовать – со мной поделились неофициальным рецептом:

Если у вас до сих пор используется ESX (не ESXi) версий 4/ 4.1, для которых нет обновления тайм-зон,
рекомендую следующий способ обновления:

1.       Скачать rpm-пакет tzdata-2011h-2.el5.i386 или tzdata-2011h-1.el5.i386 и положить его на датастор, доступный всем серверам виртуализации.

Я брал тут -
http://rpm.pbone.net/index.php3/stat/4/idpl/16966133/dir/scientific_linux_5/com/tzdata-2011h-2.el5.i386.rpm.html
зеркало.

Changelog:
2011-08-11 - Petr Machata <pmachata@redhat.com> - 2011h-2.el5
- Patch for upcoming change in Newfoundland.  The transition time
  changes from 12:01 AM to 2:00 AM.
- Resolves: #729697
2011-06-28 - Petr Machata <pmachata@redhat.com> - 2011h-1.el5
- Upstream 2011h:
  - Russia abandons DST in 2011.
  - *.tab: change AN (Netherlands Antilles) to CW (Curacao)
- Resolves: #701268
2.       Выполнить команду для проверки настроек
cat /etc/localtime
запомнить или записать результат


3.       Выполнить команду для проверки настроек
zdump -v /etc/localtime |grep 2011
убедиться, что есть записи с isdst=1


4.       Выполнить команду для установки пакета
rpm -i --nodeps --force tzdata-2011h-2.el5.i386.rpm


5.       Выполнить команду для проверки настроек
zdump -v /etc/localtime |grep 2011
убедиться, что присутствуют только записи с isdst=0


6.       Выполнить команду для проверки настроек
cat /etc/localtime

убедиться, что результат выполнения команды отличается от результата в пункте 2

tnx коллегам из Крока.

21 комментарий:

  1. Миша, вторая версия у меня сохранилась - я ее дистрибутив на полке держу для красоты :)

    ОтветитьУдалить
  2. красивый диск и у меня лежит в хорошем месте :-)

    я имел в виду установленный и используемый

    ОтветитьУдалить
  3. по поводу патча - ну что ж, не в первый раз мы оказались быстрее :)
    тут каждый выбирает сам - можно ждать, можно исправить ситуацию и не беспокоиться

    ОтветитьУдалить
  4. от наличия еще одного способа хуже точно не будет.

    ОтветитьУдалить
  5. А для тройки тоже выпустят патч?

    ОтветитьУдалить
  6. лично я уверен что да

    но официального подтверждения у меня нет

    ОтветитьУдалить
  7. Простите, зачем так сложно?
    Чем не устраивает способ через powercli:
    set-vmhost -vmhost "hostname" -TimeZone "Etc/GMT-4"

    Зачем обновлять базу olson timezone, если автоматический перевод зоны не требуется?

    ОтветитьУдалить
  8. я правильно понимаю, что если эту команду выполнить прямо сейчас, то время станет некорректным?

    и выполнять ее надо в бывшую ночь перевода часов?

    ОтветитьУдалить
  9. Время останется корректным. сейчас время как раз GMT+4 (т.е. GMT+3 и летнее смещение)
    Установить можно сейчас, но как и все *nix системы ESX надо будет перезапустить для применения временной зоны.

    Смысл действий в начальном посте в обновлении базы часовых поясов (т.н. Olson timezone), в свежей версии которой уже содержится информация, что в зоне "Europe/Moscow" (и прочих российских) зона становится GMT+4 и нет летнего смещения (isdst=0).

    ОтветитьУдалить
  10. хм, да, что-то я протупил.

    спасибо.

    ОтветитьУдалить
  11. Данный метод не подходит для Украины и Белоруссии, т.к. tz database о изменениях в этих странах ничего не знает :(
    Причем, это касается всех ОС использующих olson timezone.

    ОтветитьУдалить
  12. Вроде в 4 и 4.1 при инсталяции хостов время берется в UTC+смещение а не в гринвечевском формате - GMT

    ОтветитьУдалить
  13. Смещение меняется при переходе на зимнее/летнее время.

    ОтветитьУдалить
  14. Для Украины и Белоруссии подойдет 2011k или 2011l, оба уже есть в репозиториях Федоры.
    Поскольку пакет меняет только файлы в /usr/share/zoneinfo , то федорный прекрасно подойдет для редхата-центоси-консоли ESX, даже если RH не успеет подсуетиться и выложить свежий tzdata в свои репозитории.

    ОтветитьУдалить
  15. Добрый день !

    А как автоматизировать применение такого kb - http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&docType=kc&externalId=1189&sliceId=1&docTypeID=DT_KB_1_1&dialogID=231023640&stateId=0 0 231025314 ?
    Чтобы отредактировать vmx надо остановить виртуалку, а это сделать нельзя. Точнее можно, но 110 раз такое делать ... хотелось бы перегрузить все сразу. Можно править параметры через настройки, но добавлять по одной строчке ...

    ОтветитьУдалить
  16. по поводу правки конфига - я бы смотрел в сторону powercli. Гугл нашел рецепты, как при помощи powerCLI изменять vmx. лично я их не пробовал, но думаю все будет ок.

    комментарий "NTP" это к чему?

    ОтветитьУдалить
  17. NTP сервер не выправит время автоматом?

    ОтветитьУдалить
  18. ntp выправит...с какой-то периодичностью. а в какие-то моменты время опять будет становится неправильным из за синхронизации через vmware tools.

    в некоторых ситуациях.

    ОтветитьУдалить
  19. C NTP сложности - синхронизирует он, AFAIK, время по UTC, так что со сменой зон не поможет совсем.

    ОтветитьУдалить
  20. тут про другое уже вопрос был(см ссылку на kb) - хотя в свойствах vmware tools отключена синхронизация времени через них, она все равно в некоторых ситуациях будет происходить. и иногда это может привести к неприятным спецэфектам из за смещения utc времени для гостя, безотносительно часовых поясов.

    ОтветитьУдалить