在前置实例上注册时出现InvalidIamUserArnException

时间:2016-04-12 19:05:26

标签: windows amazon-web-services aws-code-deploy

无论我选择什么实例名称,每当我在本地实例上执行以下操作时:

aws deploy register --instance-name test --tags "Key=Name,Value=test" --region us-west-2 --debug

抛出以下异常(总是):

2016-04-12 11:02:52,625 - MainThread - awscli.errorhandler - DEBUG - HTTP Response Code: 400
ERROR
A client error (InvalidIamUserArnException) occurred when calling the RegisterOnPremisesInstance operation: Iam User ARN
 arn:aws:iam::xxx:user/AWS/CodeDeploy/test is not in a valid format
Register the on-premises instance by following the instructions in "Configure Existing On-Premises Instances by Using AWS CodeDeploy" in the AWS CodeDeploy User Guide.

尽管出现此错误,用户仍然在亚马逊上创建,我可以继续使用以下内容注册该实例:

aws deploy register-on-premises-instance --instance-name test --iam-user-arn arn:aws:iam::xxx:user/test
aws deploy install --override-config --config-file codedeploy.onpremises.yml --region us-west-2 --agent-installer s3://aws-codedeploy-us-west-2/latest/codedeploy-agent.msi

实例已注册并且用户已创建,但在部署时,我总是得到"没有主机成功"。 codedeploy代理的日志显示没有错误。

我不确定这里发生了什么,因为在任何一端都没有登录,在codedeploy控制台或在前端机器上的codedeploy代理。有什么想法吗?

请注意我使用的是Windows Embedded Standard 2010(不在支持的列表中)和最新版本的aws cli,但我过去已经成功部署了它(使用以前版本的aws cli)。

2 个答案:

答案 0 :(得分:0)

想出来,如果你尝试让他们部署注册表'为您创建IAM用户。但是,如果您首先创建用户(通过控制台或aws cli),那么它将起作用。

您可以传递选项' - iam-user-arn arn:aws:iam :: xxx:user / OnPremCodeDeploy'使用&awes部署注册表'之后命令。

我手动创建用户,使用正确的访问键手动创建了本地yml,最后运行了:

aws deploy install --overide-config --config-file conf.onpremises.yml --region us-west-2 --agent-installer s3://aws-codedeploy-us-west-2/latest/codedeploy-agent.msi

*至少w / codedeployagent OFFICIAL_1.0.1.950_msi和嵌入式窗口

答案 1 :(得分:0)

您是否可以检查使用CodeDeploy注册本地实例的IAM用户是否具有适当的权限?包括以下内容。

    "iam:CreateAccessKey",
    "iam:CreateUser",
    "iam:DeleteAccessKey",
    "iam:DeleteUser",
    "iam:DeleteUserPolicy",
    "iam:ListAccessKeys",
    "iam:ListUserPolicies",
    "iam:PutUserPolicy",
    "iam:GetUser"

这也可以在这里提到:http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-configure-on-premises-host.html#how-to-configure-on-premises-host-prerequisites