設定私有雲以安裝 Oracle RAC

您可以在私人雲端中部署 Oracle Real Application Clusters (RAC)。本文件說明如何部署新叢集,並為 Oracle RAC 解決方案最佳化虛擬機器 (VM)。完成這些步驟後,您就可以安裝及設定 Oracle RAC。

儲存空間政策

叢集中必須有足夠的節點,才能成功導入 Oracle RAC。在 vSAN 儲存空間政策中,容錯 (FTT) 計算會套用至用於儲存資料庫、記錄和重做磁碟的資料磁碟。有效容錯失敗的節點數量為 2N+1,其中 N 是 FTT 的值。

舉例來說,如果所需 FTT 為 2,叢集中的節點總數必須為 2*2+1 = 5

部署作業總覽

以下各節說明如何為 Oracle RAC 設定私人雲端環境。

磁碟設定最佳做法

建議的磁碟設定包括專用磁碟和共用磁碟。請只在個別虛擬機器 (VM) 上掛接作業系統和軟體安裝磁碟。共用其他磁碟,在 Oracle RAC 叢集中執行特定功能。

Oracle 磁碟總覽。

下表說明本文件稍後所示範例設定中使用的磁碟。

磁碟 Purpose 共用雲端硬碟
作業系統 作業系統磁碟
GRID Oracle Grid 軟體的安裝位置
資料庫 Oracle 資料庫軟體的安裝位置
ORAHOME Oracle 資料庫二進位檔的基礎位置
DATA1、DATA2、DATA3、DATA4 儲存 Oracle 資料庫檔案的磁碟
REDO1、REDO2、REDO3、REDO4、REDO5、REDO6 Redo 記錄磁碟
OCR1、OCR2、OCR3、OCR4、OCR5 投票磁碟
FRA1、FRA2 快速復原區磁碟

虛擬機器設定

  • 為每個 VM 設定四個 SCSI 控制器。
  • 將 SCSI 控制器類型設為 VMware 半虛擬
  • 建立多個虛擬磁碟 (.vmdk)。
  • 將每部磁碟掛接至不同的 SCSI 控制器。
  • 為共用叢集磁碟設定多寫入者共用類型。
  • 定義 vSAN 儲存空間政策,確保磁碟的高可用性。

作業系統和軟體磁碟設定

為每個 Oracle VM 設定多個磁碟,用於主機作業系統、交換、軟體安裝和其他 OS 功能。這些磁碟不會在 VM 之間共用。

  • 針對每個 Oracle RAC VM,設定及掛接三個虛擬磁碟:
    1. OS 磁碟
    2. 用於儲存 Oracle Grid 安裝檔案的磁碟
    3. 用於儲存 Oracle 資料庫安裝檔案的磁碟
  • 將磁碟設為Thin Provisioned
  • 將每部磁碟掛接至第一個 SCSI 控制器 (SCSI0)。
  • 將共用設定設為「不共用」
  • 使用 vSAN 政策定義儲存空間的備援機制。

Oracle RAC 實體磁碟。

資料磁碟設定

資料磁碟主要用於儲存資料庫檔案。

  • 針對每個 Oracle RAC VM,設定並掛接四個虛擬磁碟。
  • 將每部磁碟掛接至不同的 SCSI 控制器。
  • 將每個虛擬磁碟設為「Thick Provision Eager Zeroed」
  • 將共用設定設為「多位寫入者」
  • 將磁碟設為儲存空間自動管理 (ASM) 磁碟群組。
  • 使用 vSAN 政策定義儲存空間的備援機制。
  • 將 ASM 備援設為「外部」

Oracle RAC 資料磁碟。

Redo 記錄磁碟設定

Redo 記錄檔會儲存對資料庫所做的變更副本。如要在任何失敗後復原資料,請使用記錄檔案。

  • 針對每個 Oracle RAC VM,設定及掛載六個磁碟。
  • 將每部磁碟掛接至不同的 SCSI 控制器。
  • 將每個虛擬磁碟設為「Thick Provision Eager Zeroed」
  • 將共用設定設為「多位寫入者」
  • 將重做記錄磁碟設為兩個 ASM 磁碟群組,每個群組有三個磁碟。
  • 將 ASM 備援設為「正常」
  • 在每個 ASM 重做記錄群組中建立五個重做記錄檔案。
SQL > alter database add logfile thread 1 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 1 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 1 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 1 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 1 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 2 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 2 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 2 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 2 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;
SQL > alter database add logfile thread 2 ('+ORCLRAC_REDO1','+ORCLRAC_REDO2') size 1G;

Oracle RAC 重做磁碟。

Oracle 投票磁碟設定

