You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法创建Fargate类型的AWS Batch作业定义求助

创建AWS Fargate类型的Batch作业定义(Ansible实现)

要把现有Ansible代码改成创建Fargate类型的Batch作业定义,需要针对Fargate的特性做几个关键调整,核心是在原有container类型基础上添加Fargate专属配置:

修改后的完整代码

- name: 创建Fargate类型的Batch作业定义
  batch_job_definition:
    job_definition_name: My Fargate Batch Job Definition
    state: present
    type: container
    platform_capabilities:
      - FARGATE
    parameters:
      Param1: Val1
      Param2: Val2
    image: <Docker镜像地址>
    vcpus: 0.5  # Fargate允许的vCPU规格:0.25/0.5/1/2/4/8
    memory: 1024  # 对应0.5vCPU的内存范围是512-2048MB
    command:
      - python
      - run_my_script.py
      - arg1
    job_role_arn: <作业角色ARN>
    execution_role_arn: <执行角色ARN>  # Fargate必须指定,用于拉取镜像、访问AWS服务
    network_configuration:
      assign_public_ip: ENABLED  # 根据需求选择是否分配公网IP
      subnets:
        - <子网ID1>
        - <子网ID2>
      security_groups:
        - <安全组ID>
    attempts: 3
  register: job_definition_create_result

关键修改说明

  • 添加platform_capabilities: [FARGATE]:这是标记作业定义为Fargate类型的核心参数,虽然type仍为container,但该参数会指示AWS使用Fargate调度器。
  • 调整vcpus和memory:Fargate有固定的CPU/内存组合限制,必须使用官方允许的规格(例如0.25vCPU对应512-1024MB内存,0.5vCPU对应512-2048MB等),不可随意设置。
  • 新增execution_role_arn:Fargate需要此角色完成镜像拉取、日志推送等操作,必须指定具备对应权限的IAM角色。
  • 添加network_configuration:Fargate运行在VPC网络环境中,必须指定子网和安全组,同时可根据需求选择是否分配公网IP(需访问公网拉取镜像时建议开启)。

内容的提问来源于stack exchange,提问作者Vinod Shunmugavel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 08:42:36