監控和管理您的 Java 和 Java 應用程式安裝

您可以使用 Java Management Service (JMS) 在您的環境中監控和管理您的 Java 和 Java 應用程式安裝 (Oracle Cloud Infrastructure (OCI)、內部部署和第三方雲端上的 Java 和應用程式安裝)。 JMS 提供基本功能,例如檢視您受管理執行處理中安裝的 Java Runtime Environment (JRE) 詳細資訊、檢視受管理執行處理或受管理執行處理中 JRE 應用程式所使用的 Java 版本 (低於安全基準)。當您訂閱 Oracle Java SE 時,可以使用 JMS 進階功能,例如管理您的 Oracle Java 安裝、執行 Java Development Kit (JDK) Flight Recorder、評估您的應用程式移轉到另一個 JRE,以及掃描執行中應用程式所使用的 Java 程式庫。

Before You Begin - 開始之前

此參考架構假設您已順利加入 OCI。

JMS 是一項 OCI 原生服務,您可以在商業和限制領域中部署。可以透過 API ( JMS 的 OCI 軟體開發套件 (SDK) ) 或 JMS 主控台進行存取。

您將在租用戶的區間內建立 JMS 機組。您可以跨一或多個地理區域擁有多個 JMS 機組和資源。使用機組控制關聯資源的存取權,並將其指派給企業中的部門。透過此方法,客戶企業中的每個部門都可以控制自己的車隊和資源。

執行下列動作以完成 JMS 上線:

  1. 設定 JMS 的 Oracle Cloud Infrastructure ( 手動管理原則或使用精靈 )。
  2. 建立 JMS 機組
  3. 建置代理程式設定代理程式,然後啟用 JMS Plugin。
  4. 監控您受管理執行處理中的 Java 安裝和應用程式。
  5. 視需要執行「進階功能」作業。

如需詳細資訊,請參閱 OCI 文件中的 Java Management service

架構

此架構顯示如何使用 JMS 收集您受管理執行處理環境中執行之 Java 安裝和 Java 應用程式的洞察分析。JMS 使用代理程式監督您環境中的 JDK/JRE。您可以擁有安裝、設定以及啟用這些 JMS 代理程式的擁有權。

JMS 代理程式安裝在受管理的執行處理上,以收集 Java 使用狀況遙測和 Java 使用狀況描述資料。系統會對您的租用戶發出遙測資料並加以儲存,以提供隱私權保護。

您租用戶中安裝的代理程式會從您的租用戶擷取 Java 使用狀況描述資料。JMS 會使用此描述資料來產生洞察分析,例如 Java 版本、安全基準以及近期 Java 更新以及應用程式使用狀況;當您登入 OCI 主控台時會見到此洞察分析。除了處理精簡的中繼資料之外,沒有 Oracle 存取權。

您可以使用 JMS 提供的進階功能分析 Java 應用程式伺服器的使用狀況、識別環境中執行之應用程式所使用的 Java 程式庫潛在漏洞、使用 Java Flight Recorder 進行效能和加密分析,以及管理您環境中的 Oracle Java Runtimes (JDK 版本)。您可以使用進階功能來管理在您環境中執行的 Java。

下圖說明生產環境中的 JMS 服務拓樸。此圖顯示部署來追蹤在 OCI 上執行之 Java、內部部署桌面、膝上型電腦與伺服器,以及第三方雲端服務的代理程式。這些代理程式會部署在您的受管理執行處理中,並且與您在租用戶中建立的資源 (機組) 關聯。

下圖說明此參考架構。

jms-oci-topology.png 的描述如下
jms-oci-topology.png 圖解描述

jms-oci-topology-oracle.zip

以下簡要說明 JMS 代理程式在您受管理執行處理和 OCI 上 JMS 服務之間的資料流向:

  • 您會在受管理的執行處理上安裝此代理程式,而且代理程式會在 OCI 註冊。
  • 設定或啟用 JMS Plugin (傳送 JMS 機組作為參數)。JMS 代理程式現在與想要的 JMS 機組關聯。
  • 註冊的 JMS 代理程式會輪詢 JMS 以進行工作。JMS 將會回應含適當工作要求的輪詢 (如果有的話)。
  • JMS 代理程式會定期掃描受管理的 Java 安裝執行處理,或使用狀況追蹤器中的項目,然後將 Java 度量和 Java 描述資料傳送至 OCI。

