分享方式:


Azure Managed Instance for Apache Cassandra 中的管理作業

Azure Managed Instance for Apache Cassandra 是一項適用純開放原始碼 Apache Cassandra 叢集的完全受控服務。 此服務也允許根據每個工作負載的特定需求來覆寫設定,而能視需要提供最大彈性和控制。 本文定義此服務所提供的管理作業和功能。 其也說明在維護混合式叢集時,Azure 支援小組與客戶之間的責任區隔。

壓縮

  • 壓縮有不同的類型。 我們目前透過修復執行次要壓縮 (請參閱維護)。 此操作會執行 Merkle 樹狀結構壓縮,這是一種特殊類型的壓縮。
  • 根據資料表上使用 CQL 設定的壓縮策略 (例如 WITH compaction = { 'class' : 'LeveledCompactionStrategy' }),Cassandra 會在資料表達到特定大小時自動壓縮。 建議您謹慎選取工作負載的壓縮策略,不要在此策略之外執行任何手動壓縮。

修補

  • 作業系統層級的修補大約每 2 周自動進行一次。

  • 識別安全性弱點時,將進行 Apache Cassandra 軟體層級的修補。 修補頻率可能會有所不同。

  • 在修補期間,系統會一次一個機架重新啟動機器。 只要不使用仲裁 ALL 設定,而且複寫因數為 3 或更高,應用程式端就不應該會遇到任何降級情況。

  • Apache Cassandra 中的版本格式為 X.Y.Z。 您可以透過服務工具手動控制主要 (X) 和次要 (Y) 版本的部署。 而該主要/次要版本組合所需的 Cassandra 修補 (Z) 則會自動進行。

注意

該服務目前支援 Cassandra 3.11 和 4.0 版本。 這兩個版本都是 GA。 請參閱我們的 Azure CLI 快速入門 (步驟 5),以在叢集部署期間指定 Cassandra 版本。

維護

  • 此服務使用 reaper 自動執行 Nodetool 修復。 此工具每周執行一次。 如果您將自己的服務用於混合式部署,建議停用此工具。

  • 節點狀況監控包含:

    • 主動監視 Cassandra 通道中每個節點的成員資格。
    • 自動偵測及自動減輕虛擬機器、網路、儲存體、Linux 和支援軟體失敗等基礎結構問題。
    • 主動監視 CPU、磁碟、仲裁遺失和其他資源問題。
    • 在情況允許時自動啟動失敗的節點,並手動啟動節點以回應自動產生的警告。

支援

Azure Managed Instance for Apache Cassandra 可為受控叢集內的資料中心可用性提供 SLA。 如果您在使用該服務時遇到任何問題,請在 Azure 入口網站中提出支援要求

我們的支援權益包括:

  • Cassandra 基礎結構問題的單一連絡點:無需個別向 IaaS 小組提出支援案例 (磁碟、計算、網路)。
  • 透過電子郵件主動提供效能瓶頸、調整大小和其他資源限制問題的建議。
  • 全天候的支援涵蓋範圍,包括對任何嚴重中斷問題自動產生的事件。
  • 社群核准的修補支援 (請參閱修補)。
  • 內部 Java JDK/JVM 工程小組支援。
  • 具有軟體供應鏈安全性的 Linux 作業系統支援。

重要

我們將調查並診斷透過支援案例報告的任何問題,並盡可能解決或減輕問題。 不過,您最終會負責任何導致 CPU、磁碟或網路問題的 Apache Cassandra 設定層級使用量。

這類問題的範例包括:

  • 查詢作業沒有效率。
  • 輸送量超過容量。
  • 內嵌的資料超過儲存體容量。
  • keyspace 組態設定不正確。
  • 資料模型或分割區索引鍵策略不佳。

如果我們調查支援案例,並發現問題的根本原因是在 Apache Cassandra 組態層級 (而不是我們維護的任何基礎平台層級層面),我們仍會在關閉案例之前提供補救或風險降低的建議和指引 (在情況允許時)。

建議您啟用計量和/或熟悉 Azure 監視器整合,以避免 Apache Cassandra 中出現常見的應用程式/組態層級問題 (例如上述問題)。

警告

Azure Managed Instance for Apache Cassandra 也可讓您執行 nodetoolsstable 命令,以進行例行 DBA 管理,請參閱此處的文章。 其中一些命令可能會使 cassandra 叢集不穩定,而且應該只在非生產環境中進行測試之後,再謹慎執行。 如果可能的話,應該先部署 --dry-run 選項。 Microsoft 無法針對改變預設資料庫設定和/或資料表的執行命令問題提供任何 SLA 或支援。

備份和還原

預設會啟用快照集備份,並每隔 24 小時進行一次。 備份儲存在內部 Azure Blob 儲存體帳戶中,最長保留 2 天 (48 小時)。 初始的 2 個備份無須付費。 額外的備份則要收取費用,請參閱定價。 若要變更備份間隔或保留期間,您可以在入口網站中編輯原則:

備份排程設定頁面的螢幕擷取畫面。

若要從現有的備份還原,請在 Azure 入口網站中提出支援要求。 提出支援案例時,您需要:

  1. 提供入口網站中您想要還原之備份的備份識別碼。 您可以在入口網站中找到此項:

    備份排程設定頁面的螢幕擷取畫面,其中醒目提示了備份識別碼。

  2. 讓我們知道來源資料中心是否已刪除。 這對於識別要從中還原的正確備份帳戶非常重要。

  3. 如果不需要還原整個叢集,請提供需要還原的 Keyspace 和資料表 (若適用)。

  4. 建議您是要在現有叢集中還原備份,還是要在新叢集中還原備份。

  5. 如果您想要還原至新叢集,則必須先建立新叢集。 確定目標叢集在資料中心數目方面與來源叢集相符,且對應的資料中心有相同的節點數目。 您也可以決定是要將認證 (使用者名稱/密碼) 保留在新的目標叢集中,還是允許還原以使用最初建立的內容覆寫使用者名稱/密碼。

  6. 您也可以決定是要將 system_auth Keyspace 保留在新的目標叢集中,還是允許還原以使用備份中的資料加以覆寫。 Cassandra 中的 system_auth Keyspace 包含授權和內部驗證資料,包括角色、角色權限權及密碼。 請注意,我們的預設還原程序會覆寫 system_auth Keyspace。

注意

回應從備份還原要求所需的時間取決於所提出支援案例的嚴重性 (和回應時間對應的 SLA),以及要還原的資料量。 但是,我們對於完成還原的時間沒有提供 SLA,因為這很大程度取決於所要還原的資料量。

警告

備份適用於意外刪除案例,而不適用於異地備援。 因此,不建議使用備份作為整個區域發生中斷時的災害復原 (DR) 策略。 若要防範全區域中斷,建議使用多區域部署。 請查看我們的多區域部署快速入門

安全性

Azure Managed Instance for Apache Cassandra 提供許多內建的明確安全性控制與功能:

  • 使用受控供應鏈強化的 Linux 虛擬機器映像。
  • 作業系統層級的常見弱點和曝光 (CVE) 監視。
  • 受控虛擬機器上裝載的 Apache Cassandra 和 Prometheus 軟體的憑證輪替。
  • 主動弱點掃描。
  • 主動病毒掃描。
  • 安全編碼做法。

如需安全性功能的詳細資訊,請參閱此處的文章。

混合式支援

設定混合式叢集時,服務中執行的自動 reaper 作業可讓整個叢集受益。 這包括未由服務佈建的資料中心。 除此以外,您還需要負責維護內部部署或外部裝載的資料中心。

下一步

請透過下列其中一種快速入門方式開始使用: