瞭解部署架構選項

最初佈建之後,所有的 Oracle Content Management 執行處理都會部署在 Oracle Cloud Infrastructure 上。此架構是單一地區內跨多個可用性網域的高可用性拓樸。它會跨這些可用性網域使用 Oracle Container Engine for Kubernetes (OKE) 搭配其可彈性擴展規模的 Kubernetes 叢集。

  • 可用性網域—可用性網域是地區內的一或多個資料中心。可用性網域彼此隔離、容錯,而且不會同時失敗。可用性網域並不共用實體基礎設施 (例如電力或散熱冷卻系統) 或內部可用性網域網路,因此一個可用性網域發生故障並不會影響其他可用性網域。地區中的可用性網域會透過低延遲且高頻寬的網路彼此連線。可用性網域之間的這個可預測、加密的相互連線提供高可用性和災害復原的建置區塊。
  • 容錯域—容錯域結合了可用性網域內的硬體和基礎架構。每個可用性網域都會包含三個容錯域。容錯域可讓您分散執行處理,讓執行處理不會全都位於一個可用性網域內的同一個實體硬體上。因此,硬體若因發生故障或進行維護而影響某個容錯域,並不會影響其他容錯域中的執行處理。您可以在啟動時選擇性地指定新執行處理的容錯域,也可以讓系統為您選取容錯域。

在預設部署中,OKE 會自動跨可用性網域建立多個叢集 (或節點)。所有網站和資產都會同步至每個可用性網域。如果某個可用性網域停止運作,則 OKE 會自動將所有內送流量導向至運作中的可用性網域。如此一來,回復故障的可用性網域時,一般使用者不會注意到服務停機。
高可用性架構範例

建議您使用升級排程選項,控制您執行處理收到新 Oracle Content Management 發行版本的時間。在大部分情況下,服務生產流量的執行處理,以及任何在發生故障時可能為流量提供服務的執行處理都應該使用延遲升級選項。適用於開發及測試用途的執行處理則應使用立即升級選項。此設定值組合將提供您完整的版本週期以確保您的程式碼完整健全,並給予您充分的時間解決所有問題,以免影響到生產流量。「升級排程」選項會在您建立 Oracle Content Management 執行處理之後設定。

高可用性的更多助益

雖然高可用性服務是設計用來提供高度的正常運作時間和可存取性,但是許多客戶仍然會有不同架構可滿足的額外需求。這些額外的架構一方面仍受益於 Oracle Cloud Infrastructure 和 OKE 所提供的內建高可用性,一方面還可建置成支援開發流程,甚至多區域容錯移轉,或以專用的高效能連線進行增強。若要找出最適合您需求的架構,您需要判斷組織開發流程需求、可接受的復原時間目標 (RTO) 和復原點目標 (RPO)。

  • 復原時間目標 (RTO)—RTO 是發生災害之後回復應用程式功能所需的目標時間。目標是測量您必須從災害中復原的速度。一般而言,應用程式越重要,RTO 就應該越低。
  • 復原點目標 (RPO)—RPO 是應用程式可容許的可接受遺失資料時間範圍。RPO 是有關應用程式在災害案例中可以遺失的資料量。

使用 Oracle Cloud Infrastructure FastConnect 的專用執行處理

有些客戶可能也需要公用網際網路所無法提供的額外效能或安全性。Oracle Cloud Infrastructure FastConnect 可用來提供效能更高、更健全且更安全的 Oracle Content Management 執行處理連線。使用這類型的連線通常是想要確保只限於內部網路存取的客戶,或是具備最好又最可靠連線的一般使用者。

如果您想要建立這類執行處理,則需要設定 Oracle Cloud Infrastructure FastConnect 並執行一些額外的先決條件步驟。與網際網路連線相比,FastConnect 提供高頻寬的專用私密連線,讓使用者享有可靠、一致的網路體驗。

請參閱使用 Oracle Cloud Infrastructure FastConnect 建立專用執行處理

開發流程

這是指組織用來建置及部署 Oracle Content Management 新功能和內容的流程。它可以包含新功能和內容在核准用於高階環境和生產環境前必須通過的多個環境。通用設定會包含適用於開發、測試、暫存以及最終的生產環境。您組織的需求可能會有所不同。

如果客戶要運用多個執行處理來支援他們的開發流程,則應該依本文件所述來佈建額外的執行處理,但不需要在執行處理前佈建 Web 應用程式防火牆 (WAF),而是直接存取這些執行處理。在其中一個執行處理中開發內容之後,您可以使用 OCE 工具程式的命令行介面 (CLI),在不同的 Oracle Content Management 執行處理之間傳輸該內容。

