Я начинающий backend-разработчик. Я присоединился к компании в декабре прошлого года и отвечаю за общую инфраструктуру и внутреннюю разработку.
Мы хотим сократить февральские эксплуатационные расходы нашей компании на AWS примерно на 20 % (ожидается, что они будут взиматься в размере 1600 долларов США) по сравнению с расчетной суммой, а также сократить расходы на использование нашей инфраструктуры примерно на 1300 долларов США в месяц.
С этой целью я хотел бы прекратить использование EC2, определив неиспользуемые сервисы, которые не используются. Проблема в том, что мы не получили pem-ключ от предыдущего разработчика, поэтому у нас нет доступа к AWS EC2 в сервисе.
Кроме того, я понимаю, что вы можете получить доступ к веб-консоли без ключа pem. Однако метод также представляет собой ситуацию, при которой появляется только фраза «соединение не удалось».
[Вопрос]
Есть ли способ получить доступ к EC2 без ранее выданного ключа pem? Есть ли способ выяснить, не используется ли он без доступа?
@LahiruLiyanage Да, это возможно с помощью веб-консоли. Проблема в том, что веб-консоль недоступна, как показано на снимке экрана, который я добавил выше.
Я не вижу скриншот, прикрепленный к вопросу.
Извините, сейчас прикрепил.
Вы можете использовать журналы потоков, чтобы узнать, взаимодействуют ли эти экземпляры с чем-либо еще. Тоже хорошая идея, потому что кажется, что бывший разработчик ушел в плохих отношениях.
Я думаю, можно с уверенностью сказать, что без доступа к машинам вы не сможете сказать, что на них работает и, следовательно, нужны ли они. Вы можете проверить метрики ec2, в частности сетевой ввод-вывод, если ничего не происходит, они могут быть неиспользованными. Но опять же, может быть что-то запланировано только один раз в неделю/месяц/год... (было бы не лучшей идеей - но ни один разработчик не владеет единственным ключом ;-)) Кроме того, они могут быть полностью бездействующими. , но содержат важное содержимое, такое как журналы, которые вы, возможно, захотите или должны сохранить (например, юридические требования).
Если агент SSM установлен на экземплярах, вы можете подключиться через сеанс SSM или использовать документ AWSSupport-ResetAccess
для замены ключа: https://docs.aws.amazon.com/systems-manager/latest/userguide/automation- ec2reset.html
Если вы не можете получить доступ к машине через ssh или ssm, вы можете использовать последовательную консоль.
Другая идея состоит в том, чтобы создать моментальный снимок из экземпляра (ов), а затем запустить новый экземпляр из этого снимка с новой парой ключей EC2. Затем вы можете получить доступ к этому клону и проверить содержимое, не имея доступа к исходным машинам. Хотя, в зависимости от рабочей нагрузки, это может быть вредно для вашего бизнеса, поскольку все может работать параллельно.
Типичный подход к стартапам, в котором я виноват сам, состоит в том, чтобы остановить его и посмотреть, не пожалуется ли кто-нибудь. ;-) Вы можете просто приостановить, а не завершить(!), экземпляры, чтобы позже вы могли запустить их снова. Хотя это может быть опасным подходом. Службы могут не запускаться автоматически, а это означает, что вам потребуется доступ для исправления ошибок вручную. И незнание того, что нужно исправить, не делает это проще.
+1, но вместо того, чтобы запускать новый экземпляр из моментального снимка, я бы просто установил моментальный снимок на экземпляр «исследования», который вы запускаете для этой цели. Таким образом, нет риска, что автоматизированный процесс, который должен выполняться только на одном экземпляре, вызовет проблемы при запуске на втором.
Интересный вопрос. Фактически, без ключа pem мы можем войти в EC2 с помощью веб-консоли и определить, какие службы запущены внутри конкретных экземпляров EC2, и на основе этого мы можем решить, можем ли мы прекратить работу этих экземпляров EC2 или оставить их.