在 Azure 上重新調整 AIX 工作負載

Azure 應用程式閘道
Azure 檔案
Azure 虛擬機器
Azure 通訊服務
Azure App Service

本文說明將 AIX 工作負載重新格式化至雲端的移轉方法。 您可以將 Azure Functions 用於無伺服器架構,或使用 Azure 虛擬機器 來保留伺服器模型。

當您將舊版應用程式移轉至 Azure 時,請考慮 AIX 工作負載的重新調整移轉策略,以最大化您的投資報酬率(ROI)。 重新調整移轉需要最少的變更,但提供類似於重構移轉的雲端原生優點。

複寫移轉的優點包括:

  • 降低總擁有成本(TCO)。
  • 改善商務靈活度。
  • 改善作業復原能力。

架構(重新格式化)

已重新格式化架構的圖表。

下載此架構的 Visio 檔案

工作流程

此工作流程對應至上述架構。

  1. 使用者要求和輸入 API 整合會傳輸至 TCP/443 (HTTPS) 上的 Azure 應用程式閘道,其提供 Web 應用程式防火牆 (WAF) 功能。 應用程式閘道 將要求以反向 Proxy 要求的形式傳送至 Red Hat JBoss Enterprise Application Platform (EAP) 上裝載的各種服務。

  2. Java Web 服務會詢問 Oracle 資料庫 (TCP/1521)。 同步 Web 要求回應時間小於 50 毫秒(毫秒)。

  3. 異步要求,例如排程批次工作,會將記錄放在資料庫數據表中,做為應用層內的佇列。

    注意

    未來,Azure 佇列 儲存體 會取代資料庫數據表,因此您隨時都可以存取執行分析作業。

  4. 以 KornShell (ksh) 文稿撰寫的 cron 作業會移植到 Bash,並在 Azure 虛擬機器擴展集 中的個別 Red Hat Enterprise Linux (RHEL) 伺服器上執行。 cron 作業會每隔 15 分鐘執行一次,包括系統啟動時,查詢 Oracle 資料庫中的佇列。 每個主機一次執行一個作業。 虛擬機器擴展集 平行處理長時間執行的分析作業。 此解決方案不需要非尖峰批處理,以限制在上班時間對系統效能的影響。

  5. Azure 通訊服務 透過 Azure CLI 工具傳送電子郵件警示(docs)。 Azure 系統指派的受控識別,例如 az login --identity,驗證虛擬機 (VM)。

  6. 分析作業結果會透過安全的SMBv3(TCP/445) 移至 Azure 檔案儲存體共用,此共用也會使用系統指派的受控識別。

元件

  • Microsoft Entra ID 可消除網路型信任,並提供系統指派的受控識別,以改善安全性。

  • Azure App 服務 不需要管理作業系統和伺服器,進而提升作業效率與業務靈活性。

  • 應用程式閘道 是完全受控且可調整的服務,可提供 Web 應用程式防火牆和反向 Proxy 功能。

  • Azure 檔案儲存體 提供透過受控服務發行的數據報表。

  • Azure Functions 是事件驅動的無伺服器計算平臺,可用來以指定的程式設計語言有效率地開發程式代碼。

  • Oracle 資料庫和 SAS 分析節點會使用 Azure VM

  • Azure 計算資源庫 會建置並儲存 Oracle 資料庫和 SAS 分析節點的映像。 有兩個資源庫:一個在主要區域,一個在災害復原區域中。

  • 通訊服務 會使用 CLI 公用程式傳送電子郵件。 此服務會 mailx 取代 AIX 上的命令。

替代項目

替代方式是完整的伺服器架構,可保留所有中間件元件。

此解決方案與原始架構類似,其符合 許多IT組織運作的類似 授權。 此替代解決方案的成本也與原始架構大致相同,但不會提供重繪架構所提供的優點。 例如:

  • 授權節省:替代解決方案會保留 WebSphere,並新增更多 RHEL 節點。

  • 作業效率:替代解決方案會保留相同數目的伺服器來維護。

  • 業務靈活度:使用替代解決方案時,報表只會受限於夜間,且沒有自動調整功能、全天分析。

案例詳細資料

根據現有應用程式的可移植性和小組的工作流程喜好設定和技術藍圖,選擇無伺服器或伺服器模型。

如同原始架構,重新格式化的架構具有 Oracle 資料庫,但會重新格式化為 Azure 虛擬機器 上的 RHEL 操作系統。 針對已重新格式化架構中的完全受控 Azure App 服務,Red Hat JBoss EAP 會取代 WebSphere Java 應用程式。

架構(原始)

原始架構的圖表。

下載此架構的 Visio 檔案

工作流程

此工作流程對應至上述架構。

  1. 使用者要求和輸入 API 整合會傳輸至 TCP/443 (HTTPS) 上的內部部署 F5 負載平衡器,然後反向 Proxy 至各種 IBM WebSphere 裝載的 Java Web 服務。

  2. Java Web 服務會透過 TCP/1521 詢問 Oracle 資料庫。 在大部分情況下,同步 Web 要求響應時間小於 1 秒(秒),但根據測試和 Weblog 分析,超過 300 毫秒。

  3. 異步要求,例如排程批次工作,會將記錄放在 Oracle 資料庫數據表中,做為應用層內的佇列。

  4. 以 ksh 文稿撰寫的 cron 作業會查詢 Oracle 資料庫中的佇列,並挑選要執行的 SAS 分析作業。 客戶必須在夜間進行批處理,以限制在上班時間對系統效能的影響。

  5. 電子郵件警示會透過 SMTP(TCP/25) 通知使用者和系統管理員作業的開始和完成時間,以及成功或失敗的結果。

  6. 分析作業結果會透過 NFS (TCP+UDP/111,2049) 移至共用磁碟驅動器,以透過 SMBv3 (TCP/445) 收集。

