不必管理伺服器

全受管

主控台點擊幾次,即可建立一組遵照 Apache Kafka 部署最佳實務的全受管 Apache Kafka 叢集,或者使用自訂組態建立自己的叢集。建立所需的組態後,Amazon MSK 會自動佈建、設定和管理您的 Apache Kafka 叢集的營運與 Apache ZooKeeper 節點。

內含 Apache ZooKeeper

無論執行 Apache Kafka、協調叢集工作、維持資源與叢集互動所需的狀態,都需要 Apache ZooKeeper。Amazon MSK 為您管理 Apache ZooKeeper 節點。針對 Apache Kafka 叢集,每個 Amazon MSK 叢集都包含適當數量的免費 Apache ZooKeeper 節點。

Amazon MSK Serverless

MSK Serverless 是適用於 Amazon MSK 的叢集類型,讓您輕鬆執行 Apache Kafka 叢集,而無需管理運算和儲存容量。MSK Serverless 會自動佈建與擴展資源,同時管理 Apache Kafka 分割區,因此您可以串流資料而不必擔心調整大小或擴展叢集。

高可用性

預設高可用性

所有叢集是跨多個可用區域 (預設三個) 分配,受 Amazon MSK 服務層級協議的支援,且受自動化系統的支援,這些系統會偵測叢集基礎架構和 Apache Kafka 軟體中的問題,並做出回應。如果元件失敗,Amazon MSK 會自動將其取代,而不會造成應用程式停機。藉由 Amazon MSK 管理 Apache ZooKeeper 節點的可用性,您無需親自開始、停止或直接存取節點。它還可自動依需要部署軟體修補程式,確保您有最新叢集,並能順利執行。

跨 MSK 叢集可靠且自動進行資料複寫

MSK Replicator 是 Amazon MSK 的一項功能,讓您只需按幾下就能可靠地複寫 Amazon MSK 叢集中的資料,而無需設定開放原始碼工具、編寫程式碼或管理基礎設施的專業知識。MSK Replicator 會自動佈建和擴展基礎資源,以便您隨需複寫資料,並且只需依用量計費。使用 MSK Replicator,您可以建置高可用性、可容錯的多區域應用程式以提高彈性。您還可以使用 MSK Replicator,在不同地理區域提供較低延遲的資料存取,或將資料分發給您的合作夥伴。

高度安全

私有連線

您的 Apache Kafka 叢集在 Amazon MSK 所管理的 Amazon Virtual Private Cloud (VPC) 中執行。您自己 Amazon VPC 中的 Kafka 用戶端可以透過 Amazon MSK 在 VPC 中部署的跨帳戶彈性網路界面私有存取叢集。如果您的 Kafka 用戶端分散在一或多個 VPC 或 AWS 帳戶中,則仍然可以使用多 VPC 私有連線功能以私密方式連線至叢集。此功能消除了自我管理 PrivateLink 解決方案的營運開銷,並隨著 Amazon MSK 叢集擴展而無縫擴展,讓您無需進行其他組態變更即可維護叢集的私有連線。多 VPC 私有連線功能也消除了管理非重疊 IP、與其他 VPC 連線解決方案相關聯的複雜對等互連和路由表的挑戰,因為它允許在連線 VPC 之間重疊 IP。

跨帳戶存取控制

使用面向 Amazon MSK 叢集的叢集政策,定義哪些 IAM 主體具有跨帳戶許可以設定與 Amazon MSK 叢集的私有連線。與 IAM 用戶端身分驗證搭配使用時,也可以使用叢集政策為連線的用戶端精細定義 Kafka 資料平面許可。

精細的存取控制

IAM 存取控制是一種免費的安全選項,可使用 IAM 角色或使用者政策控制存取,從而簡化叢集身分驗證和 Apache Kafka API 授權。透過使用 IAM 存取控制,您不再需要建置和執行暫時的存取管理系統來控制 Apache Kafka 的用戶端身分驗證和授權。您的叢集預設使用最低特權許可進行保護。針對佈建叢集,您還可以使用簡單身分驗證及安全性階層 (SASL)/Salted Challenge Response Authentication Mechanism (SCRAM) 或共同 Transport Layer Security (TLS) 驗證與 Apache Kafka 存取控制清單 (ACL) 來控制用戶端存取。

靜態和傳輸中加密

Amazon MSK 無需特殊組態或第三方工具,即可將您的靜態資料加密。針對佈建叢集,所有靜態資料都可使用預設之 AWS Key Management Service (KMS) 金鑰或您自己的金鑰進行加密。您還可以透過 TLS 對在您的叢集上的代理程式之間,以及用戶端和代理程式之間傳輸的資料進行加密。針對無伺服器叢集,所有靜態資料預設都會使用服務管理的金鑰進行加密,而傳輸中的資料則預設透過 TLS 進行加密。

透過網際網路連線

Amazon MSK 提供了一個選項,可以透過網際網路安全地連接至執行 Apache Kafka 2.6.0 或更新版本的 Amazon MSK 叢集的代理程式。透過啟用公有存取權,私有 Amazon Virtual Private Cloud (VPC) 外部的授權用戶端可以將加密資料串流入和串流出特定的 Amazon MSK 叢集。

跨帳戶存取控制

使用面向 Amazon MSK 叢集的叢集政策,定義哪些 IAM 主體具有許可以設定與 Amazon MSK 叢集的跨帳戶私有連線。與 IAM 用戶端身分驗證搭配使用時,也可以使用叢集政策為連線的用戶端精細定義 Kafka 資料平面許可。

深度整合