下圖顯示 JMS 代理程式與 OCI 服務之間的資料流程。

jms-oci-workflow.png 的描述如下
jms-oci-workflow.png 圖解描述

jms-oci-workflow-oracle.zip

JMS 代理程式與 OCI 服務之間的資料流程如下:
  1. 使用者:在「JMS 代理程式」上安裝代理程式,然後將要求傳送至「JMS 代理程式」(要求)。
  2. JMS 代理程式:將註冊要求傳送至 OCI 服務 (要求)。
  3. OCI 服務:驗證金鑰並傳回描述資料和認證權杖,然後傳送回應給 JMS 代理程式 (回應)。
  4. JMS 代理程式:代理程式已啟動,並傳送回應給使用者 (回應)。
  5. JMS 代理程式:將要求的 Plugin 安裝至 OCI 服務 (要求)。
  6. JMS 代理程式:將 OCI 服務輪詢為工作要求 (要求)。
  7. OCI 服務:傳送工作要求 (回應)。
  8. JMS 代理程式:代理程式取得 Plugin 組合並安裝 (要求)。
  9. JMS 代理程式:定期輪詢,然後將產品目錄傳送到客戶租用戶的 OCI 服務 (要求)。

下方的網路圖概述安裝在您主機機器 (內部部署) 上的 JMS 代理程式與在 OCI 中執行的 JMS 之間的流量。OCI 和 JMS 中的主機機器之間會發生類似的流量模式。

jms-oci-network-traffic.png 的描述如下
jms-oci-network-traffic.png 圖解描述

jms-oci-network-traffic-oracle.zip

  • JMS 代理程式一律使用防火牆 (443) 允許的開啟連接埠,透過與 OCI 自行認證來起始要求。
  • OCI 的管理代理程式和 JMS 服務不會將任何資料推送至代理程式。
  • JMS 代理程式會輪詢工作要求的服務。
    • JMS 代理程式工作要求輪詢間隔可低至 30 秒。
    • 可以設定 JMS 代理程式輪詢間隔,輪詢間隔上限為 10 分鐘。
  • 傳輸的資料會使用 TLS 加密。
  • 建立連線之後,OCI 服務會傳回資料以回應這些要求。