如果兩個節點在誤以為另一個節點無法運作而繼續獨立運作時,彼此之間的連線中斷,Oracle RAC 叢集就可能發生問題。投票磁碟可提供額外的通訊管道,有助於避免發生這個問題。

  • 針對每個 Oracle RAC VM,設定及掛接五個磁碟。
  • 將所有磁碟掛接至單一 SCSI 控制器。
  • 將每個虛擬磁碟設為「Thick Provision Eager Zeroed」
  • 將共用設定設為「多位寫入者」
  • 將磁碟設為 ASM 磁碟群組。
  • 將 ASM 備援設定為「高」

Oracle RAC 投票磁碟。

Oracle 快速復原區域磁碟設定 (選用)

快速復原區域 (FRA) 檔案系統由 Oracle ASM 磁碟群組管理。FRA 會提供備份和復原檔案的共用儲存空間。Oracle 會在 FRA 中建立封存記錄和回溯記錄。Oracle Recovery Manager (RMAN) 可選擇將備份組和映像檔副本儲存在 FRA 中,以便在媒體復原期間還原檔案。

  • 針對每個 Oracle RAC VM,設定及掛接兩個磁碟。
  • 將每部磁碟掛接至不同的 SCSI 控制器。
  • 將每個虛擬磁碟設為「Thick Provision Eager Zeroed」
  • 將共用設定設為「多位寫入者」
  • 將磁碟設為 ASM 磁碟群組。
  • 將 ASM 備援設為「外部」

Oracle RAC FRA 磁碟。

部署私有雲 vSphere 叢集

如要在私有雲中部署 vSphere 叢集,請按照下列程序操作:

  1. 建立私有雲的主要管理叢集。在Google Cloud 控制台中建立私有雲。Google 會在新私有雲中建立名為 CloudOwner 的預設 vCenter 使用者。如要瞭解預設私有雲使用者和權限模型,請參閱「私有雲權限模型」。
  2. 在入口網站中,新增集群,藉此將節點新增至私有雲。這個叢集用於部署 Oracle RAC。根據所需的 FTT 選取節點數量。至少使用三個節點。

設定 Oracle RAC 的網路

在私有雲中建立兩個子網路,一個用於 Oracle 公用網路,另一個用於 Oracle 私有網路。指派適當的子網路 CIDR。

設定 vSAN 儲存空間政策

vSAN 政策會定義 VM 磁碟上儲存資料的 FTT 和磁碟分割。建立 VM 時,您建立的儲存空間政策必須套用至 VM 磁碟。

  1. 登入私有雲的 vSphere 用戶端
  2. 選取「政策和設定檔」
  3. 選取「VM Storage Policies」,然後選取「Create a VM storage Policy」
  4. 輸入政策名稱,然後點選「下一步」
  5. 在「政策結構」下方,選取「啟用 vSAN 儲存空間的規則」,然後按一下「下一步」
  6. 在「vSAN」>「可用性」部分,選取「None」做為「Site disaster tolerance」
  7. 針對「容許的失敗次數」,請針對所需的 FTT 選取「RAID - 鏡像」選項。
  8. 在「進階」下方,選取每個物件的磁碟區塊數量。
  9. 在「Object space reservation」(物件空間預留) 部分,選取「Thick Provisioned」(厚型已佈建)。
  10. 選取「停用物件總和檢查」。點選「下一步」
  11. 按照畫面上的指示查看相容的 vSAN 資料儲存庫清單、檢查設定,然後完成設定。

建立 Oracle VM 和共用 VM 磁碟

如要為 Oracle 建立 VM,您可以複製現有的 VM 或建立新的 VM。本節說明如何在安裝基礎作業系統後,建立新的 VM,然後複製該 VM 以建立第二個 VM。建立 VM 後,您可以建立磁碟並新增至 VM。Oracle 叢集會使用共用磁碟來儲存資料、記錄和重做記錄。

建立 VM

  1. 在 vCenter 中,按一下「主機和叢集」圖示。選取您為 Oracle 建立的叢集。
  2. 在叢集上按一下滑鼠右鍵,然後選取「新增虛擬機器」
  3. 選取「建立新的虛擬機器」,然後點選「下一步」
  4. 為機器命名、選取 Oracle VM 的位置,然後按一下「Next」
  5. 選取叢集資源,然後按一下「下一步」
  6. 選取叢集的 vSAN 資料儲存庫,然後按一下「Next」
  7. 保留預設的 ESXi 6.5 相容性選項,然後按一下「Next」
  8. 為要建立的 VM 選取 ISO 的訪客 OS,然後按一下「Next」
  9. 選取安裝作業系統所需的硬碟大小。
  10. 如要在其他裝置上安裝應用程式,請按一下「新增裝置」
  11. 選取網路選項,並指派您為公開網路建立的散發埠群組。
  12. 如要新增網路介面,請按一下「新增裝置」,然後選取您為私人網路建立的分散式連接埠群組。
  13. 在「New DC/DVD Drive」中,選取包含所需作業系統安裝 ISO 的資料儲存庫 ISO 檔案。選取先前上傳至「ISO 和範本」資料夾的檔案,然後按一下「OK」
  14. 檢查設定,然後按一下「OK」建立新的 VM。
  15. 啟動 VM。安裝作業系統和所有必要更新。