註:

建立的額外執行處理若不是用於生產流量,您必須將其標示為非主要,以避免產生重複的資產費用。主要執行處理依執行處理中的資產總數收費。非主要執行處理則是依每月的單一批資產數收費,完全與所複寫的資產總數無關 (例如,若您使用 Video Plus,則計費數為 250 個 Video Plus 資產,而非 5,000 個資產)。如需詳細資訊,請參閱 Oracle PaaS 和 IaaS 通用點數服務說明

若要傳輸變更,您可以使用 OCE 工具程式命令建立網站,以及管理其在開發、測試和生產環境執行處理上的生命週期。您可以對開發環境中的網站進行變更,然後將這些變更傳輸至測試和生產環境。您也可以將這組命令行公用程式併入命令檔環境,以管理部署。您可以使用 CLI 公用程式來推行新項目 (例如資產和元件) 以及現有內容的更新。

請參閱設定從測試環境移轉到生產環境 (T2P) 的部署

實行備份區域

如果您的組織想要使用備份區域在發生故障時繼續提供公用網站內容,請設定 Web 應用程式防火牆 (WAF),並將內容複寫至備份。

您的備份可以位於與主要執行處理相同的地區或不同的地區中。在不同的區域中建立備份更能保護資料或可用性免於遺失。

註:

Oracle Content Management 目前只支援透過 WAF 存取公用網站。如果您的網站需要認證,則必須從原始網域直接存取該網站。

以下是架構範例:

WAF 設定範例

建立備份可能需要相當長的時間,特別是您有大量的網站和資產時,因此建議您在工作時間之外進行備份。根據執行處理中所進行的內容變更量,您應該判斷是要每日進行備份,還是一週一次非經常性地進行備份。

實行備份區域時,您需使用 Oracle Cloud Infrastructure Web Application Firewall 服務將流量導向主要 (作用中) 執行處理,而在發生失敗時,則需將其切換成指向備份 (待命) 執行處理。

註:

當您建立備份執行處理時,必須將它標示為非主要,這樣就不需要針對重複的資產付費。主要和非主要執行處理是以不同的費率計費

建立主要執行處理之後,請執行下列步驟以實行備份區域:

  1. 建立新的 Oracle Content Management 執行處理。

    佈建此執行處理 (只有在主要區域故障時才會服務生產流量) 時,請確定將它標示為非主要,以避免針對此執行處理中的所有資產被二度收費。此外,因為這可能會成為生產環境執行處理,通常應將其設為延遲升級,但是必須位於和主要區域相同的升級排程中,以避免在主要區域和備份區域之間切換流量時發生問題。

    若想要將備份放置在與主要執行處理不同的區域中,請在次要區域中建立備份

  2. 使用 Oracle Cloud Infrastructure Web Application Firewall 服務設定 Web 應用程式防火牆 (WAF)
  3. 使用 OCE 工具程式將您的所有網站和資產從主要執行處理傳輸至備份執行處理:
    1. 將主要執行處理上現有的儲存區域、通道及本地化規定複製到備份執行處理。
    2. 如果您尚未安裝,請建立 VM 運算執行處理
    3. 在您的 VM 運算執行處理上安裝 OCE 工具程式,並設定它使用 IDCS 認證。
    4. 註冊 Oracle Content Management 主要和備份執行處理。
    5. 傳輸網站及其資產,從主要執行處理傳輸至備份執行處理。
  4. 測試是否正確地複寫您的資料。在主要執行處理中進行一些變更 (小於五項),包括每種物件類型的變更,然後使用 OCE 工具程式重新備份資料,並確認這些變更會正確地反映在備份執行處理中。
  5. 同步在主要執行處理無法使用時,可能需要存取備份執行處理使用者介面的所有使用者。例如,您至少需要同步您的管理員。

    註:

    備份執行處理應僅用於測試或在發生失敗時持續提供公用網站服務,不適用於對需要認證的網站持續提供內容或進行存取。
  6. 測試您的系統在主要區域故障時是否如預期運作:
    1. 停用主要執行處理。
    2. 切換 WAF 來源,透過更新 WAF 原則,以便指向備份執行處理上的流量。
    3. 傳輸 WAF 原則變更時,請確認備份執行處理上的所有使用者體驗都如預期運作。
  7. 更新 WAF 原則,使其重新指向主要執行處理來重新啟用主要執行處理,並確認主要執行處理在接管其內容管理和一般使用者傳遞原始責任時如預期運作。

