从mac os x创建aws vpc时遇到问题,但是完全相同的命令/角色是从ubuntu开始的。
我已经在Mac OS X上采取的步骤:
通过以上所有更改,我收到此错误:
PLAY ***************************************************************************
TASK [vpc : Creating an AWS VPC inside mentioned Region] ***********************
task path: /Users/arbab/ansible2/aws/roles/vpc/tasks/main.yml:2
ESTABLISH LOCAL CONNECTION FOR USER: xxxxxxxxx
127.0.0.1 EXEC ( umask 22 && mkdir -p "$( echo $HOME/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196 )" && echo "$( echo $HOME/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196 )" )
127.0.0.1 PUT /var/folders/rq/yhlwx3c971x6p88qwmvhpg600000gn/T/tmpoyL88U TO /Users/arbab/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196/ec2_vpc
127.0.0.1 EXEC LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 /usr/bin/python /Users/arbab/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196/ec2_vpc; rm -rf "/Users/arbab/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196/" > /dev/null 2>&1
An exception occurred during task execution. The full traceback is:
Traceback (most recent call last):
File "/Users/arbab/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196/ec2_vpc", line 2867, in <module>
main()
File "/Users/arbab/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196/ec2_vpc", line 700, in main
(vpc_dict, new_vpc_id, subnets_changed, igw_id, changed) = create_vpc(module, vpc_conn)
File "/Users/arbab/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196/ec2_vpc", line 338, in create_vpc
previous_vpc = find_vpc(module, vpc_conn, id, cidr_block)
File "/Users/arbab/.ansible/tmp/ansible-tmp-1453191395.76-205801730631196/ec2_vpc", line 198, in find_vpc
previous_vpcs = vpc_conn.get_all_vpcs(None, {'cidr': cidr, 'state': 'available'})
File "/Library/Python/2.7/site-packages/boto/vpc/__init__.py", line 111, in get_all_vpcs
return self.get_list('DescribeVpcs', params, [('item', VPC)])
File "/Library/Python/2.7/site-packages/boto/connection.py", line 1186, in get_list
raise self.ResponseError(response.status, response.reason, body)
boto.exception.EC2ResponseError: EC2ResponseError: 401 Unauthorized
<?xml version="1.0" encoding="UTF-8"?>
<Response><Errors><Error><Code>AuthFailure</Code><Message>AWS was not able to validate the provided access credentials</Message></Error></Errors><RequestID>2318e170-a400-499c-8713-4c0b3ec1850d</RequestID></Response>
fatal: [127.0.0.1]: FAILED! => {"changed": false, "failed": true, "invocation": {"module_name": "ec2_vpc"}, "parsed": false}
PLAY RECAP *********************************************************************
127.0.0.1 : ok=0 changed=0 unreachable=0 failed=1
答案 0 :(得分:1)
错误存在未经授权的错误
boto.exception.EC2ResponseError: EC2ResponseError: 401 Unauthorized
如果AWS凭据设置正确,您可以通过env
命令查看吗? ansible期望的名字是:
export AWS_ACCESS_KEY_ID='AK123'
export AWS_SECRET_ACCESS_KEY='abc123'