一種雲原生、事件驅動的架構,巧妙地利用雲資源和事件作為服務之間的主要通訊機制。 這種架構通過分離元件,使系統具有可擴充套件性、彈性和敏捷性,從而實現對事件的實時響應。 它使用事件流式處理和無伺服器計算進行分布式事件驅動的通訊和處理。 Oracle Cloud Infrastructure Events 是一款功能強大的自動化工具,可根據各種雲資源狀態的變化建立自動化操作。 它允許我們建立規則,將事件傳送到特定的 OCI 資源,例如 Oracle Cloud Infrastructure Flows**、OCI Functions 和 Oracle Cloud Infrastructure Notifications。 在某些情況下,我們需要將訊息發布到專用流。 雖然 OCI 事件可以將事件直接傳送到公有流終端節點,但它目前不支援將訊息直接傳送到私有流終端節點,因為私有端點只能在同一虛擬雲網路中解析,而 OCI 事件無法將訊息推送到私有流。 但是,這可以通過在事件規則中使用 OCI 函式作為操作型別來實現。 此參考架構全面概述了如何利用 OCI 函式和 OCI 事件將訊息傳送到私有流終端節點。 在此參考體系結構中,我們將展示如何在建立或更新 Oracle Cloud Infrastructure Object Storage 中的檔案時利用 OCI 函式和 OCI 事件將訊息發布到專用 OSS 流式處理端點。 架構圖清楚地描述了資料流的過程:它從將檔案上傳到 OCI 物件儲存中的特定儲存桶開始。 隨後,根據定義的事件規則條件,觸發 OCI 事件。 然後,發出的事件將呼叫乙個函式,該函式從上傳的檔案中提取資料,並將資料和事件訊息發布到 OCI 函式中配置的專用流終端節點。 請務必注意,為了確保 OCI 功能可以訪問專用流訊息端點,應在同一虛擬雲網路 (VCN) 和專用子網中建立流服務和功能。 下圖詳細說明了此參考體系結構。
首先,您需要設定 OCI 功能應用和 OCI 流服務(流池和流)。
請準備以下資訊。 配置 OCI 功能的環境變數需要以下值:
使用者 ID用於身份驗證的使用者 OCID。
租戶 ID租戶 OCID。 它可以在使用者配置檔案中找到。
指紋用於對 OCI API 進行身份驗證。
面積建立請求的區域識別符號。
api私鑰API 私鑰檔案位置。
流 ocidOSS流OCID。
身份驗證令牌使用者設定中的身份驗證令牌。
流終結點OSS流端點(從流資訊介面的訊息端點獲取)
該架構由以下元件組成:租戶註冊 Oracle Cloud Infrastructure 時,Oracle 會為您建立乙個安全且獨立的雲部分:您的租戶。 您可以在租戶的 Oracle Cloud 中建立、組織和管理資源。 租戶可以被視為公司或組織的同義詞。 通常,公司將有乙個租戶,其組織結構將反映在該租戶中。 單個租戶通常與單個訂閱相關聯,該訂閱通常只有乙個租戶。 面積Oracle Cloud Infrastructure 區域是包含乙個或多個資料中心(稱為可用性域)的地理區域。 區域彼此獨立,可以跨越國家甚至大陸。 分割槽分割槽是 Oracle Cloud Infrastructure 租戶中的跨區域邏輯分割槽。 您可以使用分割槽來組織 Oracle Cloud 中的資源、控制對這些資源的訪問以及設定使用配額。 為了控制對特定分割槽中資源的訪問,您需要定義策略來指定誰可以訪問這些資源以及他們可以執行哪些操作。 可用性域可用性域是區域內獨立的資料中心。 每個可用性域中的物理資源與其他可用性域中的資源隔離,從而提供容錯能力。 可用性域不共享基礎結構,例如電源或冷卻系統,也不共享內部可用性域網路。 因此,乙個可用性域的故障不太可能影響該區域中的其他可用性域。 容錯域容錯域是可用性域中的一組硬體和基礎結構。 每個可用性域都包含三個用於獨立電源和硬體的容錯域。 在多個容錯域之間分配資源時,應用程式可以承受容錯域內的物理伺服器故障、系統維護和電源故障。 虛擬雲網路 (VCN) 和子網虛擬雲網路是在 Oracle Cloud Infrastructure 區域中設定的可定製的軟體定義網路。 與傳統的資料中心網路一樣,VCN 可讓您完全控制網路環境。 乙個 VCN 可以有多個不重疊的 CIDR 塊,您可以在建立 VCN 後更改這些 CIDR 塊。 您可以將 VCN 劃分為多個子網,這些子網的作用域可以限定為區域或可用性域。 每個子網都由連續的位址範圍組成,這些位址範圍不與 VCN 中的其他子網重疊。 您可以在建立子網後更改子網的大小。 子網可以是公有子網,也可以是私有子網。 安全列表對於每個子網,您可以建立安全規則,以指定必須允許進出子網的流量、目標和流量型別。 服務閘道器服務閘道器提供從 VCN 到其他服務(如 Oracle Cloud Infrastructure Object Storage)的訪問。 從 VCN 到 Oracle 服務的流量通過 Oracle 網路基礎結構傳輸,不會遍歷 Internet。 物件儲存物件儲存提供對大量結構化和非結構化資料的快速訪問,包括資料庫備份、分析資料以及影象和資料等豐富內容。 您可以安全可靠地儲存資料,然後直接從網際網絡或雲平台中檢索資料。 您可以無縫擴充套件儲存空間,而不會影響效能或服務可靠性。 對於需要快速、即時和頻繁訪問的“熱”儲存,請使用標準儲存; 對於長時間儲存且訪問時間很少或沒有時間訪問的“冷”儲存,請使用存檔儲存。 事件Oracle Cloud Infrastructure 服務生成的事件是描述資源更改的結構化訊息。 這些事件包括建立、讀取、更新或刪除 (CRUD) 操作、資源生命週期狀態更改以及影響雲資源的系統事件。 流Oracle Cloud Infrastructure Flows** 提供完全託管、可擴充套件且持久的儲存解決方案,用於攝取可實時使用和處理的連續海量資料流。 流式處理可用於引入大量資料,例如應用程式日誌、操作遙測、點選流資料; 或用於連續和按順序生成和處理資料的發布-訂閱訊息傳遞模型的其他用例。 功能Oracle Cloud Infrastructure Functions 是乙個完全託管、多租戶、高度可擴充套件的按需功能即服務 (FaaS) 平台。 它由 FN 專案開源引擎提供支援。 函式允許您部署 ** 並直接呼叫它或觸發它以響應事件。 Oracle 函式使用 Oracle Cloud Infrastructure 登錄檔中託管的 docker 容器。 原木日誌是一項高度可擴充套件且完全託管的服務,可提供以下型別的雲資源日誌訪問: 審核日誌:與審核服務發出的事件相關的日誌。
服務日誌:單個服務發出的日誌,例如 API 閘道器、事件、函式、負載均衡、物件儲存和 VCN 流日誌。
自定義日誌:包含來自自定義應用程式、其他雲提供商或本地環境的診斷資訊的日誌。
推薦使用以下建議作為使用 OCI 函式和 OCI 事件實施此參考架構的起點。 您的需求可能與此處描述的體系結構不同。 vcn建立 VCN 時,請根據您計畫在 VCN 子網中連線到的資源數量確定所需的 CIDR 塊數和每個塊的大小。 使用標準專用 IP 位址空間中的 CIDR 塊。
選擇與您打算建立專用連線的任何其他網路(在 Oracle Cloud Infrastructure、內部部署資料中心或其他雲提供商中)不重疊的 CIDR 塊。
建立 VCN 後,您可以更改、新增和刪除其 CIDR 塊。
在設計子網時,請考慮流量的去向和安全需求。 將特定層或角色中的所有資源連線到同一子網,該子網可用作安全邊界。
雲衛士轉殖和自定義 Oracle 提供的預設配方,以建立自定義檢測器和響應器配方。 通過這些配方,您可以指定哪種型別的安全漏洞會生成警告,以及允許對其採取哪些操作。 例如,您可能希望檢測可見性設定為 public 的物件儲存儲存桶。
在租戶級別應用 Cloud Guard,以覆蓋最廣泛的範圍,並減輕維護多個配置的管理負擔。
您還可以使用“託管列表”功能將某些配置應用於檢測器。
OCI 功能此架構中的 OCI 函式是使用 Python 開發的。 請注意,OCI 函式支援多種程式語言,您可以選擇首選語言來開發和部署函式。
OCI 流**流池是在 VCN 的專用子網中建立的。 流是使用此流池建立的。 請確保在與專用 OSS 流相同的 VCN 中建立函式,並具有所有必要的訪問許可權。
Stream** 還利用 Kafka Connect 生態系統,通過使用現成的 Kafka 源和接收器聯結器,直接與第一方和第三方產品對接。 有關使用 Kafka Connect 的詳細資訊,請參閱探索更多。
OCI 物件儲存此體系結構使用標準物件儲存來上傳檔案。 確保啟用“發出物件事件”,以便甚至可以觸發服務。 對於敏感資料,建議您使用私有儲存桶。 OCI 事件在此架構中,OCI 事件配置為偵聽 OCI 物件儲存中的物件建立和物件更新事件。 在將物件上傳到 OCI 物件儲存後,將呼叫該服務,並呼叫函式對其進行處理。 考慮:在實現此參考體系結構時,請務必考慮以下幾個方面。 效能OCI 事件、OCI 函式和 OCI 流**具有高度可擴充套件性。 根據預期的檔案大小和數量,請考慮調整分割槽和流的數量。 安全使用策略限制誰可以訪問 OCI 資源。 對於 OCI 物件儲存,加密預設處於啟用狀態,無法禁用。 對 OCI 函式中部署的所有函式的訪問通過 Oracle Cloud Infrastructure Identity and Access Management (IAM) 進行控制,該 IAM 允許將函式管理和函式呼叫許可權分配給特定使用者和使用者組。 建議將機密和敏感資料儲存在 OCI 保管庫中。 考慮使用 OCI 保管庫來儲存用於通過 OCI 服務進行授權的 API 金鑰和身份驗證令牌。 可用性Oracle 可確保 OCI 功能、OCI 事件、OCI 流**和 OCI 日誌的高可用性,所有這些都是雲原生且完全託管的。 OCI 流式處理**包括以下高可用性功能: 連續日誌資料流式處理。
多執行緒和可水平擴充套件的服務。
近乎實時的攝取。
對短期中斷的恢復能力。
針對高效資料使用進行了優化。
成本您只需為函式執行時使用的資源付費。 部署GitHub 儲存庫包含實現此參考架構的 OCI 函式。 訪問 GitHub。
轉殖或儲存庫到本地計算機。
按照 README 文件中的指導進行操作。
作為甲骨文標準合作夥伴,Agilewing正在重新定義企業體驗甲骨文雲服務的方式。 憑藉其簡化的開戶流程和一流的技術支援,雅居翼將複雜的開戶和操作流程轉變為簡單、直觀的體驗。 借助我們的一站式服務,您可以快速啟動並執行全套 Oracle 雲服務,從而無縫整合到雲中。 Agilewing 的 AgileCDN 服務與 OCI 基於雲的服務相結合,可提供一流的全球內容加速解決方案。 由2,800多個全球POP節點和7,000個直接連線點組成的強大網路可確保您的業務擴充套件到全球的任何地方,都能確保高效穩定的運營。 利用 Oracle 雲的先進技術,Agilewing 致力於簡化雲服務構建、雲遷移和業務走出去的流程。 “我們的合作模式為客戶提供了經濟高效的解決方案,使他們能夠更專注於核心業務,同時享受 Oracle 雲的高效能和安全性。” Oracle 雲服務是乙個前景廣闊的領域,憑藉其高效能、安全性和全球一致的服務標準,為企業開啟了通往新機遇的大門。 通過雅樂之翼的專業服務,無論是個人使用者還是企業,都能輕鬆進入這個充滿技術創新和高效能的新時代。 讓 Agilewing 開始探索 Oracle 雲服務,開啟通往全新世界的大門。