问题描述
我正在使用 Boto3
运行使用 Fargate
的任务定义,并在其中安装一个空的 EFS 系统。
SDK 代码:
def run_fargate_task(self):
response = self.ecs.run_task(
cluster='XXXXXXXX',count=1,enableECSManagedTags=True,launchType='FARGATE',networkConfiguration={
'awsvpcConfiguration': {
'securityGroups': [
'sg-XXXXXXXXXXXXXXXXX',],'subnets': [
'subnet-XXXXXXXXXXXXXXXXX','subnet-XXXXXXXXXXXXXXXXX','assignPublicIp': 'ENABLED'
}
},taskDeFinition='XXXXX:1'
)
当我运行 run_fargate_task()
函数时,它在大多数情况下都会通过此响应元数据成功:
"ResponseMetadata": {
"RequestId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX","HTTPStatusCode": 200,"HTTPHeaders": {
"x-amzn-requestid": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX","content-type": "application/x-amz-json-1.1","content-length": "1297","date": "Fri,11 Jun 2021 14:34:46 GMT",},"RetryAttempts": 0,
但有时我会收到此错误:
ResourceInitializationError:无法调用 EFS utils 命令来设置 EFS 卷:stderr:无法解析“fs-XXXXXX.efs.us-east-2.amazonaws.com” - 检查您的文件系统 ID 是否正确。
我确定 EFS 系统 ID 是正确的,因为它有时会在不更改代码的情况下成功。此外,我确定我的安全组的入站规则是为 EFS 设置的,端口为 2049
。
此外,我确保我没有使用相同的 EFS 系统 ID 运行多个任务。
即使在停止任务(成功运行时)并等待几分钟(希望 EFS 系统不被旧任务占用)后,问题仍然存在。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)