設定 Web 應用程式防火牆

設定和啟用 Web 應用程式防火牆 (WAF) 有數個涉及的步驟來實行備份區域:

  1. 建立 WAF 原則
  2. 上傳 SSL 憑證和金鑰
  3. 建立次要來源
  4. 發布您的變更
  5. 更新 DNS 組態
  6. 在執行處理上設定 WAF

如果您需要從主要切換至次要執行處理,您可以更新 WAF 原則。

建立 WAF 原則

若要設定 WAF 原則,請執行下列步驟:

  1. 以雲端帳戶管理員身分登入 Oracle Cloud。您可以從歡迎使用電子郵件中取得您的帳戶名稱和登入資訊。
  2. 在「基礎架構主控台」中,按一下左上方的 「導覽」功能表圖示 以開啟導覽功能表,按一下識別與安全,然後按一下 Web 應用程式防火牆底下的原則
  3. 選取要建立 WAF 原則的區間。
  4. 按一下建立 WAF 原則
  5. 輸入下列詳細資訊來建立 WAF 原則:
    • 名稱:提供原則的唯一名稱 (例如,cross_site_WAF)。請避免輸入機密資訊。
    • 主要網域:輸入應用程式的完整網域名稱 (例如,oce.example.com)。這是使用者將用來存取您應用程式的 URL,會接著指向主要或次要 Oracle Content Management 執行處理。
    • 其他網域:(選擇性) 輸入應該套用原則的任何子網域。
    • 來源名稱:提供主要來源的唯一名稱 (例如, primary_salesdocuments1)。
    • URI:輸入主要執行處理的公用端點 (URI) (例如,salesdocuments1-myaccount.cec.ocp.oraclecloud.com)。
  6. 按一下建立 WAF 原則

上傳 SSL 憑證和金鑰

若要上傳 SSL 憑證和金鑰,請執行下列步驟:

  1. 在檢視您建立的 WAF 原則時,按一下左側的設定值
  2. 按一下一般設定值頁籤上的編輯
  3. 在「編輯設定值」對話方塊中:
    1. 選取啟用 HTTPS 支援以加密瀏覽器與 Web 應用程式之間的通訊。
    2. 選取上傳或貼上憑證和私密金鑰
    3. 上傳憑證來源底下拖放或選取檔案,或選取文字並貼上有效的 PEM 格式 SSL 憑證。您也必須包括中繼憑證 (主網域憑證必須是第一個)。
    4. 上傳私密金鑰來源底下拖放或選取檔案,或選取文字並在此欄位中貼上有效的 PEM 格式私密金鑰。私密金鑰未受密碼保護。
    5. 如果您使用自行簽署的憑證,請選取自行簽署憑證以在瀏覽器中顯示 SSL 警告。
    6. 如果想將所有 HTTP 流量自動重新導向至 HTTPS,請選取 HTTP 至 HTTPS 重新導向
    7. 按一下儲存變更。此更新會顯示在「未發布的變更」下方。

建立次要來源

若要建立次要來源,請執行下列步驟:

  1. 按一下來源群組頁籤。
  2. 按一下來源群組頁籤中的編輯
  3. 按一下其他來源
  4. 請輸入下列詳細資訊:
    • 名稱:提供次要來源的唯一名稱 (例如, secondary_salesdocuments1)。
    • URI:輸入次要執行處理的公用端點 (URI) (例如,salesdocuments2-myaccount.cec.ocp.oraclecloud.com)。
    • HTTP 連接埠:輸入次要執行處理所監聽的 HTTP 連接埠。預設連接埠為 80。
    • HTTPS 連接埠:輸入連接埠,用於與次要執行處理的安全 HTTP 連線。預設連接埠為 443。
  5. 按一下儲存變更以建立次要來源。此更新會顯示在「未發布的變更」下方。

發布您的變更

若要發布您所做的變更,請執行下列步驟:

  1. 按一下左側的未發布的變更
  2. 按一下全部發布
  3. 在「發布變更」對話方塊中,按一下全部發布

    可能需要一些時間才能完成更新。

更新 DNS 組態

使用區域的 CNAME 更新 DNS 組態,將要求從網際網路從屬端遞送至 WAF。您可以開啟建立的 WAF 原則來尋找 CNAME。CNAME 值是 OCI 網域內主要網域以連字號連接的版本 (例如,oce-example-com.o.waas.oci.oraclecloud.net)。

