AWS Batch-将UserData传递到容器实例

时间:2019-02-04 21:27:55

标签: amazon-web-services amazon-ecs aws-batch

我正在处理aws批处理,以在容器实例初始化期间传递用户数据。有没有一种方法可以批量完成?

关注此链接 Create AWS Batch Managed Compute Environment passing UserData to Container Instances

但不确定他们最终如何解决此问题。

2 个答案:

答案 0 :(得分:1)

您可以创建EC2 启动模板,并将UserData脚本传递给它。然后在创建AWS Batch Compute Environment时使用此启动模板。

请参阅this link以了解创建AWS Batch批次Compute Environment时对启动模板的支持。

干杯

库纳尔

答案 1 :(得分:0)

根据您的用户数据,我看到多个选项可将数据公开给AWS Batch作业/容器:

  • 对于键/值对,请通过环境变量公开数据-将container_overrides参数用于aws批处理(请参见1或aws cli:

['Gardens', 'Seaside', ['1', '2', '3']] ['Gardens', 'Seaside', 'InfoList', 'status', ['1', '2', '3', '26']] ['Gardens', 'Seaside', 'BackYard', ['1', '2', '3', '75']] ['Gardens', 'Seaside', 'BackYard', 'InfoList', 'status', ['1', '2', '3', '75', '32']]

或者只需将变量写入json文件并使用aws batch submit-job --container-overrides vcpus=integer,memory=integer,command=[string,string],environment=[{name=EnvVariableName,value=EnvVariableValue},{name=string,value=string}]

  • 如果您有大数据,请将其存储在S3中,在启动过程中移交S3地址,然后在启动过程中提取数据; aws批处理作业需要具有从S3提取数据的权限

  • 对于机密,请使用AWS Secret Manager进行存储,允许您的AWS Batch作业使用secretsmanager:GetSecretValue并从AWS提取机密