【发布时间】:2025-11-23 07:40:01
【问题描述】:
我有一个带有用于计算的 Fargate 配置文件的 EKS 集群。我已在 Fargate 配置文件上使用 2 个托管策略配置了 Pod 执行角色。
- AmazonEKSFargatePodExecutionRolePolicy
- AmazonDynamoDBFullAccess
代码作为 CronJob 运行,首先从 DynamoDb 中提取配置:
dynamodb = boto3.resource('dynamodb', region_name=region)
table = dynamodb.Table(table_name)
response = table.get_item(
Key = {
'Id': config_id
})
当代码到达这一点时,它总是会出现异常:
引发 NoCredentialsError()
botocore.exceptions.NoCredentialsError:无法找到凭据
我知道我可以在初始化 boto3 客户端时直接传递 AWS 凭证,但出于安全原因我不想这样做。
我最初使用自动扩展组中的 EC2 实例而不是 Fargate 来测试代码以进行计算。
如何解决此错误?
【问题讨论】:
标签: python amazon-web-services kubernetes amazon-eks aws-fargate