【每周快報】0903-0915 AWS 服務更新
前言
AWS 於九月初,推出了許多服務更新,讓使用者能以更輕鬆的方式來操作服務。像是 Amazon X-ray 現在支援 Amazon Step Functions,透過呈現出整個應用程式的架構圖,讓使用者能夠一目了然,並快速排除問題。另外各個產業都會使用到的 Amazon Transcribe 也有了些服務改善,這次更新以後,使用者只需提供音檔,Transcribe 就會從語音中檢測出主要語言,最少只需要花 30 秒的音檔就可以生成文字,對各產業在記錄會議或電話訪談都有很大的幫助。
除了上述服務外,這周也會跟大家介紹 Amazon EKS、API Gateway HTTP、AWS Organizations、Amazon CloudWatch Dashboard…等,各領域的服務在近期的更新,並分享這些服務改善的應用情境。
一、焦點新聞
Amazon X-ray 新增支援 Amazon Step Functions
X-ray 是一個分散式追蹤監控系統,可幫助開發人員分析和除錯,在 Severless 的架構中,使用者往往整個應用程式邏輯主要會由多支 Lambda 與其他 AWS 服務所堆疊而成,而 Step Functions 能夠讓使用者透過 State Machine 的方式整合這些大量的 Lambda,然而每當 Step Function 有回報錯誤時,使用者就必須得回到 Step Function 的主控台中尋找是哪一支 Lambda 發生錯誤,對於有大量 Step Function 的使用者來說是一件非常辛苦的事。
此次更新後,使用者可以透過 X-ray 針對 Step Function 進行整體應用程式性能、權限問題上的監控、以及追蹤 AWS 服務之間的相依關係。
當 Step Function 啟用 X-ray 後,可以於 Step Funection 主控台中的 X-ray trace map 連結中看到追蹤的流程圖。
使用者可以輕易的看到整個應用程式的架構流程,從上游端的 Step Function 進入,後續觸發、整合了哪些 AWS 服務都能一目瞭然,並可以透過圖中所提供的追蹤資訊進行快速的錯誤排除。
圖片來源至:Introducing AWS X-Ray new integration with AWS Step Functions
Amazon EKS 現在支援指定 EC2 security groups 給 Kubernetes pods
先前當使用者在利用 EKS 部署容器化應用程式時,所有的 EKS pods 會套用相同的 security group,並使用 IAM Role 來控制不同 pods 的身分驗證,但許多公司的政策要求分割不同的 pods 網路來作為額外的防禦措施,Kubernetes 的網路支援對內的網路流量控制選項,卻不支援對外的網路。
此次更新後,利用 EC2 security group 來限制 pod 對 pod,或是 pod 對外的網路存取,並使用 Kubernetes native api 來將 security group 分配至 pods,這可使 Kubernetes pods 輕鬆符合公司的網路政策。
這項更新在大多數 EKS 部署的 AWS Nitro based instance 都有支援,對現有的容器化應用程式將在未來的幾週提供支援。
參考來源至:Amazon EKS now supports assigning EC2 security groups to Kubernetes pods
API Gateway HTTP 現在支援 Lambda 和 IAM 的授權模式
以前, API Gateway HTTP 只支援 OAuth2/OIDC 兩個授權模式,此次更新後,加入了兩個新的授權方式來保護您的 API Gateway HTTP API - 即 Lambda 授權和 IAM 授權。
透過使用 Lambda function 進行認證可以針對自身的需求量身打造授權方案,例如增強的 OAuth2 或是連接外部認證伺服器進行認證。
利用 AWS IAM 來進行認證的方式無需編寫程式碼,即可輕鬆控制誰可以使用 API Gateway HTTP 上的 API。
這項更新在所有支援 API Gateway 的區域皆可使用,有關 API Gateway 的更多資訊,請參閱 API Gateway 產品頁面。
參考來源至:API Gateway HTTP APIs now supports Lambda and IAM authorization options
AWS 發布 Cloud Digital Interface — 以超低延遲在 AWS 雲端內傳輸無壓縮的實時影像
AWS CDI 是一項網路技術,可在 AWS 雲端內傳輸高質量的未壓縮影像,並且具有高可靠性和低至 8 毫秒的網路延遲。AWS CDI 可以建構實時影像 workflow,以連接特定的 AWS Media Services。
在過去,需要傳輸高質量未壓縮實時影像的工作負載是使用 SDI 連接的。AWS CDI 提供可靠,高性能傳輸未壓縮影像的方式,使您可以跨 AWS Cloud 中的 EC2 和其他服務構建類似的工作負載。
AWS CDI 的應用範圍包含電視頻道播出,影片直播,浮水印嵌入以及視訊編解碼。透過下載 AWS CDI SDK 並將其功能使用到產品中來開始使用。
有關更多 AWS CDI 和 CDI SDK 的資訊,請參閱 CDI 說明頁面。
參來源至:Introducing AWS Cloud Digital Interface (CDI) and input support in AWS Elemental MediaLive
AWS Organizations 新增支援上標籤和 Attribute-Based Access Control (ABAC)
AWS Organizations 是一個可以幫助使用者集中管理多個 AWS 帳號的服務,使用者能針對底下帳號進行分組(OU)並管理跨帳號服務權限(SCP)。
此次更新後,使用者可以將標籤(Tag)附加到組織單位(OUs)、組織的根目錄(root)和 SCP,讓使用者更輕鬆的識別這些資源,還可以在創建這些資源時對其進行標記,確保所有 Organizations 中的資源皆有其歸類。
另外,使用者也可以利用這些標籤進行基於屬性的訪問控制(ABAC)。ABAC 是一種授權策略,可基於附加到 OU 和 SCP 上的標籤定義權限。
參考來源至:AWS Organizations now supports tagging, tag-on-create and Attribute-Based Access Control (ABAC)
二、其他服務更新
Amazon Transcribe 新增自動語言辨識
Amazon Transcribe 是一個自動語音辨識(ASR)服務,能夠將語音自動轉化為文字。
以往使用者需要手動識別音檔中的主要語言才能使用 Transcribe API 來辨識到底是哪個語言的語音。此次更新後,使用者只需提供音檔,Transcribe 就會從語音中檢測出主要語言,並以識別出的語言生成文字,而 Transcribe 只需最少 30 秒的音檔就可以生成文字,而無需人工指定語言,適用於各種案例,例如:記錄客戶電話,將語音郵件轉換為文本,會議紀錄歸檔,追蹤使用者論壇通訊或監視媒體內容等。
參考來源至:Amazon Transcribe adds support for automatic language identification
Amazon CloudWatch Dashboard 新增支援共享
此次更新後,使用者可以直接分享權限訪給沒有此 AWS 帳號的使用者共享 CloudWatch Dashboard,可以通過三種方式共享 CloudWatch Dashboard:
- 指定可以查看該 Dashboard 的使用者的電子郵件地址和密碼
- 將 Dashboard 設為公開,讓所有人透過公開的網址閱覽
- 設定 SSO 來訪問此 Dashboard (可整合 Cognito)
透過這個方式,使用者能讓組織中無 AWS 帳號權限的成員也能閱覽 CloudWatch Dashboard,以監控運營狀態並快速發現問題。
AWS Elastic Beanstalk 新增共享 ALB 功能
此次更新後,使用者透過 Elastic Beanstalk 創建應用程式環境時,可以選擇關聯現有的 ALB,但前提是必須於相同的 VPC 中,如此一來便能只透過一個 ALB 對多個環境進行分流。
此功能推出前的架構,此作法並沒有錯或不好,甚至還有些好處,但在成本優化的考量上可能並不是最佳實踐。
共享功能推出後的改變
使用者可自定義規則或根據路徑來針對多個應用程式進行分流,如下圖中:
- 使用者擁有兩個環境: python-based 的應用程式與 Ruby 應用程式(Host 於 Fargate 上)
- 並透過共享 ALB 功能針對兩個環境進行分流
- 分流的規則透過「路徑」的方式進行,
/
、/color
分別分流至不同環境當中。
圖片來源至:Amazon Elastic Beanstalk introduces support for shared load balancers
Amazon CloudFront 新增支援 Brotli 演算法
Brotli 是一個被廣泛使用的無損壓縮算法,比 Gzip 有更好的壓縮率,愈小的文件可更快地交付給使用者來提高應用程式的效能。
以往使用者若要使用 Brotli 來壓縮物件,必須將 Header 中的 “Accept-Encoding” 列入白名單來在 Origin 啟用 Brotli 壓縮,此次更新後,可以使用 CloudFront 向 end user 提供 Brotli 壓縮內容,CloudFront 在將其轉發到使用者的 Origin 之前在 “Accept-Encoding” 標頭中包含 “br”,進而提高整體緩存命中率。此外,如果使用者的 Origin 將未壓縮的內容發送到 CloudFront,則 CloudFront 現在可以使用 Brotli 在 edge 節點中自動壓縮可緩存的內容。
資料來源至:Amazon CloudFront announces support for Brotli compression
Amazon Kendra 新增 confidence scores 功能
Amazon Kendra 是一個企業搜尋服務,提供自然語言搜尋功能,讓企業能夠在大量的文件中,輕鬆地找到所需資訊,當使用者輸入問題時,此服務會使用機器學習演算法來了解內容並傳回最相關的結果,可直接回覆答案或回傳整份文件,例如:詢問「公司信用卡的現金獎勵是多少?」,Kendra 便會對應到相關文件並傳回「2%」之類的答案。
設置 Confidence score 能讓使用者可以查看 Kendra 搜索結果的準確性,Confidence score 能設置四種類別:「Very High」、「High」、「Medium」和「Low」,透過這個方式讓得到回覆的使用者進行評分,以改善回傳結果。
AWS Step Function 增加 payload 上限
Step Function 是一個可以串連多個 serverless AWS Service,幫助使用者創建更加彈性工作流程的服務,像是串接多個 Lambda Function、Amazon SNS、ECS Fargate 等等。舉例來說,使用者可以將前一個 Lambda Function 處理完成的 data,透過 Step Function 的串接,將結果傳遞到下一個 Lambda Function 當作 input;或是傳遞到 SNS Topic 以遞送通知給使用者;抑或是觸發 Fargate 運行 container 執行後續的動作。
原先當 data 要從前一個 State 傳遞到下一個 State 時,data 大小僅支援 262,144 bytes,如果超過 262,144 bytes,就需要利用 S3 bucket 當作媒介,將 data 存放在 bucket 中,再引入到下一個 State。此次更新後,State 與 State 之間的資料傳輸,提高了 data 的大小上限至 256 KB,如果超過 256 KB,仍可以使用 S3 來解決。
除此之外,因為有更多的資料可放置在 Step Function,因此當使用者在 debug 和 review 工作流程是,在 Step Function history 可看到更多資料以供使用者了解目前整體流程的狀況。
AWS Elemental MediaLive 新增 AVC、UHD 輸出格式
AWS Elemental MediaLive 是 廣播級 的即時影片處理服務,可以幫助使用者建立高畫質的影片串流以交付到廣播電視和與網際網路連線的多螢幕裝置,像是連網電視、平板電腦、智慧手機以及電視機上盒。即時編碼使用者的現場直播影片,先擷取較大的即時影片來源,再將它壓縮成較小的版本,以利分發給觀眾,此次更新後,支援超高清的影片編碼 AVC,使用者可透過此功能將 UHD 影片串流到更多平台。
CloudFormation 新增支援更多 EKS 語法
Amazon Elastic Kubernetes Service (EKS) 是託管的 Kubernetes 服務,提供使用者在 AWS 上執行 Kubernetes,不需要 安裝、操作及維護自己的 Kubernetes 控制平面, Kubernetes 上執行的應用程式都能和 Amazon EKS 相容。
使用者可以透過 AWS Fargate 來執行 EKS Cluster,使用者不需要管理及建立 Server,只需要付資源花費即可,此次更新後,可以透過 AWS CloudFormation 建立和管理 EKS Fargate 配置,使用者可以透過 Template 配置使用 Fargate 設定 Cluster,或是在現有的 Cluster 加入 Fargate,讓配置更加便利。
EKS Now Supports Creation and Management of Fargate Profiles Using AWS CloudFormation
新的 AWS 解決方案服務 – 通過 Troodon Analytics Hub 加速資料科學
藉由 Troodon Analytics Hub 進行資料科學的加速是一項 AWS 解決方案諮詢服務。
Troodon Analytics Hub 的資料科學加速功能包括:啟動和執行有效資料科學環境所需的一切。要求此諮詢服務的客戶將參與 Troodon Analytics Hub 在 AWS 上的研討會,並學習到設計,客製化和部署一切所需的知識。
通過 Troodon Analytics Hub 進行數據科學加速可利用現代 AWS 雲端服務輕鬆達成,包括基礎架構即代碼 (IaC) ,無伺服器架構,例如 Amazon Quicksight,Amazon EMR 和 AWS Glue。
有關 Troodon Analytics Hub 的更多資訊可參考:Data Science Acceleration with Troodon Analytics Hub。
參考來源至:New AWS Solutions Consulting Offer – Data Science Acceleration with Troodon Analytics Hub
Tag:ABAC, ALB, Amazon CloudFront, Amazon CloudWatch Dashboard, Amazon EKS, Amazon Kendra, Amazon Step Functions, Amazon Transcribe, Amazon X-ray, API Gateway HTTP, Attribute Based Access Control, AVC, AWS Elastic Beanstalk, AWS Elemental MediaLive, AWS Organizations, AWS Step Function, Brotli, Cloud Digital Interface, CloudFormation, confidence scores, EC2 security groups, EKS, IAM, Kubernetes pods, Lambda, payload, Troodon Analytics Hub, UHD