如果您使用子網域 cec.ocp.oraclecloud.com,則需要記錄支援要求,要求 Oracle 客戶服務部執行 DNS 更新。

在執行處理上設定 WAF

若要在執行處理上設定 WAF,請執行下列步驟:

  1. 在「基礎架構主控台」中,按一下左上方的 「導覽」功能表圖示 以開啟導覽功能表,然後依序按一下開發人員服務內容管理
  2. 按一下主要執行處理,以檢視執行處理詳細資訊。
  3. 按一下設定 WAF
  4. 在「設定 Web 應用程式防火牆」對話方塊中,選取您稍早建立的 WAF 原則。

    即會顯示執行處理的區間名稱。如果 WAF 原則位於不同的區間中,請按一下變更區間,然後選取正確的區間。

  5. 按一下儲存變更

    對執行處理進行更新時,您將會在「活動」清單中看到進度。更新完成之後,當您查看執行處理詳細資訊時,將會看到列出 WAF 主要網域

  6. 請為次要執行處理重複步驟 2 到 5。

切換 WAF 來源

如果您基於測試或備份用途,需要將 WAF 來源從主要執行處理變更為次要執行處理 (反之亦然),您可以更新 WAF 原則。

Oracle Content Management

若要切換 WAF 來源,請執行下列步驟:

  1. 以雲端帳戶管理員身分登入 Oracle Cloud。您可以從歡迎使用電子郵件中取得您的帳戶名稱和登入資訊。
  2. 在「基礎架構主控台」中,按一下左上方的 「導覽」功能表圖示 以開啟導覽功能表,按一下識別與安全,然後按一下 Web 應用程式防火牆底下的原則
  3. 開啟為您執行處理所建立的 WAF 原則,然後按一下左側的設定值
  4. 按一下來源群組頁籤,然後按一下編輯
  5. 設定您要切換作為預設來源的來源,然後按一下儲存變更。此更新會顯示在「未發布的變更」下方。
  6. 按一下左側的未發布的變更
  7. 按一下全部發布
  8. 在「發布變更」對話方塊中,按一下全部發布

    可能需要一些時間才能完成更新。完成後,您應用程式的流量將會被導向至選取的來源。

請記住,透過 WAF 進行重新導向應僅用於測試,或在發生失敗時持續提供公用網站服務。使用者必須直接存取已認證的網站或 Oracle Content Management 使用者介面。

設定從測試環境移轉到生產環境 (T2P) 的部署

若要以有效率的方式執行高可用性環境,並在應用程式從測試環境搬移至暫存環境再到生產環境時,能夠順暢地管理應用程式,此模型是提供這些運作所需檢查及平衡的基本配備。

在此部署中,您可以建立專用執行處理來個別保存您的開發、測試及生產。

  1. 使用下列設定值建立三個 Oracle Content Management 執行處理
    • 開發 — 執行處理類型:非主要;升級排程:立即升級
    • 測試 — 執行處理類型:非主要;升級排程:立即升級
    • 生產環境 — 執行處理類型:主要;升級排程:延遲升級

    將您的開發和測試執行處理設為非主要,確保您不會為這些執行處理中的資產被二度收費。

    將您的開發和測試執行處理設為立即升級 (一有新的 Oracle Content Management 發行版本可用時) 可讓您在這些執行處理上測試升級,確保升級不會干擾任何已部署的網站。如果您發現任何問題,可以向 Oracle 客戶服務部提出報告,才能在延遲升級套用到後一個發行版本的生產環境執行處理之前先予以修正。

  2. 開發執行處理建立儲存區域、通道、本地化規定、網站以及資產。
  3. 測試生產環境執行處理複製儲存區域、通道及本地化規定。
  4. 如果您尚未安裝,請建立 VM 運算執行處理
  5. 在您的 VM 運算執行處理上安裝 OCE 工具程式,並設定它使用 IDCS 認證。
  6. 註冊您的 Oracle Content Management 來源與目標執行處理。
  7. 從來源執行處理傳輸網站及其資產至目標執行處理。
  8. 測試是否正確地複寫您的資料。在來源執行處理中進行一些變更 (小於五項),包括每種物件類型的變更,然後確認這些變更會正確地反映在目標執行處理中。
  9. 同步所有可能需要次要執行處理存取權的使用者。例如,您至少需要同步您的管理員和開發人員。

如需 OCE 工具程式的詳細資訊,請參閱 Building Sites with Oracle Content Management 中的 Propagate Changes from Test to Production with OCE Toolkit

在您的 VM 運算執行處理上安裝 OCE 工具程式

