Write-Host "Test PowerShell script block"
$ec2MetaData = Invoke-WebRequest -Uri http://169.254.169.254/latest/meta-data/
Write-Host "Instance Id: "$ec2MetaData.InstanceId
如果实例能够正确执行,那么问题很可能是在userdata中的其他命令上。
确认userdata编码: userdata必须以UTF-8格式编码。如果userdata并未以UTF-8格式编码,则实例将无法正确执行。确保使用文本编辑器编辑userdata,并在保存时设置编码为UTF-8。
查看日志文件: 在实例中查看日志文件可能有助于了解出现了什么问题。将以下命令添加到userdata中,以确保日志文件已启用。
Set-ExecutionPolicy RemoteSigned -force
Invoke-Expression ((New-Object Net.WebClient).DownloadString('https://rhel6-x64-bootstrap.s3.amazonaws.com/enable-remoting.ps1'))
New-Item -ItemType Directory -Force -Path C:\logs
New-Item -ItemType file -Force -Path C:\logs\win-psenable.log
Start-Process powershell -NoNewWindow -ArgumentList "-File C:\Windows\Temp\XYZYPSConfiguration.ps1", "-LogPath C:\logs\win-psenable.log" -Verb RunAs
Get-Content C:\logs\win-psenable.log
在实例启动后,查看日志文件,以了解是否存在任何错误或警告。