架構具有下列元件:

  • 地區

    Oracle Cloud Infrastructure 區域是一個本地化地理區域,其中包含一或多個稱為可用性網域的資料中心。區域獨立於其他區域,而廣大的距離可以將其分開 (跨國家或大陸)。

  • 可用性網域

    可用性網域是區域內的獨立獨立資料中心。每個可用性網域中的實體資源會與其他可用性網域中的資源隔離,以提供容錯能力。可用性網域不會共用基礎架構 (例如電源或冷卻系統) 或內部可用性網域網路。因此,一個可用性網域的故障不應影響該區域中的其他可用性網域。

  • 區間

    區間是 Oracle Cloud Infrastructure 租用戶內的跨區域邏輯分割區。使用區間來組織、控制存取,以及為您的 Oracle Cloud 資源設定使用配額。在指定的區間中,您可以定義控制存取及設定資源權限的原則。

  • 動態路由閘道 (DRG)

    DRG 是一個虛擬路由器,提供相同區域中 VCN 之間、VCN 與區域外網路 (例如其他 Oracle Cloud Infrastructure 區域中的 VCN、內部部署網路或其他雲端提供者中的網路) 之間的專用網路流量路徑。

  • 執行處理集區

    執行處理集區是區域內從相同執行處理組態建立並且以群組方式管理的一組執行處理。

  • 內部部署網路

    此網路是您組織所使用的區域網路。它是拓樸的發言之一。

  • 安全清單

    您可以為每個子網路建立安全規則,以指定必須允許進出子網路的來源、目的地和流量類型。

  • 安全區域

    安全區域會強制實行加密資料等原則,並防止對整個區間的網路進行公用存取,以確保 Oracle 的安全最佳做法。安全區域會與相同名稱的區間關聯,並且包括套用至區間及其子區間的安全區域原則或處方。您無法新增或移動標準區間至安全區域區間。

  • 動態路由閘道 (DRG)

    DRG 是一個虛擬路由器,提供相同區域中 VCN 之間、VCN 與區域外網路 (例如其他 Oracle Cloud Infrastructure 區域中的 VCN、內部部署網路或其他雲端提供者中的網路) 之間的專用網路流量路徑。

  • 服務閘道

    服務閘道可讓您從 VCN 存取其他服務,例如 Oracle Cloud Infrastructure Object Storage 。從 VCN 到 Oracle 服務的流量會透過 Oracle 網路結構傳送,不會周遊網際網路。

  • Tenancy

    租用戶是 Oracle 在您註冊 Oracle Cloud Infrastructure 時設定在 Oracle Cloud 內的安全隔離分割區。您可以在租用戶內的 Oracle Cloud 中建立、組織及管理您的資源。租用戶與公司或組織同義。通常,公司會擁有單一租用戶,並在該租用戶內反映其組織結構。單一租用戶通常與單一訂閱相關聯,單一訂閱通常只有一個租用戶。

  • 記錄日誌
    日誌記錄是一項可高度擴展且完全託管的服務,可讓您從雲端中的資源存取下列類型的日誌:
    • 稽核記錄:與「稽核」服務所發出之事件相關的記錄。
    • 服務日誌:由個別服務 (例如 API 閘道、事件、函數、負載平衡、物件儲存以及 VCN 流量日誌) 發出的日誌。
    • 自訂日誌:包含自訂應用程式、其他雲端提供者或內部部署環境診斷資訊的日誌。
  • 監督

    Oracle Cloud Infrastructure Monitoring 服務使用指標主動和被動監控您的雲端資源,以監控資源和警報,並在這些指標符合警報指定的觸發條件時通知您。

  • 原則

    Oracle Cloud Infrastructure Identity and Access Management 原則會指定誰可以存取哪些資源及存取方式。存取權是在群組和區間層級授予,這表示您可以撰寫原則,為群組提供特定區間或租用戶的特定存取類型。

  • Oracle Cloud Infrastructure Vault

    Oracle Cloud Infrastructure Vault 可讓您集中管理保護資料的加密金鑰,以及用來保護雲端資源存取的秘密證明資料。您可以使用 Vault 服務來建立和管理 Vault、金鑰和加密密碼。

    OCI Vault 還提供一組豐富的 Rest API 來管理保存庫和金鑰。

  • Workflow

    Oracle Cloud Infrastructure 工作流程服務是一款無伺服器工作流程引擎,為開發人員和架構師提供圖形流程設計工具。它可加速建立和執行 OCI 函數、AI/ML 等 OCI 服務的協調流程,以執行企業邏輯、IT 作業和資料工作。

  • 虛擬雲端網路 (VCN) 和子網路

    VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。與傳統的資料中心網路一樣,VCN 可讓您控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,您可以在建立 VCN 之後變更。您可以將 VCN 區隔成子網路,此子網路可以設定區域範圍或可用性網域。每個子網路都是由連續的位址範圍組成,這些位址不會與 VCN 中的其他子網路重疊。您可以在建立子網路後變更其大小。子網路可以是公用或專用。

  • API 閘道

    Oracle Cloud Infrastructure API Gateway 可讓您發布內含可從您網路存取之專用端點的 API,並視需要向公用網際網路公開。端點支援 API 驗證、要求和回應轉換、CORS、驗證和授權以及要求限制。

  • 自治式資料庫

    Oracle Autonomous Database 是一個完全受管理的預先設定資料庫環境,可用於交易處理和資料倉儲工作負載。您不需要設定或管理任何硬體,也不需要安裝任何軟體。Oracle Cloud Infrastructure 可處理資料庫的建立、備份、修補、升級和調校。

  • 堡壘主機

    堡壘主機是一個運算執行處理,可作為雲端外部拓樸的安全控制進入點。堡壘主機通常是在非軍事區域 (DMZ) 中佈建。它可讓您保護機密資源,方法是將這些資源放置在無法直接從雲端外部存取的專用網路中。拓樸具有單一的已知進入點,您可以定期監督和稽核。因此,您可以避免暴露拓樸中較敏感的元件,而不會影響拓樸的存取。

  • 計算

    透過 Oracle Cloud Infrastructure Compute ,您可以在雲端中佈建及管理運算主機。您可以使用資源配置啟動運算執行處理,以滿足 CPU、記憶體、網路頻寬及儲存的資源需求。建立運算執行處理之後,您可以安全地存取、重新啟動、連附及取消連附磁碟區,以及在不再需要時將其終止。

  • DNS

    Oracle Cloud Infrastructure 網域名稱系統 (DNS) 服務是高度可擴展的全域任播網域名稱系統 (DNS) 網路,可提供增強的 DNS 效能、抗逆力和可擴展性,讓一般使用者可以從任何地方快速連線至網際網路應用程式。

  • Kafka 串流

    Kafka 串流是用於建置應用程式和微服務的用戶端程式庫,其中輸入和輸出資料會儲存在 Kafka 叢集中。它結合了在從屬端寫入和部署標準 Java 和 Scala 應用程式的簡單性,以及 Kafka 伺服器端叢集技術的優點。

  • 物件儲存

    Oracle Cloud Infrastructure Object Storage 可讓您快速存取任何內容類型的大量結構化和非結構化資料,包括資料庫備份、分析資料,以及影像和影片等豐富內容。您可以安全地儲存資料,然後直接從網際網路或雲端平台內擷取資料。您可以擴展儲存體,而不會發生任何效能或服務可靠性的降低問題。針對您需要快速、立即和經常存取的「熱」儲存,使用標準儲存。針對長時間保留且極少或極少存取的「冷」儲存,使用封存儲存。

  • Oracle Management Agent

    Oracle Management Agent 是一項服務,可在 Oracle Cloud Infrastructure 與內部部署受管理的執行處理之間,提供低延遲的互動式通訊和資料收集。管理代理程式會從您要監督的來源收集資料。管理代理程式服務是 Oracle Cloud Service,可管理服務之管理代理程式和 Plug-in 的週期。

  • Oracle Cloud 代理程式

    Oracle Cloud 代理程式是輕量型處理作業,可管理在 OCI 上運算執行處理上執行之 Plugin 的生命週期。JMS Plugin 會從部署在 OCI 中受管理執行處理上的環境收集 Java 描述資料。JMS Plugin 會將此 Java 描述資料擷取至 OCI 中的 JMS 服務。

  • 基輔即服務 (KaaS)

    KaaS 是完全受管理的資料平台服務,主要由 OCI 上的 Control Plane 服務使用。KaaS 提供高階的 NoSQL API,可輕鬆整合、可序列化的掃描、變更饋送串流及其他功能。KaaS 是建立在 Kiev 之上的服務。Kiev 是「NoSQL key-value store」,同時支援迷你交易以方便使用。為了防止應用程式中的並行錯誤,Kiev 的迷你交易具有強式隔離,其提供比 Oracle 和 MySQL 中常用的隔離等級更強的保證。Kiev 的可用性 SLA 為 99.9%

