【每周快報】0319-0325 AWS 服務更新
前言
本周 AWS 發佈了幾項重大的新服務,為了讓容器使用者更方便,AWS 攜手 RedHat 打造了 Red Hat OpenShift Service on AWS。容器服務外,AWS 也針對物聯網服務推出了新功能 – ML Detect,使用者不再需要深入了解裝置的各項指標,就能根據不同變數來自動更新預測的結果。
除了上述新服務,AWS 這周也為 S3 Object Lambda、Amazon Forecast、AWS Proton…等多項服務,推出許多新功能及改動。
焦點新聞
AWS IoT Device Defender ML Detect 正式發布 – 透過機器學習幫助企業進行預測性維護
ML Detect 是一項 IoT Device Defender 的功能,這項新功能可根據從過去的設備資料中獲得的訊息,自動檢測 IoT Device 級別的操作和安全異常。
使用者還可以使用機器學習來自動瞭解裝置的預期行為,透過 ML Detect,不再需要深入了解裝置的各項指標就可以進行預測,還可以根據不同季節或其他變數來自動更新預測的結果。
識別到異常之後,可以用內建的規則來應對這項異常,像是:將裝置隔離。
IoT Device Defender ML Detect 有以下功能:
- 支援 6 個雲端指標和 7 個裝置端指標,實現接近實時的連續監視,並在指標存在異常時使用機器學習演算法進行推斷。
- 可以設定高/中/低的 ML 警報通知。
- 在最初的 ML 訓練期間,每 14 天會為每個指標至少聚合 25,000 個數據點,並且在初始建立模型時,它就可以開始識別設備行為異常。
- 建立初始模型後,每天會對模型進行重新訓練,且用最近 14 天的資料更新設備的預期行為。
- 可直接使用內建的規則應對裝置異常。
- 使用和 AWS IoT Device Defender Rules Detect 相同的警報機制,且集成了 SNS 通知。
參考來源至:Announcing General Availability of AWS IoT Device Defender ML Detect
Red Hat OpenShift Service on AWS (ROSA) 正式發布
Container 容器服務儼然成為現今資訊產業中相當熱議的題目,AWS 也隨著這熱潮順應著使用者的需求,除了原本提供的 ECS、EKS、Fargate 之外,再聯手 RedHat 一同打造了 Red Hat OpenShift Service on AWS (ROSA)!
提供使用者 AWS Managed 託管級別的 OpenShift Cluster,輕鬆遷移 Container 體驗至 AWS 當中!也更為輕易地讓 Kubernetes Cluster 與 AWS 服務互動,詳情可以參閱 ROSA 產品頁面 或是 ROSA Documentation。
參考來源至:Amazon and Red Hat announce the General Availability of Red Hat OpenShift Service on AWS (ROSA)
S3 Object Lambda 讓使用者在 S3 GET 過程,可以觸發 Lambda Function 對資料進行修改和處理
有許多使用者將 S3 bucket 視為存放大量、多樣資料的 datalake,待後續需要分析資料或是取用資料時,再共享給其他運算資源來做處理。那後續取用的應用程式,可能需要不同的資料格式、內容;以往使用者可以複製多份資料,製作成不同格式、內容的資料集,再讓不同的應用程式從不同的資料集拿資料,但這種做法會浪費使用者許多儲存空間,也會增加儲存的成本。
此次更新後,當應用程式向 S3 遞送 GET 請求時,可觸發預先定義好的 Lambda Function 做資料處理/修改後再回覆。例如:先將與個人資訊相關的資料刪除;轉換成另外的資料格式;或是壓縮圖片再回覆。如此一來,可以省去複製多份資料集的程序、成本。
以下為 AWS 官方 Blog 中的範例:負責分析產品銷量的應用程式,不需要個人資訊的資料,可先用 Lambda 刪除;負責產生行銷報表的應用程式,需額外加入顧客忠誠度的資料,可先用 Lambda 從另外的資料庫引入資料。
圖片來源至:Introducing Amazon S3 Object Lambda – Use Your Code to Process Data as It Is Being Retrieved from S3
其他服務更新
Amazon Forecast 新增工作流程通知
Amazon Forecast 是一個針對時間序列資料進行預測的機器學習服務,使用者僅需要將歷史資料準備好,便可以透過 Forecast 進行模型訓練。
使用者在使用 Forecast 時,大致需要幾個步驟:資料匯入、訓練模型、結果呈現,這些步驟通常都需要等候一段時間,導致使用者都會呆坐在主控台前不斷地按重新整理按鈕以確認是否完成。
此次更新後,Amazon Forecast 新增支援工作流程通知,讓 Forecast 在做步驟轉換時能夠觸發 EventBridge 做後續相對應的動作,而不必人工檢查是否已完成。
參考來源至:Create forecasting systems faster with automated workflows and notifications in Amazon Forecast
AWS Proton 支援可在使用中的範本啟用 deletion protection 功能
AWS Proton 是一個可以讓維運團隊用 Stack 的方式宣告每一個 serverless/container-based 應用程式所需要的資源結構與參數配置成一個範本的服務。當需要改動應用程式的資源配置時,就不需要手動建置,而是更改範本內容,就可以產生可直接使用/測試的環境。
假設當前有一個微服務正使用 web_service
這個範本,當後續有使用者想刪除這個範本時,以往 Proton 並不會檢查是否有服務正在使用,會直接刪除;一旦刪除,會導致服務變得難以管理。
此次更新後,啟用 Proton deletion protection 功能,就可以避免刪除仍在使用的範本。Proton 會事先檢查範本的使用狀態,再判斷是否可以刪除。
參考來源至:AWS Proton introduces deletion protection for in-use templates
Amazon EC2 Auto Scaling Instance Refresh 新增支援設立 checkpoints(檢查點)來暫停更新過程
EC2 Auto Scaling Instance Refresh 的功能可以幫使用者以 rolling 的方式來更新在 Auto Scaling Group 裡的 EC2 Instance。
此次更新後,使用者可以在 Auto Scaling Group 做更新的過程中加上 checkpoints(檢查點),讓使用者決定當更新了部分的 Instance 之後,進入暫停的狀態,讓使用者可以先測試新版的 Instance,等到暫停的時間過了,Auto Scaling Group 再繼續更新其餘的 Instance。
參考來源至:Amazon EC2 Auto Scaling Instance Refresh now supports phased deployments
Amazon Comprehend 新增識別個人身份資訊(Personally Identifiable Information, PII)
Amazon Comprehend 是一個文字分析服務,能夠將使用者提供的文件進行文字分析,試圖理解文字當中的含義(情緒、關鍵字、專有名詞)。
此次更新後,Amazon Comprehend 新增支援能夠辨識 PII(例如:地址、信用卡卡號、電子郵件地址等),讓 Comprehend 的應用場景變得更加廣泛。
如果對支援的 PII 想要更詳細的認識,請參考官方文件。
參考來源至:Amazon Comprehend now identifies documents that contain personally identifiable information (PII)
Amazon EFS CSI 驅動程式新增支援動態調配
EFS CSI 是 EKS 上的共享文件系統的驅動程式,可以將 EFS mount 到 pods 上作為共享文件系統。
以往 EFS CSI 有提供 Static provisioning 的方式來 mount EFS,主要方法為手動創建 EFS 後,利用 EFS CSI dirver 將對應的 EFS mount 到 Pod 上(先用 CSI 創建 PV,才能創建 PVC);而此次新增了 Dynamic provisioning,可以直接創建 PVC 來建立一個 EFS 的 Access Point,然後透過參數的方式自動將這個 Access point 帶入 pod 中,讓 pod 可以直接找到該 EFS,而不用每次都去修改或者確認 EFS ID。
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: efs-claim
spec:
accessModes:
- ReadWriteMany
storageClassName: efs-sc
resources:
requests:
storage: 20Gi
---
apiVersion: v1
kind: Pod
metadata:
name: efs-example
spec:
containers:
- name: app
image: centos
command: ["/bin/sh"]
args: ["-c", "while true; do echo $(date -u) >> /example/out.txt; sleep 5; done"]
volumeMounts:
- name: persistent-storage
mountPath: /example
volumes:
- name: persistent-storage
persistentVolumeClaim:
claimName: efs-claim
上述的範例中,我們是先定義了名為 efs-claim
的 PVC,仔細看會發現並沒有宣告 Storage 的容量大小,EFS 的容量是由實際使用量去彈性調整的。這邊要注意的是有宣告 request storage 為 20 GiB,其原因為該 field
為 kubernetes 所必須的,其數值為多少並不重要。
參考來源至:Amazon EFS CSI driver now supports dynamic provisioning、Introducing Amazon EFS CSI dynamic provisioning
AWS CloudTrail 現在可紀錄 DynamoDB item 層級的 API 動作
以往我們能透過 CloudTrail 去看到說誰對 DynamoDB Table 做什麼操作,像是新增、刪除、更新資料等等⋯但是,遇到惡意竄改資料的情況時,我們只能知道誰在什麼時間點,做了什麼動作,還是沒有辦法得知哪筆欄位的資料被竄改。
此次更新後,CloudTrail 可以紀錄對 DynamoDB Table 裡進行哪些 API 行為,就連 requestParameters
、tableName
、key
及 eventName
等參數,都可以在 CloudTrail 裡所看到,就連失敗的 Request,也會記錄錯誤代碼,幫助企業針對安全性和合規性進行監控。
參考來源至:AWS CloudTrail Adds Logging of Data Events for Amazon DynamoDB
在 Amazon SageMaker 中使用 Hugging Face 上最先進的自然語言處理
今天 Amazon SageMaker 與 Hugging Face 整合完成拉!這樣資料科學家們就可以更快、更輕鬆的開發、訓練和調整最先進的自然語言(NLP)模型。
Amazon SageMaker Python SDK 中的 Hugging Face AWS Deep Learning Container(DLC)和 Hugging Face estimator 讓開發人員和資料科學家在 AWS 上更輕易進行 NLP 模型的建立。Hugging Face DLC 裡面包含為 SageMaker優化的 Hugging Face transformers、資料集和 tokenizers 函數庫,藉由 SageMaker 分散式訓練函數庫的優勢 Hugging Face estimator 讓開發人員和資料科學家能夠以最少的程式碼在 Amazon SageMaker 進行 NLP 的訓練工作。Hugging Face 開發者也可以更容易的在 Amazon SageMaker 上開發,並繼承其優點,包括成本效率、可擴展性和高安全性。
參考來源至:Leverage state of the art Natural Language Processing with Hugging Face and Amazon SageMaker