使用 Flask Web 伺服器部署 Autonomous Database
啟用專用子網路中 Oracle Cloud Infrastructure 完全受管理自治式資料庫的專用存取。這會將專用 IP 指定給自治式資料庫以進行存取。
架構
此架構顯示公用 Flask Web 伺服器,連線至在 Oracle Cloud Infrastructure 中佈建專用端點的自發式資料庫。

autonomous-db-private-endpoint.png 圖解的描述
autonomous-db-private-endpoint-oracle.zip
架構包含下列元件:
- 自治式資料庫,含專用端點
此架構使用在專用子網路中佈建的自發式資料庫 (可以是 Oracle Autonomous Transaction Processing 資料庫或 Oracle Autonomous Data Warehouse );亦即專用端點。
- 區域
Oracle Cloud Infrastructure 區域是包含一或多個資料中心 (稱為可用性網域) 的本地化地理區域。區域與其他區域無關,而且大型距離可以區隔 (跨國家或甚至洲)。
- 可用性網域
可用性網域是區域內獨立的獨立資料中心。每個可用性網域中的實體資源都會與其他可用性網域中的資源隔離,以提供容錯。可用性網域不會共用基礎架構,例如電源、冷卻或內部可用性網域網路。因此,一個可用性網域的失敗並不會影響區域中的其他可用性網域。
- 虛擬雲端網路 (VCN) 和子網路
VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。VCN 就像傳統資料中心網路一樣,可讓您完全控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,供您在建立 VCN 之後變更。您可以將 VCN 區隔為子網路,子網路範圍可為區域或可用性網域。每個子網路均包含一個未與 VCN 中其他子網路重疊的連續位址範圍。您可以在建立子網路之後變更子網路的大小。子網路可以是公用或專用。
在此架構中,Web 伺服器會連附至公用子網路,而自治式資料庫則位於專用子網路中。
推薦
您的需求可能會與此處描述的架構不同。請使用下列建議作為開始點。
- 運算資源配置
此架構使用 Oracle Linux 7。7 運算執行處理搭配 Flask-based 伺服器的 VM.Standard2.1 資源配置。如果應用程式需要更多的處理能力、記憶體或網路頻寬,請選擇較大的資源配置。
- VCN
當您建立 VCN 時,請根據計畫連附至 VCN 中子網路的資源數目,決定所需的 CIDR 區塊數目和各個區塊的大小。使用標準專用 IP 位址空間內的 CIDR 區塊。
建立 VCN 之後,您可以變更、新增及移除其 CIDR 區塊。
- 自治式資料庫
在此架構中,應用程式會將關聯式資料儲存在自治式資料庫中。建議您使用最新版本的 Oracle Database。
考量
- Web 伺服器擴展性
您可以使用運算執行處理集區和自動調整功能來調整 Flask 應用程式規模。
執行處理集區可讓您根據相同組態,在相同區域內佈建及建立多個運算執行處理。
自動調整可讓您根據效能測量結果 (例如 CPU 使用率),自動調整執行處理集區中的運算執行處理數目。自動調整可協助您為高需求期間的使用者提供一致的效能,並協助您降低低需求期間的成本。
- 自治式資料庫擴展性
您可以隨時手動擴展資料庫的基本 CPU 核心數目。自動調整功能可讓您的資料庫隨時使用最多三次的 CPU 核心數目。隨著需求增加,自動調整會自動增加使用中的核心數目。您可以隨時擴展資料庫的儲存容量,而不會影響使用狀態或效能。
- 應用程式可用性
容錯域提供可用性網域內的最佳復原能力。如果您需要較高的可用性,請考慮使用多個可用性網域或多個區域。
- 自治式資料庫備份
您的自治式資料庫會自動備份,備份會保留 60 天。您可以在保留期間將資料庫回復並復原至任何時間點。
您也可以建立手動備份來補充自動備份。手動備份會儲存在您在 Oracle Cloud Infrastructure Object Storage 中建立的儲存桶中,而備份會保留 60 天。
- 運算備份
Oracle Cloud Infrastructure Block Volumes 服務可讓您建立區塊磁碟區資料的時間點備份。然後,您可以立即或稍後將備份回復至新的磁碟區。
您也可以使用服務進行開機磁碟區的時間點、損毀一致性備份,而不需要應用程式中斷或停止工作。開機磁碟區備份功能與區塊磁碟區備份功能相同。
- 安全性
- 原則
您可以使用原則來限制可以存取 Oracle Cloud Infrastructure 資源的人員,以及他們可以執行的作業。
- 網路安全性
網路服務提供兩種虛擬防火牆功能,使用安全規則來控制封包層次的流量:安全清單和網路安全群組 (NSG)。
NSG 包含一組傳入和傳出安全規則,僅適用於您在 VCN 內選擇的一組 VNIC。例如,NSG 可以包括多層應用程式之 Web 層中所有運算執行處理的 VNIC。
NSG 安全規則的運作方式與安全清單規則相同。不過,對於 NSG 安全規則的來源或目的地,您可以指定 NSG 而非 CIDR 區塊。因此,您可以輕鬆撰寫安全規則,以控制相同 VCN 中兩個 NSG 之間的流量,或單一 NSG 內的流量。
在 Oracle Cloud Infrastructure 中啟動設定自治式資料庫時,您可以指定一或多個 NSG。您也可以更新現有資料庫以使用一或多個 NSG。
- 原則
建置
GitHub 中提供此參照架構的 Terraform 程式碼。只要按一下即可將程式碼提取至 Oracle Cloud Infrastructure Resource Manager,然後建立堆疊並加以部署。或者,您也可以從 GitHub 下載程式碼到您的電腦、自訂程式碼,以及使用 Terraform CLI 建置架構。
- 使用 Oracle Cloud Infrastructure Resource Manager 進行部署:
- 按一下
如果您尚未登入,請輸入租用戶和使用者證明資料。
- 複查並接受條款與條件。
- 選取要建置堆疊的區域。
- 依照畫面上的提示和指示建立堆疊。
- 建立堆疊之後,請按一下 Terraform 動作,然後選取計畫。
- 等待工作完成,然後複查計劃。
若要進行任何變更,請返回「堆疊詳細資訊」頁面,按一下編輯堆疊,然後進行必要的變更。然後,再次執行「計劃」動作。
- 如果不需要進一步的變更,請返回「堆疊詳細資訊」頁面,按一下 Terraform 動作,然後選取套用。
- 按一下
- 使用 Terraform CLI 部署:
- 前往 GitHub。
- 將程式碼下載或複製到您的本機電腦。
- 依照 README 中的指示進行。