在本文中,您將了解如何在 AKS 中使用 KEDA 和 Karpenter 來複寫 Amazon Web Services (AWS) Elastic Kubernetes Service (EKS) 事件驅動工作流程 (EDW) 工作負載。
此工作負載是使用生產者/取用者應用程式來實作競爭取用者模式,藉由區隔資料生產與資料取用,促成有效率的資料處理。 您可以使用 KEDA 來調整執行取用者處理的 Pod,並使用 Karpenter 來自動調整 Kubernetes 節點。
如需更詳細了解 AWS 工作負載,請參閱在 Amazon EKS 上使用 KEDA 和 Karpenter 實現可調整且符合成本效益的事件驅動工作負載 (英文)。
部署程序
- 了解概念上的差異:從檢閱 AWS 與 AKS 在服務、結構和部署方面的差異開始。
- 重新架構工作負載:分析現有的 AWS 工作負載結構,並識別您需要重新設計以配合 AKS 的元件或服務。 您必須變更工作負載基礎結構、應用程式結構和部署流程。
- 更新應用程式程式碼:請確定您的程式碼與 Azure API、服務和驗證模型相容。
- 準備部署:修改 AWS 部署流程以使用 Azure CLI。
- 部署工作負載:在 AKS 中部署複寫的工作負載,並測試工作負載以確保它可以如預期般運作。
必要條件
- Azure 帳戶。 如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
- Azure 帳戶中訂用帳戶上的擁有者 Azure 內建角色,或使用者存取系統管理員和參與者內建角色。
- Azure CLI 2.56 版或更新版本。
- Azure Kubernetes Service (AKS) 預覽延伸模組。
- jq 1.5 版或更新版本。
- Python 3.12 或更新版本。
- kubectl 1.21.0 版或更新版本
- Helm 3.0.0 版或更新版本
- Visual Studio Code 或同類工具。
下載 Azure 應用程式程式碼
此工作流程的已完成應用程式程式碼可在 GitHub 存放庫中取得。 執行下列命令,將存放庫複製到本機電腦上名為 aws-to-azure-edw-workshop 的目錄:
git clone https://github.com/Azure-Samples/aks-event-driven-replicate-from-aws ./aws-to-azure-edw-workshop
複製存放庫之後,瀏覽至 aws-to-azure-edw-workshop 目錄,然後執行下列命令以啟動 Visual Studio Code:
cd aws-to-azure-edw-workshop
code .
下一步
參與者
本文由 Microsoft 維護。 原始撰寫此內容的貢獻者如下:
- Ken Kilty | 首席 TPM
- Russell de Pina | 首席 TPM
- Jenny Hayes | 資深內容開發人員
- Carol Smith | 資深內容開發人員
- Erin Schaffer |內容開發人員 2