AlloyDB Omni 提供自動化調度平台,可在非 Kubernetes 環境中部署及管理 AlloyDB Omni,例如 Red Hat Enterprise Linux (RHEL) 和使用 Red Hat Package Manager (RPM) 套件的相容系統。RPM 自動化調度部署選項可將類似雲端的彈性和自動化功能,擴展至地端和虛擬機器 (VM) 基礎架構。
企業可使用 RPM 調度管理工具安裝、設定及管理 AlloyDB Omni 執行個體,方法是使用標準 RPM 套件。這種做法適合在 VM 基礎架構投入大量資金,且已建立以自動化工具 (例如 Ansible) 為基礎的作業實務的機構。RPM 調度管理工具部署選項會直接在 Linux VM 或裸機伺服器上執行,不需要 Docker 等容器化層,也不需要 Kubernetes 等調度管理系統。
用途
RPM 編排器部署選項支援下列用途:
| 用途 | 說明 |
|---|---|
| 擁有 VM 基礎架構的企業 | 支援 Kubernetes 非標準的企業,或偏好標準 VM 或裸機部署的容器化環境 (具有應用程式依附元件)。 |
| 簡化作業 | 使用 Ansible 等常用工具,自動部署、設定及管理資料庫生命週期。 |
| 高可用性 (HA) 和災難復原 (DR) | 設定具備自動容錯移轉和復原機制的彈性 AlloyDB Omni 叢集。 |
| 混合式環境 | 確保地端部署資料中心和雲端 VM 的資料庫作業一致。 |
| 舊版系統整合 | 可與專為非容器化環境設計的現有應用程式和系統整合。 |
優點
RPM 編排器部署選項的優點包括:
- 快速部署:自動執行從佈建到驗證的整個生命週期,大幅減少設定 AlloyDB Omni 叢集的時間和複雜度。
- 完美整合:與標準 Linux 套件管理 (RPM) 和熱門自動化架構 (例如 Ansible) 原生整合,讓團隊運用現有技能和工具整合。
- 一致的體驗:提供與 AlloyDB Omni Kubernetes 運算子相近的管理和作業使用者體驗與功能集,確保不同部署模型之間的一致性。
- 企業級高可用性 (HA) 和災難復原 (DR):支援高可用性和災難復原的彈性設定,可滿足業務持續性需求。
- 完善的安全性:有助於實作多面向的安全策略,包括使用者管理、使用憑證 (SSL) 的網路安全,以及與系統 (例如 Microsoft Active Directory) 整合。
- 集中式管理:使用 AlloyDB Omni 服務,為管理 VM 上的 AlloyDB Omni 提供統一的控制層。
- 可觀測性和稽核:使用 rsyslog 與外部記錄伺服器 (例如 Elastic Stack) 整合,集中管理、監控及稽核記錄。
- 資料保護:提供簡化備份和還原設定與策略的功能。
- 連線集區:支援部署 PgBouncer,以最佳化資料庫連線並提升效能。
- 機群管理:可大規模管理多個 AlloyDB Omni 叢集。
架構
AlloyDB Omni 定義了元件階層,可提供彈性。這項彈性有助於盡量提高資料可用性,並提升查詢效能和處理量。這種做法可讓您監控 AlloyDB Omni 部署作業,並根據工作負載調整規模和大小。
下圖顯示在裸機或 VM 環境中部署 AlloyDB Omni 的分類。

