Когда я запускаю экземпляр EC2 из определенного AMI через веб-консоль, он работает просто отлично, и я могу без проблем использовать RDP.
Но когда я запускаю другой (идентичный) экземпляр с помощью лямбды aws, я не могу RDP в экземпляр
Подробнее
Вот лямбда, используемая для запуска экземпляра
import boto3
REGION = 'ap-southeast-2'
AMI = 'ami-08e9ad7d527e4e95c'
INSTANCE_TYPE = 't2.small'
def lambda_handler(event, context):
EC2 = boto3.client('ec2', region_name=REGION)
init_script = """<powershell>
powershell "C:\\Users\\Administrator\\Desktop\\ScriptToRunDaily.ps1"
aws ec2 terminate-instances --instance-ids 'curl http://169.254.169.254/latest/meta-data/instance-id'
</powershell>"""
instance = EC2.run_instances(
ImageId=AMI,
InstanceType=INSTANCE_TYPE,
MinCount=1,
MaxCount=1,
InstanceInitiatedShutdownBehavior='terminate',
UserData=init_script
)
Я вижу запуск экземпляра в консоли AWS. Все выглядит нормально, пока я не перехожу к удаленному входу, где приглашение «Инициирование удаленного сеанса» занимает ~ 15 секунд и возвращает
We couldn't connect to the remote PC. Make sure the PC is turned on and connected to the network, and that remote access is enabled.
Error code: 0x204
Примечание
Когда я нажимаю «попытаться подключиться к экземпляру через консоль AWS», он позволяет мне загрузить файл RDP, однако он не отображает опцию «Получить пароль», как это происходит, если я запускаю точно такой же AMI через консоль (в отличие от лямбды)
Я подозреваю, что мне может понадобиться связать экземпляр с парой ключей при запуске?
Также обратите внимание
Перед созданием этого конкретного AMI я вошел в систему и изменил пароль, поэтому мне действительно не нужно создавать его с использованием файла .pem
.