Amazon-Ec2
有沒有辦法使用 Celery 使用的 RabbitMQ 隊列的長度來啟動自動縮放組中的實例?
當隊列長度超過門檻值時,Celery 有什麼方法可以發出事件?我想使用該事件來啟動 EC2 實例。
我們在 Celery 中有兩個不同任務的隊列。其中一個隊列具有需要在自動縮放組中啟動實例的任務。在處理一種任務的第一個自動縮放組中,我們總是有一個實例在執行。然後很容易使用 Amazon CloudWatch 啟動另一個實例。但是對於另一個自動縮放組,如果沒有任務,我們不希望它有任何實例,因為很多時候該組可能沒有任務要執行。所以只有當這個任務的 Celery 隊列的長度超過給定的門檻值時,我們才想在這個自動縮放組中啟動一個實例。什麼是這樣做的好方法?
我建議使用 cron 作業將目前隊列長度發佈為CloudWatch 自定義指標,這將允許您根據其值創建自動縮放警報。