圖 1. AlloyDB Omni VM 部署拓撲
階層中的頂層資源是 AlloyDB Omni 部署作業,其中包含主要叢集和一或多個次要叢集。AlloyDB Omni 叢集有一或多個執行個體,這些執行個體是使用者連線的運算資源抽象化。叢集包含主要執行個體 (讀寫) 和一或多個選用的讀取集區執行個體 (唯讀)。每個執行個體都有自己的存取端點。您可以選擇設定單一節點的主要執行個體,用於獨立部署,也可以設定多個節點,用於高可用性部署。所有節點都已部署 AlloyDB Omni 和其他相關元件,使用的軟體套件如下:
主要執行個體包含一個有效 (讀寫) 節點,專門處理交易工作負載。如要進行基本測試、實驗和開發以外的資料庫叢集,請設定高可用性,並新增待命節點。為避免因故障導致提供讀取和寫入交易的主要節點無法使用,進而造成資料遺失 (RPO=0),請將待命節點的同步複製模式設為 RPO。RPO 定義為復原點目標。
元件
RPM 協調器部署選項包含一組軟體元件,每個元件都以 RPM 或 Debian 套件的形式安裝,可完整部署高可用性 AlloyDB Omni。參考架構會依賴這些元件執行資料庫作業。
| 元件 | 說明 |
|---|---|
| 自動調度管理工具 | AlloyDB Omni 編排作業提供指令列和 Ansible 介面,可協助您在分散式環境中部署及管理一或多個 AlloyDB Omni 叢集。 |
| alloydbomni | AlloyDB Omni 核心包含 PostgreSQL 和自動駕駛功能,可提升效能和功能,支援現代工作負載,例如線上分析處理 (OLAP) 和生成式 AI。 |
| alloydbomni_monitor | AlloyDB Omni 監控器可讓您從 AlloyDB Omni 提取指標。 |
| etcd | etcd 提供分散式設定系統,叢集管理員會使用這個系統儲存 PostgreSQL 設定和狀態資訊。 |
| 叢集管理員 | 中央控制層會協調叢集範圍的作業,包括啟動叢集、管理高可用性、處理容錯移轉、協調升級,以及為自動化工具 (例如 Ansible 和 alloydbctl 指令列公用程式) 公開介面。 |
| 節點管理工具 | 在 AlloyDB Omni 叢集的每個節點上執行的代理程式。與叢集管理工具互動,在節點上執行工作,例如安裝及設定 AlloyDB Omni、管理資料庫服務生命週期 (啟動和停止)、監控節點健康狀態,以及收集記錄和指標。 |
| HAProxy | HAProxy 可做為 AlloyDB Omni 部署作業的負載平衡器,公開讀寫和唯讀端點,並與叢集管理員搭配運作,將流量重新導向至適當的現用節點。 |
| keepalived | keepalived 可以使用浮動虛擬 IP 位址,為參與節點 (例如 HAProxy) 提供高可用性。 |
| PgBouncer | PgBouncer 是 PostgreSQL 資料庫的輕量型連線集區器。 |
| pgBackRest | pgBackRest 是專為 PostgreSQL 設計的開放原始碼備份與還原工具。 |
這個架構可讓您在現有的 Linux VM 環境中有效率地執行及操作 AlloyDB Omni,並結合 AlloyDB Omni 與您熟悉的既有作業實務。
系統需求
AlloyDB Omni 部署堆疊的系統需求包括一組預先設定的虛擬機器,用於執行各種元件。每個 AlloyDB Omni 虛擬機器都必須附加以 ext4/xfs 檔案系統設定的資料磁碟。系統會根據資料大小估算磁碟大小。儲存空間的效能特性會影響 AlloyDB Omni 的效能。下表列出 VM 的最低和建議 CPU 與記憶體設定。
| VM 類型 | 最低硬體和作業系統 (OS) 需求 | 建議的硬體和作業系統 |
|---|---|---|
| 控制器節點 |
|
|
| 負載平衡器節點 |
|
|
| AlloyDB Omni (獨立) |
|
|
| AlloyDB Omni (高可用性) |
|
|
| 備份存放區節點 |
|
|
高可用性部署參考架構
與單一節點資料庫設定相比,高可用性架構可進一步防範資料層停機。這項參考架構設定採用三節點設定,其中一個節點是主要主動節點,其他節點則是同步串流複製的待命伺服器,部署在不同區域。如果主要節點故障,其中一個待命節點就會接管主要節點,處理用戶端查詢。
軟體堆疊中的叢集管理員元件會執行叢集設定。叢集管理員也會監控 AlloyDB Omni 伺服器,並透過分散式設定系統 (例如 etcd) 選擇新的主要伺服器。企業會將 RPO 和 RTO (復原時間目標) 做為可用性的主要衡量指標。高可用性架構設定可針對區域層級的故障,提供接近零的 RPO 和 RTO。
額外節點會部署以 HAProxy 為基礎的負載平衡器,並為唯讀工作負載設定額外端點。HAProxy 會與叢集管理工具搭配運作,監控目前的現用節點,並在容錯移轉發生時切換至新的現用節點。用戶端會連線至 HAProxy 節點,對資料庫執行作業。下圖顯示這種 HA 部署架構。