安裝作業系統後,您可以複製第二個 VM。在 VM 項目上按一下滑鼠右鍵,然後選取複製選項。

為 VM 建立共用磁碟

Oracle 會使用共用磁碟儲存資料、記錄和重做記錄檔。您可以在 vCenter 上建立共用磁碟,然後在兩個 VM 上掛載。為提升效能,請將資料磁碟置於不同的 SCSI 控制器上。下列步驟說明如何在 vCenter 上建立共用磁碟,然後將其連接至 VM。使用 vCenter Flash 用戶端修改 VM 屬性。

在第一個 VM 上建立磁碟

  1. 在 vCenter 中,按一下 Oracle VM 的滑鼠右鍵,然後選取「Edit settings」
  2. 在「新裝置」部分中,選取「SCSI 控制器」,然後按一下「新增」
  3. 在「New device」部分中,選取「New Hard disk」,然後按一下「Add」
  4. 展開「New Hard disk」的屬性。
  5. 指定硬碟的大小。
  6. 指定 VM 儲存空間政策,為您在「設定 vSan 儲存空間政策」一文中定義的 vSAN 儲存空間政策。
  7. 選取 vSAN 資料儲存庫中的資料夾做為位置。這個位置可協助您瀏覽磁碟並將磁碟連接至第二個 VM。
  8. 針對磁碟佈建,請選取「Thick provision eager zeroed」
  9. 如要共用,請指定「多重寫入者」
  10. 針對虛擬裝置節點,選取在步驟 2 中建立的新 SCSI 控制器。

針對 Oracle 資料、記錄和重做記錄檔案所需的所有新磁碟,重複執行步驟 2 至 10。

將磁碟連接至第二個 VM

  1. 在 vCenter 中,按一下 Oracle VM 的滑鼠右鍵,然後選取「Edit settings」
  2. 在「新裝置」部分中,選取「SCSI 控制器」,然後按一下「新增」
  3. 在「New device」部分中,選取「Existing Hard disk」,然後按一下「Add」
  4. 瀏覽第一個 VM 建立磁碟的位置,然後選取 VMDK 檔案。
  5. 指定 VM 儲存空間政策,為您在「設定 vSan 儲存空間政策」一文中定義的 vSAN 儲存空間政策。
  6. 針對磁碟佈建,請選取「Thick provision eager zeroed」
  7. 如要共用,請指定「多重寫入者」
  8. 針對虛擬裝置節點,選取在步驟 2 中建立的新 SCSI 控制器。

針對 Oracle 資料、記錄和重做記錄檔案所需的所有新磁碟,重複執行步驟 2 到 7。

設定 VM 與主機的相依性規則

VM 到主機相依性規則可確保 VM 在所需主機上執行。您可以在 vCenter 上定義規則,讓 Oracle VM 在有足夠資源的主機上執行,並符合任何特定授權規定。

  1. 在 Google Cloud 控制台CloudOwner提升使用者的權限。
  2. 登入私有雲的 vSphere 用戶端
  3. 在 vSphere 用戶端中,選取部署 Oracle VM 的叢集,然後按一下「Configure」
  4. 在「Configure」下方,選取「VM/Host Groups」
  5. 按一下「+ 新增」
  6. 新增 VM 群組。
    1. 選取「VM 群組」做為類型。
    2. 輸入群組名稱。
    3. 選取 VM,然後按一下「OK」建立群組。
  7. 新增主機群組。
    1. 選取「主機群組」做為類型。
    2. 輸入群組名稱。
    3. 選取 VM 執行所在的主機,然後按一下「OK」建立群組。
  8. 如要建立規則,請按一下「VM/Host 規則」
  9. 按一下「+ 新增」
    1. 輸入規則名稱,然後勾選「啟用」
    2. 在規則類型中,選取「要代管的虛擬機器」
    3. 選取含有 Oracle VM 的 VM 群組。
    4. 選取「必須在這個群組中的主機上執行」
    5. 選取您建立的主機群組。
  10. 按一下 [OK] (確定) 建立規則。

參考資料

後續步驟