【发布时间】:2019-03-07 07:19:35
【问题描述】:
我已将设计文件(如 images/css/js)上传到 S3 存储桶,现在我需要将这些文件从 S3 存储桶复制到 EC2 Windows 实例,只要它们上传到存储桶/从存储桶中删除。我已经使用 Powershell 脚本创建了一个 Lambda 函数,但我看不到任何访问 EC2 实例并在那里复制文件的方法。我尝试了以下脚本,但看到类似Cannot find drive. A drive with the name 'C' does not exist
Start-EC2Instance -InstanceIds i-********
foreach ($i in Get-ChildItem -Path "C:\Windows")
{
Write-Host $i.FullName
}
有人可以帮忙吗?
【问题讨论】:
-
Lambda 函数在云中运行,而不是在 E2 实例上。它无权访问 EC2 实例。
-
您可能希望针对实例 ID 运行命令 - 使用 ssm - 类似这样: $cancelCommandResponse=Send-SSMCommand -InstanceId @('Instance-ID','Instance-ID') -DocumentName AWS-RunPowerShellScript -Comment 'Demo AWS-RunPowerShellScript with two instances' -Parameter @{'commands'='Start-Sleep –Seconds 120; dir C:\'} --refer: docs.aws.amazon.com/systems-manager/latest/userguide/… --- 你可以嵌入你的命令 - 应该在一系列命令中在实例“内部”运行 -Parameter @{'commands'='first-command'; '第二命令'}
标签: amazon-web-services powershell amazon-s3 amazon-ec2 aws-lambda