圖 2:高可用性部署架構
RPM orchestrator
使用 RPM 編排器的 AlloyDB Omni 提供自動化平台和控制平面,可在 VM 或裸機伺服器上安裝、設定及管理 AlloyDB Omni 資料庫叢集。包括各種參考架構設定,例如獨立、彈性及可擴充的高可用性 (HA)。
AlloyDB Omni 叢集管理工具提供控制層。 這個元件是核心服務,可自動管理 AlloyDB Omni 叢集並確保高可用性,協助控管 AlloyDB Omni 叢集的端對端生命週期。控制層本身具有高可用性,可處理各種故障情況。
RPM 自動調度管理工具部署選項是遠端介面,可與 AlloyDB Omni 叢集管理工具服務通訊。協調器會在專屬節點上執行,稱為「控制節點」。您可以在這個節點中,透過安全管道遠端管理一或多個叢集。為確保與環境相容,我們提供多種 AlloyDB Omni 自動化調度管理工具。選擇適合自動化需求的自動調度管理工具。
- AlloyDB Omni 編排器 CLI (以 RPM 形式提供):建議用於使用殼層指令碼自動部署及管理叢集的環境。
- RPM 調度管理員 Ansible (以 Ansible Collection 形式提供):建議用於使用以 Ansible 為基礎的內建自動化功能,並準備好透過呼叫其他 Ansible 角色來擴充自動化功能的環境。我們提供 Ansible 劇本範例,方便您與現有的 Ansible 劇本整合。
AlloyDB Omni 編排器可協助執行下列 AlloyDB Omni 叢集相關作業。以 Ansible 為基礎的編排器會為每項作業提供 Ansible 角色。您可以使用殼層提示或殼層指令碼,透過指令列叫用一組指令。
Installation:在各個節點上安裝各種叢集元件。Bootstrap:根據規格設定及啟動所有元件。Update:更新較新版本或更新設定的資源。Status:取得叢集中所有元件或服務的狀態。List:取得叢集中部署的可用資源清單。Delete:刪除叢集資源。
協調器會以 YAML 格式接收一組規格做為輸入內容。
- 部署規格:這與定義 VM 叢集拓撲的 Ansible 目錄格式相同。其中包含各種 VM 群組 (例如下列群組) 及其設定。
primary_instance_nodes:專為 AlloyDB Omni 資料庫伺服器設計的節點。cluster_manager_nodes:選用。執行 AlloyDB Omni 叢集管理伺服器的節點。如果沒有專屬的叢集管理員節點,您可以在primary_instance_nodes上部署叢集管理員。etcd_nodes:叢集管理員會在 etcd 上儲存中繼資料。如果未明確指定,etcd 可以與叢集管理員節點在相同節點上執行。load_balancer_nodes:這些是專為 HAProxy 型負載平衡器設計的額外節點。
- 資源規格:叢集由一或多個要部署及管理的叢集資源組成,例如資料庫叢集和連線集區。資源規格採用 YAML 格式,說明要在叢集中部署的資源。
限制
- 預覽版僅支援下列項目:
- AlloyDB Omni PostgreSQL 18
- 與 RHEL 第 9 版相容的軟體套件
- Intel x86 64 位元平台
- 不支援升級主要版本。
- 本文未提供災難復原和讀取集區執行個體的設定說明。
- AlloyDB Omni 監控功能不支援 SSL 連線。您必須在與 AlloyDB Omni 節點相同的私有網路上,部署監控資訊主頁伺服器。
- AlloyDB Omni 假設主機上已設定 SELinux (如有),且為寬容模式,包括檔案系統的存取權。
後續步驟
- 選擇 AlloyDB Omni 下載與安裝選項。
- 安裝 AlloyDB Omni 編排器。