在本文中,您將學習如何利用 Azure Web Application Firewall(WAF) 和 Azure Application Gateway for Containers 在 Azure Kubernetes Service(AKS) 中複製 Amazon Elastic Kubernetes Service(EKS) 網頁應用程式。
此工作負載會實作 WAF 來保護 在 Kubernetes 叢集中執行的 Yelb Web 應用程式。 應用程式依賴 WAF 來封鎖不必要的流量,並保護應用程式免於常見的弱點。 集中式 Web 應用程式防火牆有助於簡化安全性管理,並協助確保更妥善地防範威脅或入侵。
如需 AWS 工作負載的更詳細瞭解,請參閱 使用 AWS WAF 保護您的 Amazon EKS Web 應用程式。
重要
整個 AKS 文件和範例都會提及開放原始碼的軟體。 您部署的軟體會從 AKS 服務等級協定、有限擔保和 Azure 支援 中排除。 當您搭配 AKS 使用開放原始碼技術時,請參閱個別社群和專案維護人員所提供的支援選項,以開發計畫。
Microsoft負責建置我們在 AKS 上部署的開放原始碼套件。 該責任包括擁有組建、掃描、簽署、驗證和 Hotfix 程式的完整擁有權,以及控制容器映像中的二進位檔。 如需詳細資訊,請參閱 AKS 弱點管理和 AKS 支援涵蓋範圍。
部署程序
- 瞭解概念差異:從檢閱 EKS 與 AKS 在服務、架構和部署方面的差異開始。
- 重新架構工作負載:分析現有的 AWS 工作負載架構,並識別元件或服務,例如工作負載基礎結構、應用程式架構和部署程式,您需要重新設計以符合 AKS。
- 更新應用程式程式碼:請確定您的程式碼與 Azure API、服務和驗證模型相容。
- 準備部署:修改 AWS 部署流程以使用 Azure CLI。
- 部署工作負載:在 AKS 中部署複寫的工作負載,並測試工作負載以確保它可以如預期般運作。
必要條件
- 有效的 Azure 訂閱。 如果您沒有 Azure 訂用帳戶,請在開始前建立免費 Azure 帳戶。
- Azure 帳戶中訂用帳戶上的擁有者Azure 內建角色,或使用者存取系統管理員和參與者內建角色。
- Azure CLI 2.61.0 版或更新版本。 如需詳細資訊,請參閱 安裝 Azure CLI。
- Azure Kubernetes Service (AKS) 預覽延伸模組。
- jq 1.5 版或更新版本。
- Python 3 或更新版本。
- kubectl 1.21.0 版或更新版本
- Helm 3.0.0 版或更新版本
- Visual Studio Code 會與 Bicep 擴充功能一起安裝在其中一個支援的平臺上。
- 現有 Azure 金鑰保存庫 資源,具有 Yelb Web 應用程式的有效 TLS 憑證。
- 用於 Yelb 應用程式名稱解析的現有 Azure DNS 區域或對等 DNS 伺服器。
下載 Azure 應用程式程式碼
此工作流程的已完成應用程式程式碼可在 GitHub 存放庫中取得。
使用下列命令,將存放庫複製到本機電腦上呼叫
aws-to-azure-web-app-workshop的目錄:git clone https://github.com/azure-samples/aks-web-application-replicate-from-aws ./aws-to-azure-web-app-workshop複製存放庫之後,請瀏覽至目錄,
aws-to-azure-web-app-workshop並使用下列命令啟動 Visual Studio Code:cd aws-to-azure-web-app-workshop code .
後續步驟
參與者
本文由 Microsoft 維護。 下列參與者最初撰寫:
主要作者:
- Dixit Arora |資深客戶工程師
- Paolo Salvatori |首席客戶工程師
其他投稿人:
- 肯·基爾蒂 |主體 TPM
- Russell de Pina |主體 TPM
- 愛琳·沙弗 |內容開發人員 2