一尘不染

boto3客户端NoRegionError:仅在某些情况下必须指定区域错误

linux

我有一个boto3客户:

boto3.client('kms')

但是它发生在新机器上,它们动态地打开和关闭。

    if endpoint is None:
        if region_name is None:
            # Raise a more specific error message that will give
            # better guidance to the user what needs to happen.
            raise NoRegionError()

为什么会这样呢?为什么只有部分时间呢?


阅读 381

收藏
2020-06-07

共1个答案

一尘不染

您必须以一种或另一种方式告诉boto3您希望在哪个区域kms创建客户端。可以使用region_name参数明确地完成此操作,如下所示:

kms = boto3.client('kms', region_name='us-west-2')

或者您可以在~/.aws/config文件中具有与个人资料相关联的默认区域,如下所示:

[default]
region=us-west-2

或者您可以使用如下环境变量:

export AWS_DEFAULT_REGION=us-west-2

但您确实需要告诉boto3使用哪个区域。

2020-06-07