連接至 Event Streams

若要連接至 Event Streams 實例,您需要 API 的端點 URL 及用於鑑別的認證。 瞭解如何取得這些詳細資料以及您可以使用的連線功能選項。

概觀

使用精簡版、標準版或企業版計劃提供的服務會在儀表板中以服務為標題進行分類。

所有方案都使用 IAM 進行鑑別。 您不需要瞭解 IAM 即可開始使用,但如果想要保護您的 Event Streams 服務,建議需要具備一些知識。 如需相關資訊,請參閱管理對 Event Streams 資源的存取。 若要完成下列步驟並獲授權建立主題,您的應用程式或服務金鑰必須具有管理員存取角色。 依預設,包含服務實例的帳戶擁有者具有此角色。

依預設,Event Streams 實例會配置為使用 IBM Cloud® 公用網路,因此可以透過公用網際網路進行存取。 必要的話,您可以選取替代網路類型或限制接受連線的來源位置,來限制此存取權。 如需相關資訊,請參閱 限制網路存取權

連線資訊

若要存取服務實例,請建立服務金鑰。 服務金鑰包含存取實例所需的資訊,包括其 API 的端點詳細資料及唯一 API 金鑰認證。

若要使用 IBM Cloud 主控台來建立服務金鑰,請執行下列動作:

  1. 在儀表板上找到 Event Streams 服務。
  2. 按一下您的服務磚。
  3. 按一下服務認證
  4. 按一下新建認證
  5. 完成新認證的詳細資料。 選擇名稱和角色,然後按一下 新增。 新認證會出現在認證清單中。
  6. 使用檢視憑證按一下新憑證,以 JSON 格式顯示詳細資訊。

若要使用 IBM Cloud CLI 建立服務金鑰,請完成下列步驟。

  1. 找到您的服務:

    ibmcloud resource service-instances
    
  2. 建立服務金鑰:

    ibmcloud resource service-key-create <key_name> <key_role> --instance-name <your_service_name>
    
  3. 列印服務金鑰:

    ibmcloud resource service-key <key_name>
    

    每一個服務金鑰中包含一組端點詳細資料。 對於配置為連接至單一網路類型的服務實例,IBM Cloud 公用網路 (預設值) 或 IBM Cloud 專用網路,服務金鑰包含與該網路類型相關的詳細資料。 對於配置為同時支援專用及公用網路的實例,會傳回公用網路的詳細資料。 如果您想要專用網路的詳細資料,則必須在前一個 CLI 指令中新增 --service-endpoint private 參數,如下列範例中所示。

    ibmcloud resource service-key-create <private-key-name> <role> --instance-name <instance-name> --service-endpoint private
    

如需相關資訊,請參閱 網路類型

建立連線

若要連接 Kafka 應用程式,請完成下列作業。

  • 使用服務索引鍵中的 <bootstrap_endpoints> 欄位作為 Kafka 應用程式的 bootstrap.servers 內容。
  • 將 security.protocol 內容設為 SASL_SSL,並將 sasl.mechanism 內容設為 PLAIN。
  • 使用服務金鑰中的 <user> 欄位作為使用者名稱,並使用服務金鑰中的 <api_key> 欄位作為密碼。 請確定您的應用程式會剖析詳細資料。
  • 如需相關資訊,請參閱配置 Kafka API 用戶端

若要呼叫 HTTP API,請完成下列作業。

  • 使用服務金鑰的 <kafka_admin_url> 欄位作為 HTTP 要求的基本 URL。
  • 使用 IBM Cloud CLI ibmcloud iam oauth-tokens 指令來產生鑑別記號。 將此記號放在 HTTP 要求的 Authorization 標頭中,值格式為 Bearer <token>。 同時支援 API 金鑰和 JWT 記號。
  • 提供每一個 API 的進一步說明文件。

網路連線功能

依預設,「精簡」、「標準」及「企業」實例配置為可透過公用網際網路存取。 如果您使用企業方案,則可以如下所示限制連線功能:

專用網路
如果您的工作負載完全在 IBM Cloud 內執行,且不需要對服務進行公開存取,則可將 Event Streams 實體設定為只能透過 IBM Cloud 私人網路存取。 此配置提供更高的隔離性,並且不會產生與公共流量相關的出口頻寬費用。 實例也可以配置為可透過 IBM Cloud 公用和專用網路來存取。
環境定義型限制
您可以定義存取規則,以根據特定性質來限制接受連線的網路位置。 例如,網路類型、IP 範圍、VPC 或其他服務。

如需相關資訊,請參閱 限制網路存取權

從標準基礎架構透過專用網路存取企業實例

若要透過專用網路存取部署在 IBM Cloud 標準基礎架構上的工作量的企業實例,必須在帳戶中啟用「虛擬路由轉遞 (VRF)」及「服務端點」特性。 如需相關資訊,請參閱 限制網路存取權

透過專用網路從 VPC 存取企業實例

對於部署在 IBM Cloud VPC 中的工作量,若要能夠透過專用網路存取您的企業實例,必須在 VPC 中建立「虛擬專用端點 (VPE)」:

  1. 在 IBM Cloud 主控台中,按一下功能表圖示並選取 VPC 基礎架構 > 網路 > 虛擬專用端點閘道
  2. 使用 關於虛擬專用端點閘道中的指引,為 Event Streams 實例建立 VPE。
  3. 建立 VPE 之後,新的 VPE 和 pDNS 可能需要幾分鐘才能完成處理程序並開始為 VPC 工作。 當您在 VPE 的 詳細資料視圖 中看到 IP 位址集時,即會確認完成。

從 IBM Cloud 外部透過專用網路存取企業實例

可以利用 Direct Link 2.0 之類的解決方案,在外部網路 (例如內部部署資料中心) 與 IBM Cloud 專用網路之間建立連線。 不過,在處理在外部網路上運作的工作負載時,必須考量其他因素,以確保順利連接至 Kafka。 請注意,這些考量不適用於 HTTP 工作量。

配置給實例的專用端點詳細資料 (如服務金鑰中所述) 必須可解析且可從工作量執行所在的網路遞送。 無法在工作量的 bootstrap.servers 內容中指定替代主機名稱項目,以作為從外部網路遞送資料流量的方法。

此行為的原因是 Kafka的兩步驟連線處理程序。 在起始步驟中,會使用用戶端 bootstrap.servers 內容中提供的主機名稱來建立第一個引導連線。 不過,伺服器接著會以它所使用的實際端點主機名稱詳細資料來回應用戶端。 這些主機名稱詳細資料是最初配置給實例的專用端點詳細資料,無法變更。 因此,詳細資料必須可解析且可直接從外部網路遞送。

如需詳細資訊,請參閱 使用 IBM Cloud Direct Link 從內部網路存取私有 API 端點

下一步

現在您有連線和憑證資訊,可以選擇 Kafka 用戶端。 如需相關資訊,請參閱使用 Kafka API