建議

使用下列建議作為起點。 您的需求可能與此處所述的架構不同。
  • VCN

    建立 VCN 時,請根據您計畫附加到 VCN 子網路的資源數量,決定所需的 CIDR 區塊數量和每個區塊的大小。請使用標準專用 IP 位址空間內的 CIDR 區塊。

    選取未與您要設定專用連線的任何其他網路重疊的 CIDR 區塊 (在 Oracle Cloud Infrastructure 中、您的內部部署資料中心或其他雲端提供者)。

    建立 VCN 之後,您可以變更、新增及移除其 CIDR 區塊。

    當您設計子網路時,請考慮流量和安全需求。將特定層或角色中的所有資源附加至相同的子網路,作為安全界限。

    使用區域子網路。

  • 安全

    使用 Oracle Cloud Guard ,主動監控和維護 Oracle Cloud Infrastructure 中資源的安全性。使用安全區域以獲得最高安全性。

  • 雲端保全

    複製及自訂 Oracle 提供的預設處方,以建立自訂偵測器和回應器處方。這些處方可讓您指定產生警告的安全性違規類型,以及允許對其執行哪些動作。例如,您可以偵測可見性設為公用物件儲存的儲存桶。

    在租用戶層級套用 Cloud Guard,以涵蓋最廣泛的範圍,並降低維護多個組態的管理負擔。

    您也可以使用「受管理清單」功能,將特定組態套用至偵測器。

  • 安全區域

    對於需要最高安全性資源,Oracle 建議您使用安全區域。安全區域是與以最佳做法為基礎之 Oracle 定義的安全原則處方關聯的區間。例如,安全區域中的資源不得從公用網際網路存取,且必須使用客戶管理的金鑰來加密。當您在安全區域中建立及更新資源時,Oracle Cloud Infrastructure 會根據安全區域處方中的原則驗證作業,並拒絕違反任何原則的作業。

  • 網路安全群組 (NSG)

    您可以使用 NSG 定義一組適用於特定 VNIC 的傳入和傳出規則。建議您使用 NSG 而非安全列表,因為 NSG 可讓您將 VCN 的子網路架構和應用程式的安全需求分開。

  • 負載平衡器頻寬

    建立負載平衡器時,您可以選取提供固定頻寬的預先定義資源配置,或指定自訂 (彈性) 資源配置,以便在其中設定頻寬範圍,並讓服務根據流量模式自動調整頻寬。只要採用任一方式,您就可以在建立負載平衡器之後隨時變更資源配置。