案例詳細資料

此原始架構會評估在IBM WebSphere 上執行的整合型 Java 應用程式,並評估 Ksh 腳本協調的 SAS 批處理。 在個別 AIX 主機上執行的 Oracle 資料庫支援這兩個應用程式工作負載。

請考慮在 AIX 上執行的原始工作負載,以判斷轉譯移轉策略是否符合您的移轉預算。 從您所需的結果向後工作,以判斷雲端的轉換性、以應用程式為中心的移轉路徑。 請確定大部分的應用程式程式代碼是以雲端原生服務所撰寫的語言撰寫,例如無伺服器架構和容器協調器,都支援。

在此案例中, Tidal Accelerator 分析了 Java 應用程式程式代碼,並判斷其與 JBoss EAP 的相容性。 在專案初期,Azure Pipelines 或 GitHub Actions 會用來重建應用程式作為試驗。 然後,客戶就可以在受控服務中建立持續整合和持續傳遞 (CI/CD) 管線的靈活度,例如 Azure App 服務。 客戶無法在其內部部署 WebSphere 環境中取得這項功能。

此範例會保留此階段中的 Oracle 資料庫,因為分析階段期間發現潮汐加速器的 PL/SQL 數量。 客戶的未來努力包括從 RHEL 上的 Oracle 資料庫移轉至完全受控 適用於 PostgreSQL 的 Azure 資料庫 資料庫、採用 Azure 佇列 儲存體,以及執行完全隨選 SAS 作業。 這些工作符合客戶的技術藍圖、開發週期,以及應用程式擁有者面試中決定的業務方向。 下列螢幕快照顯示潮汐加速器中的面試。

潮汐加速器中面試的螢幕快照。

潛在使用案例

您可以將此架構用於 AIX 至 Azure 移轉,這些移轉涵蓋數據分析、客戶關係管理 (CRM)、混合式雲端組態中的大型主機整合層,以及庫存和倉儲管理案例中的其他自定義軟體解決方案。

您可以透過下列技術,將此架構用於傳統應用程式工作負載:

  • Oracle Siebel
  • Oracle E-Business Suite
  • SAS
  • IBM BPM

考量

這些考量能實作 Azure Well-Architected Framework 的要素,其為一組指導原則,可以用來改善工作負載的品質。 如需詳細資訊,請參閱 Microsoft Azure Well-Architected Framework (部分機器翻譯)。

可靠性

可靠性可確保您的應用程式符合您對客戶的承諾。 如需詳細資訊,請參閱 可靠性的設計檢閱檢查清單。

此架構會使用 Azure Site Recovery 將資料庫 Azure VM 鏡像到次要 Azure 區域,以在整個 Azure 區域失敗時快速故障轉移和災害復原。 同樣地,Azure 檔案儲存體 使用異地備援記憶體。

數據處理節點會使用區域備援 (RA-ZRS) 受控磁碟,在區域中斷期間提供復原能力。 在整個區域中斷期間,您可以從備援 Azure 計算資源庫內的 VM 映射,重新佈建不同區域中的數據處理節點。

安全性

安全性可提供保證,以避免刻意攻擊和濫用您寶貴的資料和系統。 如需詳細資訊,請參閱 安全性的設計檢閱檢查清單。

此架構會採用不可變的基礎結構方法來部署應用程式,並主動掃描 Azure 管線中的程式碼,以協助保護生產環境中的敏感數據。 它納入 了安全性掃描的左 移方法,並經常執行已啟用 CI/CD 管線的部署,以改善軟體目前的遵循並降低技術債務。

成本最佳化

成本最佳化是關於考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱 成本優化的設計檢閱檢查清單。

此解決方案會盡可能移除盡可能多的伺服器元件,以降低超過 70% 的作業成本。 此架構可降低計算和軟體授權成本。

卓越營運

卓越營運涵蓋部署應用程式並使其持續在生產環境中執行的作業流程。 如需詳細資訊,請參閱 卓越營運的設計檢閱檢查清單。

產品小組在 Azure 中支援自己,這可減少回報事件票證的解決時間。 此外,票證的退回計數或從一個群組指派給另一個群組的票證數目為零,因為一個產品小組支援 Azure 中的整個應用程式堆疊。

效能效益

效能效率可讓您的工作負載進行調整,以有效率的方式符合使用者對其放置的需求。 如需詳細資訊,請參閱 效能效率的設計檢閱檢查清單。

客戶儘可能採用 Azure App 服務,以便自動相應增加和相應放大其計算需求,以符合應用程式需求。 此彈性可確保在尖峰期間保持一致的應用程式效能。 這種方法也符合成本效益。

參與者

本文由 Microsoft 維護。 原始投稿人如下。

主體作者:

Richard Berry| Sr. Program Manager

若要查看非公開的 LinkedIn 設定檔,請登入 LinkedIn。

下一步

如需使用潮汐加速器解決方案的詳細資訊, 請連絡 Microsoft Tidal Cloud 小組

如需移轉至 Azure 的詳細資訊, 請連絡舊版移轉工程小組