Самый простой способ показать страницу обслуживания во время простоя экземпляра EC2

Мне нужно выполнить техническое обслуживание, которое связано с простоями моего рабочего сервера EC2. В то же время, я бы хотел предоставить вам удобную страницу обслуживания.

Самым простым решением, которое мне удалось найти, является получение минималистичного AMI экземпляра Micro, установка там статической страницы и привязка нашего общего эластичного IP-адреса к этому экземпляру во время обслуживания.

Вопросы:

(1) Есть ли более простой способ (т. Е. Обслуживать некоторую статическую страницу из s3, без необходимости в экземпляре EC2)? [обратите внимание, что я не хочу никаких задержек кэширования DNS, я предпочитаю немедленное переключение как с ec2-associate-address]

(2) Если нет более простого способа, с какого AMI начинать (чтобы он мог работать на микроэкземпляре и предпочтительно загружался с EBS, чтобы его можно было легко сохранить)?


Обновить:

Для справки, вот решение, которое я использовал:

  1. Создайте микро-экземпляр из любой ами, найденной на http://alestic.com/
  2. Установите nginx: sudo aptitude install nginx
  3. Теперь вы можете запустить / остановить / перезапустить его, используя sudo /etc/init.d/nginx start/stop/restart
  4. Отредактируйте файл конфигурации Nginx sudo pico /etc/nginx/nginx.conf
  5. Вместо 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;
    }
  1. Создать страницу (папка уже должна существовать) /var/www/nginx-default/error503.html и удалите /var/www/nginx-default/index.html,
  2. Запустить / Перезапустить Nginx sudo /etc/init.d/nginx start
  3. Теперь вы сделали, и вы могли бы использовать ec2-associate-address YOUR-IP -i YOUR-INSTANCE-ID для сопоставления вашего общедоступного IP-адреса между рабочим сервером и данным экземпляром страницы обслуживания.

2 ответа

Решение

Единственный самый быстрый способ - это тот, который вы уже упомянули, - создать небольшой ami и разместить на нем статическую страницу обслуживания, прикрепив к ней эластичный IP. Не существует жесткого и быстрого правила, согласно которому AMI следует использовать в этом сценарии. Любой микро экземпляр Debian/RHEL/Ubuntu будет работать нормально.

Я предполагаю, что если у вас уже есть второй экземпляр Amazon EC2, вам нужно только перенаправить Elastic IP, подключенный к целевому экземпляру, и подключить его ко второй виртуальной машине только для простоя. Новый vhost с правилом перенаправления, который перехватывает все запросы к этой странице обслуживания, должен сделать свое дело.

Другие вопросы по тегам