本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
從 Oracle GlassFish 遷移至 AWS Elastic Beanstalk
由桑迪普邦杜古拉(AWS)創建
R 類型 主體變更 | 來源:應用程式開發 | 目標:AWS Elastic Beanstalk |
建立者:AWS | 環境:PoC 或試驗 | Technologies 容器與微服務;網站與 Web 應用程式;移轉 |
工作負載:開放原始碼;Oracle | AWS 服務 AWS Elastic Beanstalk |
Summary
此模式描述如何將在現場部署 Oracle GlassFish 伺服器上執行的 Java 應用程式遷移到 AWS 雲端中的 AWS 彈性 Beanstalk。
在 AWS 上,Java 應用程式部署在具有 AWS Elastic Beanstalk 的 Docker GlassFish 伺服器上,該伺服器在 Amazon Elastic Compute Cloud (Amazon EC2) Auto Scaling 群組中執行。
其他功能:
亞馬遜 Elastic Beanstalk 充當幾個基礎資源的包裝器。它設置了 Elastic Load Balancing(處理來自 Amazon Route 53 的傳入流量),將流量分散到一個或多個 EC2 執行個體,並作為部署工具。
若要將現場部署資料庫遷移至 Amazon Relational Database Service (Amazon RDS),請更新資料庫連線詳細資料。在後端資料庫中,您可以設定 Amazon RDS 異地同步備份部署並選擇資料庫引擎類型。
您可以使用異地同步備份部署以獲得高可用性,以及 Auto Scaling 群組和擴展原則,以改善恢復能力。
您可以根據 Amazon CloudWatch 指標設定擴展政策。
在 AWS Elastic Beanstalk 中,您可以設定基礎的 Elastic Load Balancing 設定和 Amazon EC2 Auto Scaling。
先決條件和限制
先決條件
作用中的 AWS 帳戶
在 GlassFish 上運行的內部部署 Java 應用程序
Java Web 應用程式資源 (WAR) 檔案
產品版本
甲骨文 4.1.2 和 5.0
Java 7 GlassFish 4.0
爪哇 8 GlassFish 4.1 或更高版本
Architecture
來源技術堆疊
在 GlassFish 開發的應用
目標技術堆疊
Elastic Beanstalk
目標架構

部署工作流程

Tools
Amazon Elastic Beanstalk
— 一項服務,可供您在伺服器 (包含 Apache、NGINX、Passenger 和 IIS) 上,針對使用 Java、.NET、PHP、Node.js、Python、Python、Python、Python、Python、Python、Python、Python、Python、Python、Python、Python、Python、Ruby、Ruby、Go 和 Docker 開發的 Web 應用程式和 Amazon CloudWatch
— 提供資料和可行的洞見來監控應用程式、回應整個系統的效能變化、最佳化資源使用情況,並提供整合的運作狀態檢視。 Docker
— 將軟體封裝成標準化單元的平台,以便快速建置、測試及部署應用程式。 Java
— 一般用途的程式設計語言。Java 是基於類的,面向對象的,並且旨在具有更少的實現依賴關係。
Epics
任務 | 描述 | 必要技能 |
---|---|---|
建立含有所需資訊的虛擬私有雲端 (VPC) 執行個體。 | SysAdmin | |
在 VPC 內建立至少兩個子網路。 | SysAdmin | |
根據需求建立路由表。 | SysAdmin |
任務 | 描述 | 必要技能 |
---|---|---|
建立 Amazon Simple Storage Service (Amazon S3) 儲存貯體。 | SysAdmin | |
將 WAR 檔案複製到 S3 儲存貯體並上傳應用程式碼。 | SysAdmin |
任務 | 描述 | 必要技能 |
---|---|---|
建立 AWS Identity and Access Management (IAM) 角色。 | 您可以使用預設的「aws-elasticbeanstalk-ec2-角色」設定檔,或讓 Elastic Beanstalk 自動建立它。 | SysAdmin |
任務 | 描述 | 必要技能 |
---|---|---|
開啟 Elastic Beanstalk 儀表板。 | SysAdmin | |
建立新的應用程式並選擇 Web 伺服器環境。 | SysAdmin | |
選擇 GlassFish 泊塢窗作為預配置的平台。 | SysAdmin | |
上傳程式碼。 | 從本機系統檔案提供 S3 儲存貯體檔案 URL 或 ZIP 檔案。 | SysAdmin |
選擇環境類型。 | 在 [組態容量設定] 中,選擇 [單一執行個體] 或 [Load Balancer]。 | SysAdmin |
設定 Load Balancer。 | 如果您在上一個步驟中選擇了 Load Balancer,請設定異地同步備份部署。 | SysAdmin |
在組態安全性設定中,選擇先前建立的 IAM 角色。 | SysAdmin | |
在組態安全設定中,如果您有現有的 key pair,請使用它或建立新的 Amazon EC2 金鑰對。 | SysAdmin | |
在配置監控設置中,配置 Amazon CloudWatch 控。 | SysAdmin | |
在「組態安全性」設定中,選擇先前建立的 VPC。 | SysAdmin | |
選擇建立環境。 | SysAdmin |
任務 | 描述 | 必要技能 |
---|---|---|
使用建立的環境中提供的 URL 來測試應用程式。 |
| |
在 Amazon Route 53 應用域名服務(DNS)更改。 |