AWS宣布現(xiàn)在Lambda擴展組件正式發(fā)布,該功能讓用戶可以在無服務器運算服務Lambda中,集成自己愛用的工具,以進行監(jiān)控、安全性和治理等任務。用戶可以使用控制臺和命令行工具,簡單地安裝擴展組件,以執(zhí)行消息截取或是自動偵測程序代碼等需求。目前這項功能已經(jīng)在美東北維吉尼亞地區(qū),以及歐洲的愛爾蘭和米蘭地區(qū)正式上線。
官方表示,Lambda擴展組件提供了一個容易擴展Lambda執(zhí)行環(huán)境的方法,AWS用戶、AWS合作廠商和開源社群,都可以使用Lambda Extensions API來構建擴展組件,這些組件能在Lambda函數(shù)的執(zhí)行流程中,提供增強功能。
比起在2020年10月所發(fā)布的AWS Lambda擴展組件預覽版,在正式版本有了功能調整,用戶的程序代碼執(zhí)行完后,可立即送出回應,而不需要等待擴展組件工作完成,如此,擴展組件就可以在函數(shù)回傳回應消息后,執(zhí)行像是發(fā)送遙測資料這類的工作。
官方提到,AWS Lambda擴展組件的使用場景,可以包括在調用函數(shù)前、期間和之后截取診斷信息,或是以擴展組件自動查看程序代碼,也能利用安全代理來進行檢測和警告函數(shù)活動,以及將遙測資料,用異步的方式,發(fā)送到S3和Kinesis等自定義目標。
AWS Lambda擴展組件的安裝與配置管理簡單易用,用戶可以使用Lambda圖層將工具加到函數(shù)中,或是將其添加至函數(shù)鏡像文件,以容器的方式來部署。Lambda擴展組件使用擴展API來注冊功能和執(zhí)行環(huán)境生命周期事件,并且啟動新的程序或是執(zhí)行邏輯,來回應這些事件。而Lambda擴展組件也可以使用Runtime Logs API來訂閱,從Lambda執(zhí)行環(huán)境送往Amazon CloudWatch的日志流媒體,Lambda流媒體這些日志到擴展組件,以進行處理、過濾和發(fā)送等任務。
多數(shù)用戶不需要了解API的運行,可以僅通過配置Lambda函數(shù)中的選項使用擴展組件,用戶使用在Lambda控制臺、命令行工具、基礎設施即程序代碼服務,以及像是AWS CloudFormation和Terraform等工具,安裝和管理擴展組件。AWS與HashiCorp、Datadog和Splunk等企業(yè)合作,在Lambda上提供擴展組件,另外,AWS也提供了4款自家服務的擴展組件,分別是AppConfig、CodeGuru Profiler、CloudWatch Lambda Insights和Distro for OpenTelemetry。
Lambda擴展組件與函數(shù)共享計費模型,AWS會收取Lambda生命周期中的運算時間,在函數(shù)調用方面,用戶需要支付服務請求、程序代碼執(zhí)行以及所有擴展組件運算時間的費用。官方也提醒,Lambda擴展組件因為與函數(shù)共享CPU、內存和存儲資源,因此可能會影響性能,而且擴展組件會在函數(shù)程序代碼之前初始化,因此函數(shù)的執(zhí)行時間也會跟著增加。