Назад | Перейти на главную страницу

Хост Bastion с высокой доступностью - Лучшие практики, ELB, EIP?

В настоящее время я пытаюсь найти подходящую конфигурацию для обеспечения высокой доступности хоста Bastion. Я хочу достичь следующих целей:

  1. Хосты-бастионы должны выдерживать отказ зоны доступности и отказ экземпляра ec2. Небольшое время простоя (несколько минут) может быть приемлемым.
  2. Хост (ы) бастиона должен быть доступен через постоянную запись DNS.
  3. Никакого ручного вмешательства не требуется

Моя текущая настройка выглядит следующим образом: хост Bastion в группе автоматического масштабирования в двух зонах доступности, ELB перед группой автоматического масштабирования.

Эта установка имеет несколько преимуществ:

Также у него есть недостатки:

Другое очевидное решение - использовать ElasticIP, который, на мой взгляд, имеет несколько недостатков:

Каковы лучшие практики для экземпляров SSH с высокой доступностью, то есть хостов-бастионов?

Похоже, что требуется обеспечить функциональность бастиона по минимально разумной цене с RTO, скажем, 5 минут. Нет RPO, поскольку это фактически прокси без сохранения состояния, который можно легко перестроить.

У меня был бы хост-бастион, определяемый либо как сценарий AMI, либо как CloudFormation (AMI быстрее), внутри группы автомасштабирования с минимальным / максимальным / целевым значением, установленным на 1. У меня не было бы балансировщика нагрузки, поскольку в этом нет необходимости насколько я вижу. Этот экземпляр будет зарегистрирован в Route53 с именем общедоступного домена, поэтому, даже если экземпляр изменится, вы сможете получить к нему доступ, и это должно устранить предупреждения SSH. Я мог бы начать с одного экземпляра в каждой подсети, но, вероятно, отключил бы один, если они достаточно надежны - они должны быть.

Развертывание хостов-бастионов CloudFormation описано Amazon Вот. У Amazon есть руководство по передовой практике Вот. Вы не должны обращаться к внутренним ресурсам, используя их эластичный IP-адрес, поскольку это общедоступные IP-адреса и трафик к ним платный, тогда как частный IP-трафик не взимается. Доменные имена дешевле. Это может потребовать некоторой настройки скрипта CloudFormation.