注意事項

建置此參照架構時,請考量下列各點。

  • 效能
    導入參考架構以偵測及管理內部部署受管理執行處理中的 Java 安裝和 java 應用程式時,請考量下列項目。
    • JMS 使用代理程式來擷取 Java 描述資料 (考量網路流量和小心防火牆組態)。
    • 代理程式需要最新的 JRE 8 版本才能在受管理的執行處理上執行。
    • 此代理程式在受管理的執行處理上需要 512 MB 的可用堆集記憶體。
    • 代理程式將會與受管理執行處理上 CPU 的應用程式競爭。

    您的日誌物件有經過篩選的描述資料。JMS 會處理描述資料以產生洞察分析。這些洞察分析和度量都儲存在服務擁有的 Oracle Autonomous Transaction Processing 資料庫中。您可以使用 API 查詢服務,以取得部署於您環境中之 Java 的歷史洞察分析。JMS 不是即時系統。由於許多其他客戶查詢會載入服務,因此可能會延遲提供目前和歷史的洞察分析。

  • 安全

    使用原則限制可存取您企業中 Oracle Cloud Infrastructure (OCI) 資源的人員,以及存取這些資源的方式。Java 描述資料會從您的環境擷取至您企業擁有的日誌物件。系統會向您呈現 JMS 處理此描述資料和洞察分析。洞察分析儲存在 Oracle Autonomous Transaction Processing 資料庫中。您產生的報表會儲存在 OCI Object Storage 中。

    預設會對 OCI 物件儲存啟用加密,而且無法關閉。

  • 使用狀態

    JMS 已指定為類別 10 服務,發布的服務層級目標為 3'9s (99.9)。

  • 成本

    JMS 是免費服務。每個人都可以使用監控和查詢您環境中對 Java 的洞察分析的基本功能。在您的環境中管理 Java 相關的進階功能僅適用於執行內部部署受管理執行處理的 Java SE 訂閱者。在 OCI 上執行整個工作負載時,也可以使用 JMS 的完整功能版本。

    如果您有內部部署管理的執行處理並使用最少的 Java 工作負載,您可能會發現 JMS 在 OCI 免費層限制內 (可節省運算、儲存及網路輸出成本的每月最低成本) 都能運作。

確認

  • 授權者Atiq Ahamad
  • 提供者Amit Naik, Teck Kian Choo, Laura Hartman, Cindy Church