You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

参考AWS QuickStart RDGW模板在现有VPC部署的CloudFormation问题

CloudFormation Init & S3 Bucket Technical Guidance for AWS RD Gateway QuickStart

Hey there, let's walk through the key technical questions and fixes around CloudFormation Init's S3 bucket calls for that Remote Desktop Gateway QuickStart template you're working with:

1. Fixing the Truncated S3 Path Reference

First off, that truncated https://${QSS3Bucke... you saw is just a partial snippet of the full CloudFormation parameter reference. The complete path in the template should look like https://${QSS3BucketName}.s3.amazonaws.com/${QSS3KeyPrefix}path/to/asset — here's what you need to verify:

  • Parameter Values: When deploying the template, make sure you input the correct QSS3BucketName and QSS3KeyPrefix. For the official QuickStart, use quickstart-reference as the bucket name, and microsoft/rdgateway/latest/ as the prefix (don't skip the trailing slash — it's critical for proper path resolution).
  • Variable Substitution: CloudFormation will replace those ${ParameterName} placeholders with your input values at deployment time. If you're seeing truncation in your own copy of the template, double-check that you didn't accidentally cut off the reference when copying.

2. Troubleshooting S3 Access Failures in CFN Init

If CloudFormation Init throws errors when trying to pull assets from S3, these are the most common fixes:

  • IAM Role Permissions: The RDGW instance (launched via RDGWLaunchConfiguration) uses an IAM role created by the template. Ensure this role has a policy allowing s3:GetObject access to the target bucket and prefix. A sample policy would look like:
    {
        "Effect": "Allow",
        "Action": "s3:GetObject",
        "Resource": "arn:aws:s3:::${QSS3BucketName}/${QSS3KeyPrefix}*"
    }
    
  • Bucket Policy Checks: If you're using a custom S3 bucket (not the official QuickStart one), confirm the bucket policy grants access to the instance's IAM role ARN. Avoid making the bucket public — IAM roles are the secure way to handle this.
  • Region Endpoint Mismatch: If your S3 bucket and EC2 instance are in different regions, ensure the S3 URL uses the region-specific endpoint (e.g., https://bucket-name.s3.us-west-2.amazonaws.com/ for us-west-2). The official template handles this for its default bucket, but custom buckets may need manual adjustment.

3. Validating & Debugging CFN Init Execution

  • Pre-Deployment Validation: Use the AWS CLI to check the template's syntax before deploying, which can catch parameter reference errors early:
    aws cloudformation validate-template --template-url https://s3.amazonaws.com/quickstart-reference/microsoft/rdgateway/latest/templates/rdgw-standalone.template
    
  • Post-Deployment Logs: If CFN Init fails after deployment, check the instance logs for details. On Windows RDGW instances, look at C:\ProgramData\Amazon\EC2-Windows\Launch\Log\UserdataExecution.log — this log will show exactly where the S3 download or script execution failed.

4. Using a Custom S3 Bucket for Your Assets

If you want to host the QuickStart assets in your own bucket:

  • Copy all files from the official QuickStart S3 path to your bucket, keeping the same folder structure.
  • When deploying the template, set QSS3BucketName to your bucket's name and QSS3KeyPrefix to the folder path where you stored the assets (again, don't forget the trailing slash).
  • Update the instance's IAM role policy to grant access to your custom bucket as mentioned earlier.

内容的提问来源于stack exchange,提问作者AmigoSe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:18:51