簡體   English   中英

在AWS上,每天運行一次AWS CLI命令

[英]On AWS, run an AWS CLI command daily

我有一個AWS CLI調用(在這種情況下,要啟動已配置的EMR集群以執行某些步驟,然后關閉),但是我不確定如何每天運行它。

我猜想,一種方法是運行cron作業的EC2微型實例,或啟動該命令的微型計算機中的ECS任務,但似乎一切都太過分了。 看起來在Lambda中也有一種方法可以實現,但是從我可以知道的角度來看,這是一種混亂。

這不一定是一個好的長期解決方案,只有在我正確地做到這一點(數據管道)之前,它才是合適的。

建議?

如果不是嚴格要求使用AWS CLI,則可以使用AWS開發工具包之一來以編程方式調用Lambda。

  • 使用cron安排CloudWatch規則
  • 配置后,CloudWatch Rules將觸發Lambda函數
  • 實現一個Lambda函數,以使用一種受支持的SDK(例如,AWS JavaScript SDK中的EMR類)調用EMR
  • 確保您具有IAM配置

使用CloudWatch Events安排AWS Lambda函數中提供了完整示例

缺憾? 是的,需要進行配置,但是如果考慮到啟動EC2 / ECS所需的工作量(並確保在發生故障時重新啟動),我會說它是均衡的。

不確定要執行的整個任務,但要避免這樣做:

  1. 手動
  2. 避免對AWS中的資源進行其他設置(如上所述)

我會在Continuous Integration (CI)服務器(如jenkins,bamboo,circleci ..... Continuous Integration (CI)創建一個簡單的工作(列表可以繼續)。 我假設您可能已經在運行CI服務器,為什么不使用它呢?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM