Ansible EC2 Python错误:ValueError:无法解码任何JSON对象
我正在愉快地前进,一切正常,突然我的所有EC2 Ansible操作都出现了错误(关于重建的警告以前就在那里,不是问题):Ansible EC2 Python错误:ValueError:无法解码任何JSON对象,python,amazon-ec2,ansible,Python,Amazon Ec2,Ansible,我正在愉快地前进,一切正常,突然我的所有EC2 Ansible操作都出现了错误(关于重建的警告以前就在那里,不是问题): 我在AWS控制台中的所有操作仍然成功。我也遇到了这个问题。结果是我的AWS钥匙出了问题。以下是我的建议: 验证您是否有有效的密钥。我知道这似乎很明显,但从这里开始:-) 如果您正在使用export AWS\u SECRET\u ACCESS\u KEY=…在您的环境中设置它们,那么它们周围的标点符号必须正确。我的看起来像 导出AWS\u ACCESS\u KEY\u ID=“
我在AWS控制台中的所有操作仍然成功。我也遇到了这个问题。结果是我的AWS钥匙出了问题。以下是我的建议:
export AWS\u SECRET\u ACCESS\u KEY=…
在您的环境中设置它们,那么它们周围的标点符号必须正确。我的看起来像导出AWS\u ACCESS\u KEY\u ID=“ASFSADFSDF”
(带引号)
导出AWS\u SECRET\u ACCESS\u KEY=ADSFASFAASFASDFSDSFDASDFSADF
(无引号)
sudo pip安装boto
即使密钥有效,也值得检查分配给用户的权限。
ec2-user]# ansible -m ping -u ec2-user all
/usr/lib64/python2.6/site-packages/Crypto/Util/number.py:57: PowmInsecureWarning: Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.
_warn("Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.", PowmInsecureWarning)
Traceback (most recent call last):
File "/root/ansible/bin/ansible", line 194, in <module>
(runner, results) = cli.run(options, args)
File "/root/ansible/bin/ansible", line 112, in run
inventory_manager = inventory.Inventory(options.inventory, vault_password=vault_pass)
File "/root/ansible/lib/ansible/inventory/__init__.py", line 118, in __init__
self.parser = InventoryScript(filename=host_list)
File "/root/ansible/lib/ansible/inventory/script.py", line 49, in __init__
self.groups = self._parse(stderr)
File "/root/ansible/lib/ansible/inventory/script.py", line 57, in _parse
self.raw = utils.parse_json(self.data)
File "/root/ansible/lib/ansible/utils/__init__.py", line 552, in parse_json
results = json.loads(data)
File "/usr/lib64/python2.6/json/__init__.py", line 307, in loads
return _default_decoder.decode(s)
File "/usr/lib64/python2.6/json/decoder.py", line 319, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib64/python2.6/json/decoder.py", line 338, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
ec2-user]# /etc/ansible/hosts
Looks like AWS is down again:
EC2ResponseError: 403 Forbidden
<?xml version="1.0" encoding="UTF-8"?>
<Response><Errors><Error><Code>UnauthorizedOperation</Code><Message>You are not authorized to perform this operation.</Message></Error></Errors><RequestID>9c499f04-3fd8-47cd-a7e4-655af47c1564</RequestID></Response>