Когда я создаю экземпляр AWS EC2 с помощью C ++ SDK (следуя их примеру программы) и добавляю run_request.SetKeyName (sKeyName), имя ключа отображается в веб-консоли AWS для экземпляра, но время ожидания SSH, а не подключается к экземпляру.
Если я создаю экземпляр с идентичными параметрами (по умолчанию, за исключением указания того же уже определенного имени ключа), но с использованием веб-консоли AWS, SSH подключается.
Имя ключа отображается как доступный ресурс в веб-консоли. Экземпляр действительно показывает как запущенный. Я не перечисляю тип файла, только «test30», как показано в диалоговом окне запуска EC2 веб-консоли.
Обычно поиск StackOverflow находит мне ответы, но на этот раз не повезло.
Кто-нибудь может подсказать, что мне нужно сделать? Единственное изменение, которое я сделал в коде примера, - это добавление функции SetKeyName ().
Этот код взят из пакета AWS EC2 Cpp SDK:
Aws::EC2::Model::RunInstancesRequest run_request;
run_request.SetImageId(ami_id);
run_request.SetInstanceType(Aws::EC2::Model::InstanceType::t1_micro);
run_request.SetMinCount(1);
run_request.SetMaxCount(1);
run_request.SetKeyName(sshKeyName);
auto run_outcome = ec2.RunInstances(run_request);
if (!run_outcome.IsSuccess())
Экземпляр действительно работает, но пытается связаться с SSH по тайм-ауту. Любая помощь будет оценена.
Дополнительная информация. Использование AWS CLI для создания экземпляра с использованием тех же спецификаций также имеет ту же проблему. Опять же, идентичная команда ssh (кроме отличающегося IP-адреса), как и то, что работает, использовалась для проверки этого. По-прежнему безуспешно.
Имя ключа, которое нам нужно указать, отличается от имени, отображаемого в веб-консоли AWS?