跳到主要內容

Lambda version with provisioned concurrency in CloudFormation update stack fail

如果在 CloudFormation 裡面直接使用 "AWS::Lambda::Version" 加上 ProvisionedConcurrencyConfig 接著 update stack 更新 ConcurrentExecutions 就會出現 update error 因為 version 不能夠 update

但是如果把 ProvisionedConcurrency 放在 "AWS::Lambda::Alias" 裡面,update stack 卻又可以了... lol...

不過一個 provisioned concurrent lambda 一個月要額外多 $5 USD 的費用還不包含 lambda execution 的費用,一個 1 vCPU + 512MB 的 fargate container 也不過大概是 $31 USD ....

Update:
再仔細看了一下,update stack 失敗的原因有兩個一個是因為 Application Load Balancer Target Group 指向的 lambda 無法 stabilized 所以 update 失敗導致 rollback。其中一個原因是因為 ALB 沒有權限 invoke lambda function。LambdaPermission resource 還沒執行時,就先執行了 ALB TargetGroup 設定,所以在 TargetGroup resource 加了 DependsOn LambdaPermission 後,就少了 一個錯誤,但剩下的 ALB 無法 stabilized 的錯誤目前還是無解.... 只能把 stack 刪掉重新 deploy,接下來的 update 好像就都沒事。只是說在刪除 stack 的時候,會出現等待 lambda ENI 刪除的 waiting... 要等 8 ~ 20 min? 據說是後來 aggregate ENI 給 VPC 內的 lambda 後導致的 side effect....
CloudFormation 印象中也是越來越聰明,當 Resource A 有 !Ref Resource B 的時候,就會自動做 DependsOn 調整執行順序,但是像今天這個 LambdaPermission 和 ALB TargetGroup 似乎就漏掉了...

ALB + lambda + provisioned concurrency 很多 bug 一次踩好踩滿 Q_Q...


留言

這個網誌中的熱門文章

Safety Razor Murker 38C and Edwin Jagger DE89

繼入手第一隻 Murker 38C 傳統式刮鬍刀後,現在每天都很期待刮鬍子。還收集了很多刀片 Astra / Derby Extra / Derby Premium,然後又手滑買了第二隻,也是幾乎都會推薦給新手使用的 DE89 ,比較常聽到的名字可能是 Muhle R89 根據我看到的說法是,Muhle 和 Edwin Jagger 共同開發這個刀頭,所以只有兩家各自出的手柄握把不一樣,刀頭都是相同的。那為什麼選 Edwin Jagger 呢?因為 Amazon CA 只有賣 Edwin Jagger ... Orz... Edwin Jagger 的刀頭設計和 38C 一樣雖然也是 close combat 但他的刀片露出就比 Murker 38C 多一些。刮起來也是很順暢,但是第3刮的 Against The Grain 就噴血了..lol...不知道是刀片太利了還是 DE89 攻擊性比較強.... 但也有可能是我技術太差... 所以又換回 38C 刮刮看,確認 Murker 38C 真的比較溫和,但似乎不像 DE89 可以刮得很乾淨。現在都會乖乖用 pre shave cream 這樣子容錯率比較高... 有了兩隻比較以後,已經可以分辨出,刀頭設計,二件式,三件式,握把長短,握把重量等等的差異。像 38C 就屬於長握把約 10cm,重量約 100g 。 DE89 就是一般的短握把,約 8cm,重量也較輕。但這兩款的確都很適合新手,所謂的噴血也只是有小血珠冒出,不是割痕,用鬚後水塗完就沒感覺了。 現在慢慢體會到傳統濕式刮鬍的魅力有一部分是刮鬍刀本身設計很漂亮,刀片有很多選擇,不會卡鬍渣,刮鬍手感很棒。另一部份就是塗 pre shave cream,從刮鬍皂用刮鬍刷打出刮鬍泡塗在臉上,並沒有想像中的麻煩,現在反而有點期待這整個過程。 這是還沒用過傳統刮鬍刀前我完全沒想到的! 繼續收集研究刮鬍刀和刀片,還有各種不同的刮鬍皂/膏…刮鬍子現在變的很有趣 :)

[Android] Trigger

This app Trigger formerly known as NFC Task Launcher. You can trigger tasks (change profile) not only by NFC by also Wifi, Bluetooth status....etc... So, give it a try, it's great! NFC Smart Tags! http://www.youtube.com/watch?v=LfkFgtoQtFQ

automation testing

我覺得 想想自動化測試-開始(一) 的論點很不錯.... 原則 1: 針對重點業務,進行回歸的自動化測試 原則 2 :針對穩定的業務(或接口),在環境比較穩定的情況,前期投入腳本開發,有利於減少後期維護成本 原則 3 :自動化測試主要是為了保證主要功能完整可用,而不是為了多發現缺陷 原則 4 :自動化測試並不能減少測試的人力成本,而是為了加快測試反饋,提升測試質量 原則 5 :不要對錄制回放抱有幻想了,可視化也不是一個好的想法 原則 6: 開發參與自動化測試,讓開發和測試融合在一起 什麼都想做,就什麼都做不好。 確保主功能沒問題,就可以釋放出人力在其他事情上, 也可以控制意外的損害範圍… 千萬不要期待 automation 可以發現新問題…