若要建立「從測試環境移轉到生產環境 (T2P)」部署,您需要在 VM 運算執行處理上安裝 OCE 工具程式,並設定它使用 IDCS 認證。

在 VM 運算執行處理執行下列步驟:

  1. 以 OPC 使用者身分進行登入。
  2. 設定 NodeJS:
    1. 安裝 NodeJS 作為根目錄:
      sudo -s
      cd /usr/local
      wget https://nodejs.org/dist/v12.16.2/node-v12.16.2-linux-x64.tar.xz
      tar xf node-v12.16.2-linux-x64.tar.xz
      exit
    2. 以 opc 使用者身分將 NodeJS 新增至 PATH,並重新載入設定檔:
      vi ~/.bash_profile
      --- add :/usr/local/node-v12.16.2-linux-x64/bin to the PATH -- e.g:
      PATH=$PATH:$HOME/.local/bin:$HOME/bin:/usr/local/node-v12.16.2-linux-x64/bin
      source ~/.bash_profile
    3. 測試 NPM 和 NodeJS:
      [opc@ocivm2pm ~]$ npm --version
      6.14.4
      [opc@ocivm2pm ~]$ node --version
      v12.16.2
  3. 設定 OCE 工具程式:
    1. OCE 工具程式支援透過 IDCS 應用程式的連線,因此不需要快顯 Chromium 進行認證。設定旗標略過此下載:
      export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
    2. 以 OPC 使用者身分安裝工具程式:
      wget https://github.com/oracle/content-and-experience-toolkit/archive/master.zip
      unzip master.zip
      rm master.zip
      cd content-and-experience-toolkit-master/sites/
      npm install
    3. 測試安裝:
      [opc@ocivm2pm sites]$ ./node_modules/.bin/cec --version
      20.4.1
    4. 將 cec 二進位檔案的軟連結新增為根目錄:
      sudo -s
      ln -s /home/opc/content-and-experience-toolkit-master/sites/node_modules/.bin/cec /usr/local/bin/cec
      exit
    5. 測試您是否可以 opc 使用者身分從任何位置執行 cec:
      cd
      [opc@ocivm2pm ~]$ cec --version
      20.4.1
    6. 設定 cec 來源資料夾,並安裝資料夾中的 cec。這會建立一個含有 package.json 的來源樹狀結構,並且執行 npm 安裝以擷取相依項進入來源樹狀結構。
      cd
      mkdir cec
      cd cec
      cec install
  4. 依照 IDCS 應用程式頁面中的指示設定 IDCS 並註冊執行處理。

註冊您的來源與目標伺服器

使用下列命令註冊來源與目標執行處理的連線詳細資訊。例如,如果您將測試環境移轉到生產環境部署同步,可能會有開發 (DEV)、暫存 (TEST) 以及生產環境 (PROD) 等執行處理。

cec register-server DEV -e http://server:port -u username -p password
cec register-server TEST -e http://server:port -u username -p password
cec register-server PROD -e http://server:port -u username -p password
  • 第一個值 (例如 DEVTESTPROD) 是用來識別執行處理端點的伺服器名稱。這個值可以是選擇的任意名稱。
  • -e 這個值是構成 URL (用於存取執行處理) 的伺服器與連接埠。
  • -u 這個值是使用者名稱。此使用者必須是可存取來源執行處理之網站與資產的使用者,或是將擁有目標執行處理之網站與資產的使用者。
  • -p 這個值是使用者的密碼。

註:

您可以傳入 --keyfile 來加密儲存在檔案中的密碼。

傳輸您的企業網站

使用下列命令傳輸您的企業網站:

cec transfer-site SiteName -s DEV -d TEST -r RepositoryName -l LocalizationPolicyName
  • 第一個值 (SiteName) 是所要傳輸之網站的名稱。
  • -s 這個值是您在上一個步驟中註冊的來源執行處理名稱。
  • -d 這個值是您在上一個步驟中註冊的目標執行處理名稱。
  • -r 這個值是目標執行處理中的儲存區域 (您要將網站傳輸至此)。只有將新的企業網站傳輸至目標執行處理時,才需要這個值。
  • -l 這個值是目標執行處理中的本地化規定 (您要套用至傳輸的網站)。只有將新的企業網站傳輸至目標執行處理時,才需要這個值。

如果您在目標執行處理更新網站,則不需要包含儲存區域和本地化規定。

如需詳細資訊,請參閱 Building Sites with Oracle Content Management 中的 Propagate Changes from Test to Production with OCE Toolkit