沒有其他提供者可在 Amazon MSK 中提供 AWS 整合的廣度和深度。這些整合包括:

  • AWS IAM,用於 Apache Kafka 和服務層級的 API 存取控制
  • Amazon Managed Service for Apache Flinks,用於執行全受管 Apache Flink 應用程式,以在 Apache Kafka 內處理串流資料
  • Amazon Managed Service for Apache Flink,用於使用 Apache FlinkSQL 執行互動式串流 SQL 和長時間執行的 SQL 任務
  • AWS Glue Schema Registry,用於集中控制和改進結構描述
  • AWS IoT Core,用於 IoT 事件串流至 MSK
  • AWS Database Migration Service (AWS DMS),用於變更資料擷取和分析
  • Amazon Virtual Private Cloud (Amazon VPC),用於私有用戶端連接和網路隔離
  • AWS Key Management Service (AWS KMS),用於靜態加密
  • AWS Certificate Manager Private Certificate Authority,用於共同 TLS 用戶端身分驗證
  • AWS Secrets Manager,用於安全儲存和管理 SASL/SCRAM 機密
  • AWS CloudFormation,以程式碼形式部署 Amazon MSK
  • Amazon CloudWatch,用於叢集、代理程式、主題、取用者和分割區層級的指標

Graviton

AWS Graviton3 處理器是在 AWS Nitro System 上建置的最新一代自訂設計 AWS Graviton 處理器。與類似規模的 M5 執行個體相比,基於 Graviton3 處理器的 M7g 執行個體提供更高的儲存輸送量和更高的網路輸送量,而且成本更低。

開放原始碼

使用原生 Apache Kafka 執行

Amazon MSK 會部署原生版本的 Apache Kafka,因此,為 Apache Kafka 建置的應用程式和工具可以直接與 Amazon MSK 搭配使用,而無須變更應用程式程式碼。

簡化的版本可用性

Amazon MSK 通常會在公開發佈後七天內提供更新版本的 Apache Kafka。

無縫版本升級

只要按幾下滑鼠就可以升級佈建叢集上的 Apache Kafka 版本,讓您決定何時利用 Apache Kafka 新版本中的功能和錯誤修正。Amazon MSK 會自動將版本升級部署在執行中的叢集上,以遵循最佳實務為客戶維持用戶端輸入/輸出可用性。針對無伺服器叢集,Apache Kafka 版本會透過 Amazon MSK 自動升級。

成本最低

Amazon MSK 讓您以不到 2.00 USD 的價錢開始使用服務。客戶通常為擷取的每 GB 支付 0.05 和 0.07 USD,低至其他受管提供者費用的 1/13。若要進一步了解有關定價的資訊,請瀏覽我們的 Amazon MSK 定價頁面

分層儲存

藉助分層儲存,您可以在 MSK 中存放幾乎無限的資料,而無須使用分層儲存來佈建和管理儲存容量。只需點按幾下即可為新的或現有的叢集啟用分層儲存,並且依用量計費。您首先可以將資料存放在效能最佳化的主要儲存方案中,然後讓 MSK 自動將資料分層到新的低成本方案中,以延長保留時間。提供 MSK 的所有 AWS 區域皆支援該功能。若要了解如何開始使用分層儲存,請參閱 Amazon MSK 開發人員指南

可擴展性

代理程式擴展 (僅限佈建叢集)

您可以在幾分鐘內透過變更 Apache Kafka 代理程式的大小或系列來擴展 Amazon MSK 叢集,且不會產生停機。變更大小或系列是擴展 Amazon MSK 叢集的熱門方式,可讓您靈活地調整叢集運算容量,以應對工作負載的變更。此為偏好的方法,因為無需重新指派分割區,其會影響 Apache Kafka 可用性。

叢集擴展 (僅限無伺服器叢集)

Amazon MSK 會自動擴展您的叢集的運算和儲存資源,以應對您的應用程式的輸送量需求。

自動分割管理

Amazon MSK 與 Cruise Control 整合,這是 Apache Kafka 的熱門開放原始碼工具,可自動代表您管理分割區指派。針對無伺服器叢集, Amazon MSK 會為您自動管理分割區指派。

自動儲存擴展 (僅限佈建叢集)

您可以利用 AWS 管理主控台或 AWS Command Line Interface (AWS CLI) 無縫擴展每個代理程式佈建的儲存數量,以配合儲存需求的變動。您還可以建立自動擴展政策來自動擴展儲存,以滿足不斷增長的串流需求。

可設定

Amazon MSK 預設會為 Apache Kafka 部署最佳實務叢集組態。針對佈建叢集,您可以調整超過 30 項不同的叢集組態,同時支援全部動態和主題層級組態。如需詳細資訊,請參閱文件中的自訂 MSK 組態

可見

使用 CloudWatch 預設指標輕鬆觀察串流效能

您可以使用 Amazon CloudWatch 視覺化和監控重要的指標,以了解和維護串流應用程式效能。

將 JMX 和 Node 指標匯出到具有開放式監控功能的 Prometheus 伺服器 (僅限佈建叢集)

Open Monitoring with Prometheus 讓您可以使用 DatadogLensesNew RelicSumo Logic 等解決方案,或 Prometheus 伺服器來監控 Amazon MSK,並將現有的監控儀表板輕鬆遷移至 Amazon MSK。如需詳細資訊,請參閱文件中的 Open Monitoring with Prometheus

開始使用 Amazon MSK

計算您的成本
計算您的成本

造訪 Amazon MSK 定價頁面

Read the documentation
檢閱入門指南

在此逐步指南中了解如何在 Amazon MSK 設定 Apache Kafka 叢集。

執行 Apache Kafka 叢集
執行 Apache Kafka 叢集

開始在 Amazon MSK 上執行 Apache Kafka 叢集。登入 Amazon MSK 主控台