[英]AWS Lambda, Python : Call Shell script from Lambda or Linux command
我正在使用Python編寫的AWS Lambda腳本,我目前正在獲取具有特定標記的所有實例,並從中刪除最舊的實例。 之后,從剩下的實例中,我想在實例上調用linux命令。 我唯一需要的是調用crontab -r
,因為最老的實例將具有cron設置,並且在ASG生成的實例中添加這些crons將導致重復的電子郵件被發送。
除了最舊的實例之外,我已經完成所有實例,但是如何在每個實例上調用crontab -r
? 有任何想法嗎。 謝謝。
代碼:
import boto.ec2
import boto3
conn=boto.ec2.connect_to_region("eu-central-1")
reservations = conn.get_all_instances()
instances_list = []
process_instance_list = []
for res in reservations:
for inst in res.instances:
if 'Name' in inst.tags:
if inst.tags['Name'] == 'PROJECT_NAME' :
instances_list.append(inst);
instances_list.sort(key=lambda x: x.launch_time, reverse=False)
non_processed_id=instances_list[0]
for val in instances_list:
if val.id != non_processed_id.id:
// Call crontab -r here.
謝謝。 :-)
使用boto3 send_command在ec2上執行命令。
案例示例:
boto3.client('ssm').send_command(
InstanceIds=[val.id],
DocumentName='AWS-RunShellScript',
Parameters={'commands': ['crontab -r']},
Comment='Crontab remove'
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.