2

У меня есть один сервер экземпляра развернутого на AWS - Elastic Beanstalk, который нуждается конфигурации часового пояса, и я изменил часовой пояс, как при входе в EC2 среду с SSH, и обновлять его с приведенные ниже команды linux;Настройка AWS Elastic Beanstalk часового пояса для Auto Scaling

sudo rm /etc/localtime 
sudo ln -sf /usr/share/zoneinfo/Europe/Istanbul /etc/localtime 
sudo reboot 

Все в порядке, поскольку сервер работает как один экземпляр. Проблема возникла, поскольку я хотел использовать функцию автоматического масштабирования, балансировки нагрузки. В одном экземпляре обновление часового пояса в AMI Linux прекрасное, но в режиме автомасштабирование, поскольку экземпляры создаются/уничтожаются/воссозданы в соответствии с пороговыми метриками, вся конфигурация теряется.

Мой простой вопрос: как я могу изменить/настроить часовой пояс для автоматического масштабируемого режима балансировки нагрузки в AWS Elastic Beanstalk?

+0

Дело в том, что это «перезагрузка sudo». Я не думаю, что вам это нужно. Должен быть способ перезапустить службу часов. Предполагая, что вы можете, вы можете сделать все это, используя файл конфигурации ebextension –

ответ

9

вы можете настроить новый начальный сервер с помощью ebextensions.
Вот пример, который работает для меня. Добавьте следующую команду в файл .ebextensions/timezone.config:

commands: 
    set_time_zone: 
     command: ln -f -s /usr/share/zoneinfo/US/Pacific /etc/localtime 
+0

Отличный ответ. Все хорошо для меня. – hguzman

-1

Вы также можете настроить его с помощью SSH в командной строке:

при подключении к Elastic Beanstalk Instance: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/set-time.html#change_time_zone

sudo ln -sf /usr/share/zoneinfo/America/Montreal /etc/localtime 

Вы можете подключиться к вашему экземпляру EB с помощью инструмента командной строки eb. http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-cmd-commands.html

eb ssh 
+0

Единственная проблема с этим решением заключается в том, что он не является устойчивым. Если ваши экземпляры Elastic Beanstalk будут восстановлены (или автоматические шкалы вашего приложения), новые экземпляры не будут автоматически настроены и потребуют вмешательства вручную 'ssh'. Ответ '.ebextensions' от @tal является автоматическим и живет в конфигурации вашего приложения. – Dan

1

Ответов здесь удались только работать для меня частично (я имел ошибки развертывания при использовании ответов выше). После некоторых изменений для меня работало. Я считаю, что это имеет какое-то отношение к «cwd» и «permissions».

commands: 
    0000_0remove_localtime: 
    command: rm -rf /etc/localtime 
    0000_1change_clock: 
    command: sed -i 's/UTC/Asia\/Singapore/g' /etc/sysconfig/clock 
    cwd: /etc/sysconfig 
    0000_2link_singapore_timezone: 
    command: ln -f -s /usr/share/zoneinfo/Asia/Singapore /etc/localtime 
    cwd: /etc 
Смежные вопросы