首页 > 解决方案 > 如何在 aws 作业定义上设置共享内存大小?

问题描述

我有一个 JSON 文件形式的 AWS 作业定义。而且,我正在使用 AWS CLI 命令来注册定义, aws --region us-east-2 batch register-job-definition --cli-input-json "file://jobdef.json"

这是我的 jobdef.json 内容,

{
    "jobDefinitionName": "def1",
    "type": "container",
    "containerProperties": {
        "image": "<imageArn>",
        "vcpus": 4,
        "memory": 14500,
        "command": [],
        "jobRoleArn": "arn:aws:iam::<accountid>:role/<rolename>",
        "volumes": [],
        "environment": [],
        "mountPoints": [],
        "ulimits": [
            {
                "hardLimit": 500000,
                "name": "nofile",
                "softLimit": 200000
            }
        ],
        "resourceRequirements": [],
        "linuxParameters": {
          "sharedMemorySize": 2000
        }
    }
}

当我执行注册命令时,它会抛出一个错误Unknown parameter in containerProperties.linuxParameters: "sharedMemorySize", must be one of: devices

AWS 文档说该参数sharedMemorySizelinuxParameters.

该命令在没有linuxParameters.

有人可以帮助我注册具有共享内存大小的作业定义吗?

标签: amazon-web-servicesdevopsamazon-ecsaws-batch

解决方案


通过升级 awscli 版本,问题已得到解决。以前我使用的是版本1.18,现在我已经升级到2.0.


推荐阅读