Мне нужно выполнить некоторое обслуживание, которое связано с простоями моего рабочего сервера EC2. Тем временем я хотел бы обслуживать некоторую удобную для пользователя страницу обслуживания.
Самое простое решение, которое мне удалось придумать, - это взять какой-нибудь минималистичный AMI экземпляра Micro, настроить там статическую страницу и связать наш общедоступный эластичный IP-адрес с этим экземпляром во время обслуживания.
Вопросы следующие:
(1) Есть ли более простой способ (т.е. обслуживать статическую страницу из s3 без необходимости в экземпляре EC2)? [обратите внимание, что мне не нужны задержки кеширования DNS, я предпочитаю немедленное переключение, как с ec2-associate-address]
(2) Если нет более простого способа, с какого AMI начать (чтобы он мог работать на микроэкземпляре и предпочтительно загружался из EBS, чтобы его можно было легко сохранить)?
Обновить:
Для записи вот решение, которое я использовал:
sudo aptitude install nginx
sudo /etc/init.d/nginx start/stop/restart
sudo pico /etc/nginx/nginx.conf
include /etc/...
В строке вставьте следующее:server { root /var/www/nginx-default; location / { if (-f $document_root/error503.html) { return 503; } } # error 503 redirect to error503.html error_page 503 @maintenance; location @maintenance { rewrite ^(.*)$ /error503.html break; }
/var/www/nginx-default/error503.html
и удалите /var/www/nginx-default/index.html
.sudo /etc/init.d/nginx start
ec2-associate-address YOUR-IP -i YOUR-INSTANCE-ID
чтобы сопоставить ваш общедоступный IP-адрес между производственным сервером и этим экземпляром, обслуживающим страницу обслуживания.Единственный самый быстрый способ - это тот, о котором вы уже упоминали, создать небольшой файл ami и разместить на нем статическую страницу обслуживания, присоединив к нему эластичный IP-адрес. Не существует жесткого правила, определяющего, какой AMI следует использовать в этом сценарии. Любой микроэкземпляр Debian / RHEL / Ubuntu подойдет.
Я предполагаю, что если у вас уже есть второй экземпляр Amazon EC2, вам нужно только перенаправить эластичный IP-адрес, прикрепленный к целевому экземпляру, и подключить его ко второй виртуальной машине только на время простоя. Новый виртуальный хост с правилом перенаправления, которое улавливает все запросы к этой странице обслуживания, должен помочь.