有关本节中所述步骤的完整详细信息,请参阅官方 Amazon AWS PowerShell 文档。
必备条件
-
如果还没有 Amazon AWS 帐户,请创建一个帐户。
-
确保在 IAM 角色中允许以下策略以便成功部署。
s3:PutObject s3:PutObjectAcl s3:GetBucketLocation ec2:DescribeNetworkInterfaces ec2:ModifyNetworkInterfaceAttribute ec2:CreateNetworkInterface ec2:DescribeInstances ec2:RunInstances ec2:TerminateInstances ec2:DescribeSubnets ec2:DescribeSecurityGroups ec2:DescribeAddresses ec2:AssociateAddress ec2:DescribeRegions ec2:DescribeImages ec2:CreateTags
步骤
-
在 AWS 控制台中,创建访问密钥,并获取访问密钥 ID 和私有访问密钥。请在默认配置文件中设置这些内容。
仅当您没有访问密钥 ID 和私有访问密钥时,此步骤才适用
Set-AWSCredential -AccessKey AKIAI6428NKYOEXAMPLE ` -SecretKey bvfhkvvfhsbvhsdbhfbvfhfhvfhdskvbhfvbfhEXAMPLE ` -StoreAs default -
在 Amazon S3 中创建一个存储桶,以存储 Unified Access Gateway
.vmdk映像(如果尚不存在存储桶)。$bucket="uag-images" New-S3Bucket -BucketName $bucket -Region us-east-2 -
在 Amazon AWS 中创建一个名为
vmimport的 IAM 角色,并对该角色应用策略。$importPolicyDocument = @" { "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal":{ "Service":"vmie.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "sts:ExternalId":"vmimport" } } } ] } "@ New-IAMRole -RoleName vmimport -AssumeRolePolicyDocument $importPolicyDocument $bucket="uag-images" $rolePolicyDocument = @" { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::$bucket", "arn:aws:s3:::$bucket/*" ] }, { "Effect": "Allow", "Action": [ "ec2:ModifySnapshotAttribute", "ec2:CopySnapshot", "ec2:RegisterImage", "ec2:Describe*" ], "Resource": "*" } ] } "@ Write-IAMRolePolicy -RoleName vmimport -PolicyName vmimport -PolicyDocument $rolePolicyDocument -
在 EC2 中准备网络环境。可以从 EC2 管理控制台或使用 PowerShell 执行这些步骤。只需完成这些步骤一次,即可为 Unified Access Gateway 部署准备 EC2 环境。为此,至少需要一个子网。对于多网卡 Unified Access Gateway 部署,每个网卡可以位于同一子网中,也可以位于不同的子网中。
-
为每种类型的网卡创建安全组。
安全组包含一组用于限制 TCP 和 UDP 端口访问的防火墙规则。一个安全组可以在多个 Unified Access Gateway 设备之间共享。例如,您可以为
eth0创建一个名为 UAG-Internet 的安全组,并在创建 Unified Access Gateway 设备时自动与第一个网卡相关联。要使用 Horizon,第一个 (UAG-Internet) 可以允许任何客户端中的 TCP 端口 80、443、8443、4172 和 UDP 端口 443、8443、4172。如果要允许通过ssh访问 Unified Access Gateway,则必须在每个.ini文件的“General”节中指定sshEnabled=true。SSH 通常应仅用于测试目的,而不能用于生产部署。您还应确保在安全组中将 TCP 端口 22 上的ssh访问限制为单个源 IP 地址,以便不会向所有人开放。
-
如果可以直接从 Internet 访问 Unified Access Gateway 设备,则每个需要访问权限的网卡都必须具有关联的公共 IP 地址(称为弹性 IP)。
-
对于每个网卡,确定子网 ID、安全组 ID 和公共 IP 分配 ID。如果没有为任何网卡指定安全组 ID,将使用默认安全组。如果未指定公共 IP ID,则该网卡将没有公共 IP 地址,因此无法直接从 Internet 进行访问。如果在一组 Unified Access Gateway 设备前面使用负载均衡器,可能会出现这种情况。
此页面对您有帮助吗?