我正在使用AWS SSM在ec2实例上计算长脚本。
我想配置执行超时(执行时间,而不是启动时间),但是我在官方文档中找不到如何执行此操作(信息相反或无法正常工作)。
我仅使用CLI界面。
答案 0 :(得分:0)
您可以使用timeout
运行脚本,您可以在其中指定脚本可以运行多长时间。
假设您要运行hello.sh
脚本的时间不超过5秒钟。
timeout 5s ./hello.sh
5s
停留5秒钟后,正在运行的脚本将被杀死。您还可以将m
用于分钟,将h
用于小时,将d
用于几天。
答案 1 :(得分:0)
此值是一个文档属性,可以使用 --parameters
键通过 executionTimeout
选项传递。您可以使用 aws ssm describe-documents
查找此参数和其他文档特定参数。
aws ssm describe-document --name "AWS-RunShellScript"
{
"Document": {
"Hash": "99749de5e62f71e5ebe9a55c2321e2c394796afe7208cff048696541e6f6771e",
"HashType": "Sha256",
"Name": "AWS-RunShellScript",
"Owner": "Amazon",
"CreatedDate": "2017-08-21T22:25:02.029000+02:00",
"Status": "Active",
"DocumentVersion": "1",
"Description": "Run a shell script or specify the commands to run.",
"Parameters": [
{
"Name": "commands",
"Type": "StringList",
"Description": "(Required) Specify a shell script or a command to run."
},
{
"Name": "workingDirectory",
"Type": "String",
"Description": "(Optional) The path to the working directory on your instance.",
"DefaultValue": ""
},
{
"Name": "executionTimeout",
"Type": "String",
"Description": "(Optional) The time in seconds for a command to complete before it is considered to have failed. Default is 3600 (1 hour). Maximum is 172800 (48 hours).",
"DefaultValue": "3600"
}
],
"PlatformTypes": [
"Linux",
"MacOS"
],
"DocumentType": "Command",
"SchemaVersion": "1.2",
"LatestVersion": "1",
"DefaultVersion": "1",
"DocumentFormat": "JSON",
"Tags": []
}
}