我的CloudFormation模板(AWS::EC2::Instance
)从用户数据部分调用python脚本。该脚本尝试更新胶水开发端点的公钥。这是代码的相关部分:
glue_client = boto3.client('glue',
endpoint_url=endpoint or GLUE_CONF.get('endpoint_url'),
region_name=GLUE_CONF.get('region_name'))
glue_client.update_dev_endpoint(EndpointName=endpoint_name, PublicKey=public_key)
在完成EC2实例创建后,第一行手动启动会很好,但是如果作为用户的一部分被调用,则失败并出现以下错误数据脚本:
Traceback (most recent call last):
File "/home/ec2-user/setup_notebook_server.py", line 448, in <module>
key_pw=args.keypw, endpoint=args.endpoint)
File "/home/ec2-user/setup_notebook_server.py", line 326, in automated_main
generate_keypair_and_update_dev_endpoint(endpoint=endpoint)
File "/home/ec2-user/setup_notebook_server.py", line 268, in generate_keypair_and_update_dev_endpoint
update_dev_endpoint_and_wait(get_dev_endpoint_name(), public_key, endpoint)
File "/home/ec2-user/setup_notebook_server.py", line 213, in update_dev_endpoint_and_wait
region_name=GLUE_CONF.get('region_name'))
File "/usr/local/lib/python2.7/site-packages/boto3/__init__.py", line 91, in client
return _get_default_session().client(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/boto3/session.py", line 263, in client
aws_session_token=aws_session_token, config=config)
File "/usr/local/lib/python2.7/site-packages/botocore/session.py", line 838, in create_client
client_config=config, api_version=api_version)
File "/usr/local/lib/python2.7/site-packages/botocore/client.py", line 80, in create_client
cls = self._create_client_class(service_name, service_model)
File "/usr/local/lib/python2.7/site-packages/botocore/client.py", line 106, in _create_client_class
service_id = service_model.service_id.hyphenize()
File "/usr/local/lib/python2.7/site-packages/botocore/utils.py", line 730, in __get__
computed_value = self._fget(obj)
File "/usr/local/lib/python2.7/site-packages/botocore/model.py", line 307, in service_id
service_name=self._service_name
botocore.exceptions.MissingServiceIdError: The model being used for the service glue is missing the serviceId metadata property, which is required.
此异常是什么意思,我该如何解决?
答案 0 :(得分:0)
这是我的事情,因为Boto库的版本太旧了。这些库的组合为我解决了这个问题:boto-2.38.0 boto3-1.7.84 botocore-1.10.84