將 IaaS 設定為 Private Cloud Appliance

您必須先設定網路、運算、儲存、作業系統以及安裝 Oracle Grid Infrastructure 和 Oracle RAC 資料庫軟體,才能在 Oracle Private Cloud Appliance 上建立 Oracle RAC 資料庫。Private Cloud Appliance 上的 IaaS 組態將類似以下架構。



rac-pca-architecture.zip

在建立基礎架構之前,請先檢閱這些假設與考量:

  • Oracle RAC 環境中的所有節點 (虛擬機器) 都必須連線到至少一個公用網路,讓使用者和應用程式能夠存取資料庫。
  • 除了公用網路之外,Oracle RAC 還需要專用網路連線,此連線專門用於那些節點上執行之節點與資料庫執行處理之間的通訊。
  • 使用 Oracle Private Cloud Appliance 時,只能設定一個專用網路連結。此網路通常稱為連結。連結網路是連線叢集中的所有伺服器的專用網路。
  • 除了存取 Compute Enclave UI (CEUI) 之外,您還必須在堡壘主機 VM 上設定 OCI CLI 以使用 OCI 執行命令,而不需使用 CEUI。

以下各節描述如何在私有雲設備系統上建立運算、網路和儲存建構。

設定網路

  1. 建立虛擬雲端網路 (VCN) 並定義有效的 CIDR 範圍。您可以使用運算 Enclave UI (CEUI) 或 OCI CLI。
  2. 建立公用子網路和專用子網路。此外,請定義閘道,例如動態路由閘道、網際網路閘道、安全規則、DHCP 選項及路由表。
  3. 建立主要 DNS 區域和 DNS 區域記錄。
  4. 在 DNS 區域記錄中註冊 SCAN 名稱和虛擬 IP。設定方式如下:
    • 使用 Customer Enclave 或使用 OCI CLI,將解析為 DNS 區域中三個不同 IP 位址的 SCAN 名稱註冊。
    • 使用「客戶端」或針對 Oracle RAC 叢集中的每個節點使用 OCI CLI,在 DNS 區域中以 IP 位址註冊虛擬 IP 名稱。
    [root@vmrac1 ~]#nslookup node1_name-vip.domain_name
    Server: X.X.X.X
    Address: X.X.X.X
    Name: node1-vip.domain_name
    Address: X.X.X.Y4
    [root@vmrac2 ~]#nslookup node2_name-vip.domain_name
    Server: X.X.X.X
    Address: X.X.X.X
    Name: node2-vip.domain_name
    Address: X.X.X.Y5
  5. 建立操控原則,並將 Answers 新增為三個 IP 位址,解析為相同的 SCAN 名稱。
  6. 新增操控原則並連附 DNS 區域以操控原則。
  7. 驗證 SCAN 名稱結果。例如:
    [root@vmrac1 ~]# nslookup SCAN_name.domain_name
    Server: X.X.X.X
    Address: X.X.X.X
    Name: SCAN_name
    Address: X.X.X.Y1
    Name: SCAN_name
    Address: X.X.X.Y2
    Name: SCAN_name
    Address: X.X.X.Y3

設定運算節點

以下步驟描述如何建立運算 VM。
  1. 在相同的公用子網路中啟動兩個 VM。依照下列方式設定 VM:
    • 兩個 Private Cloud Appliance 運算執行處理搭配 OL7.9 平台映像檔。
    • VM 資源配置 VM.PCAStandard1.x。其中 x 應該夠大,以提供叢集節點的 CPU 以及至少兩個 VNIC。每個叢集節點至少要有兩個 OCPU。
    • 啟用兩個節點上主要 (預設) VNIC 的略過來源 / 目的地檢查。如需詳細資訊,請參閱「Oracle Private Cloud Appliance 使用者指南」中的「Updating a VNIC」。
  2. 在兩個運算節點上設定次要 IP,如下所示:
    • 系統已為每個運算執行處理建立一個主要 VNIC。
    • 在與運算執行處理主要 VNIC 相同的 VCN 子網路中。
    • 它的主要 IP 位址會被指派一個主機名稱,也就是預期的叢集主機名稱。
    • 將次要 IP 位址指派給此 VNIC,指定的主機名稱為 cluster-node-name-vip
  3. 在相同專用子網路中的兩個節點上設定專用 IP,如下所示:
    • 在每個運算執行處理上,為每個叢集節點建立一個次要 VNIC。如需詳細資訊,請參閱 Oracle Private Cloud Appliance 使用者指南中的「設定次要 VNIC 的執行處理作業系統」。您可能需要下載和執行 Oracle 指令碼 secondary_vnic_all_configure.sh,並編輯 /etc/sysconfig/network-scripts/ifcfg* 檔案以啟用次要 VNIC。
    • 在啟動執行處理之後,在兩個節點的專用子網路中新增第二個 VNIC。這會從專用子網路 CIDR 範圍指定 IP 位址。
    • 確定所有防火牆都停用,讓專用相互連線流量能夠在沒有問題的情況下完成。
    • 更新 /etc/hosts 檔案中專用 IP 的項目。
    • 您可以選擇輸入 IP 位址,或讓系統從專用子網路 CIDR 範圍指定 IP 位址。
    Cat /etc/hosts
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
    X.X.X.A1 node1 node1.domain_name 
    X.X.X.A2 node2 node2.domain_name
    X.X.X.A3 node1-vip node1-vip.domain_name
    X.X.X.A4 node2-vip node2-vip.domain_name
    X.X.Y.B1 node1-priv node1-priv.domain_name
    X.X.Y.B2 node2-priv node2-priv.domain_name
    
    兩個節點上的 /etc/hosts 檔案應該都有公用 IP、虛擬 IP 和專用 IP 的項目,如上範例所示。
  4. 將本機區塊磁碟區連附至每個節點。
    在每個運算執行處理上,為每個叢集節點建立一個新的區塊磁碟區,然後以讀取 / 寫入模式將它連附至運算執行處理。此磁碟區將用於 Grid Infrastructure 本位目錄和 Oracle Database 本位目錄。

設定儲存

Oracle RAC 使用 Oracle Automatic Storage Management (Oracle ASM) 來存取共用儲存體。Oracle Automatic Storage Management (Oracle ASM) 作為基礎的叢集磁碟區管理程式。它讓資料庫管理員具備簡單的儲存體管理介面,在所有伺服器和儲存體平台上都一致。Oracle Automatic Storage Management (Oracle ASM) 是垂直整合的檔案系統和磁碟區管理程式,專門為 Oracle Database 檔案而設計,可讓您輕鬆管理檔案系統,以獲得原始 I/O 的效能。
  1. 建立共用儲存體磁碟群組。請至少建立一個將用於 Oracle Automatic Storage Management (Oracle ASM) 磁碟群組的區塊磁碟區。此區塊磁碟區必須以共用模式連附至這兩個 VM、設定 Oracle Automatic Storage Management (Oracle ASM) 磁碟的 AFD,以及使用 asmcmd 命令建立 AFD_label。這些區塊磁碟區將用於 ASM 底下的叢集共用磁碟。
  2. 確定磁碟的權限設定方式如下:
    chown grid:asmadmin /dev/sdc
  3. 設定在重新啟動之後持續的磁碟權限。建立下列檔案和更新磁碟權限:
    /etc/udev/rules.d
  4. 建立本機儲存掛載點,設定方式如下:
    • 建立兩個用於每個節點之本機掛載點的區塊磁碟區。您必須為每個 VM 連附一個以讀取 / 寫入模式建立的新區塊磁碟區。
    • 在每個 VM 上建立本機掛載點作為每個節點上的 /u01
    • 在此區塊磁碟區上建立檔案系統,然後在每個節點上建立 /u01。在每個節點上的 /u01 上建立檔案系統。
    • 確定在 /etc/fstab 中新增項目,這樣在重新啟動後仍會維持不變。此掛載點將用於每個節點上的 Oracle Grid Infrastructure 本位目錄和 Oracle Database 本位目錄。

設定作業系統

設定 Oracle Grid InfrastructureOracle RAC 的使用者、群組和環境。
  1. 建立具有主要與次要群組的方格與 Oracle 使用者,並檢查兩個節點上的使用者 ID。
    [root@vmrac1 ~]#groupadd -g 201 oinstall
    groupadd -g 200 dba
    groupadd -g 202 asmadmin
    groupadd -g 203 asmdba
    [root@vmrac1 ~]#useradd -u 200 -g oinstall -G dba,asmdba oracle
    useradd -u 123 -g oinstall -G dba,asmdba,asmadmin grid
    id oracle
    id grid
    root@vmrac2 ~]#groupadd -g 201 oinstall
    groupadd -g 200 dba
    groupadd -g 202 asmadmin
    groupadd -g 203 asmdba
    [root@vmrac2 ~]#useradd -u 200 -g oinstall -G dba,asmdba oracle
    useradd -u 123 -g oinstall -G dba,asmdba,asmadmin grid
    id oracle
    id grid
  2. root 使用者身分在兩個節點上執行這些指令,以建立軟體安裝目錄。
    [root@vmrac1 ~]#mkdir -p /u01/app/21.0.0/grid
    chown grid:oinstall /u01/app/21.0.0/grid
    mkdir -p /u01/app/grid
    mkdir -p /u01/app/oracle
    chown -R grid:oinstall /u01 
    chown oracle:oinstall /u01/app/oracle
    chmod -R 775 /u01/
    mkdir /etc/oraInventory
    chown grid:oinstall /etc/oraInventory
    chmod 770 /etc/oraInventory
  3. 為下列三位使用者設定無密碼 SSH 組態:rootgridoracle。如果您沒有「角色區隔」,則 Oracle Grid InfrastructureOracle RAC 資料庫軟體都只需要一個 oracle 使用者。

設定 Oracle Grid InfrastructureOracle RAC 資料庫軟體

  1. 暫存 Oracle Grid InfrastructureOracle RAC 資料庫軟體。
  2. 建立階段目錄。例如:/u01/app/stage
  3. Oracle Grid Infrastructure 軟體暫存目錄 (/u01/app/stage),然後解壓縮軟體安裝目錄 (/u01/app/21.0.0/grid) 中的 Oracle Grid Infrastructure 軟體。
  4. 執行「叢集」驗證公用程式,確認它符合安裝先決條件。例如:GI_HOME/bin/runcluvfy.sh stage -pre crsinst -n node1,node2 -fixup -verbose
    /u01/app/21.0.0/grid/bin/runcluvfy.sh stage -pre crsinst -n racvm1,racvm2 -fixup -verbose
    請先修正叢集驗證輸出中的任何錯誤,再繼續安裝。也可以使用 cluvfy 指令產生的修正命令檔。