搭配適用於 Apache Cassandra 的 Azure 受控執行個體 使用 VPN
Apache Cassandra 節點的 Azure 受控執行個體 在插入虛擬網路時,需要存取許多其他 Azure 服務。 一般而言,藉由確保您的虛擬網路具有因特網的輸出存取權,來啟用存取。 如果您的安全策略禁止輸出存取,您可以針對適當的存取設定防火牆規則或使用者定義的路由。 如需詳細資訊,請參閱 必要的輸出網路規則。
不過,如果您有數據外泄的內部安全性考慮,您的安全策略可能會禁止從虛擬網路直接存取這些服務。 藉由使用虛擬專用網 (VPN) 搭配適用於 Apache Cassandra 的 Azure 受控執行個體,您可以確保虛擬網路中的數據節點只會與單一 VPN 端點通訊,而不需要直接存取任何其他服務。
運作方式
稱為 操作員的虛擬機是 Apache Cassandra 的每個 Azure 受控執行個體 的一部分。 它預設可協助管理叢集,操作員位於與叢集相同的虛擬網路中。 這表示操作員和數據 VM 有相同的網路安全組 (NSG) 規則。 這不適合基於安全性考慮,它也可讓客戶在為子網設定NSG規則時,防止操作員連線到必要的 Azure 服務。
使用 VPN 作為適用於 Apache Cassandra 的 Azure 受控執行個體 連線方法,可讓操作員使用私人連結服務,位於與叢集不同的虛擬網路中。 這表示操作員可以位於可存取必要 Azure 服務的虛擬網路中,而叢集可以位於您控制的虛擬網路中。
透過 VPN,操作員現在可以連線到虛擬網路位址範圍內的私人 IP 位址,稱為私人端點。 私人鏈接會透過 Azure 骨幹網路在操作員與私人端點之間路由傳送數據,以避免暴露在公用因特網上。
安全性優點
我們想要防止攻擊者存取部署操作員的虛擬網路,並嘗試竊取數據。 因此,我們有安全措施,以確保操作員只能連線到必要的 Azure 服務。
服務端點原則:這些原則可細微控制虛擬網路內的輸出流量,特別是 Azure 服務。 藉由使用服務端點,它們會建立限制,以獨佔方式存取指定的 Azure 服務,例如 Azure 監視、Azure 儲存體 和 Azure KeyVault。 值得注意的是,這些原則可確保數據輸出僅限於預先確定 Azure 儲存體 帳戶,增強網路基礎結構內的安全性和數據管理。
網路安全組:這些群組可用來篩選 Azure 虛擬網路中資源的來回網路流量。 我們會封鎖從操作員到因特網的所有流量,並只允許流量透過一組 NSG 規則傳送至特定 Azure 服務。
如何搭配適用於 Apache Cassandra 的 Azure 受控執行個體 使用 VPN
使用
"VPN"
作為 選項的值,建立 Apache Cassandra 叢集的--azure-connection-method
Azure 受控執行個體:az managed-cassandra cluster create \ --cluster-name "vpn-test-cluster" \ --resource-group "vpn-test-rg" \ --location "eastus2" \ --azure-connection-method "VPN" \ --initial-cassandra-admin-password "password"
使用下列命令來檢視叢集屬性:
az managed-cassandra cluster show \ --resource-group "vpn-test-rg" \ --cluster-name "vpn-test-cluster"
從輸出中,製作值的複本
privateLinkResourceId
。在 Azure 入口網站 中,使用下列詳細數據建立私人端點:
- 在 [資源] 索引卷標上,選取 [依資源標識符或別名聯機至 Azure 資源] 作為連線方法,並將 Microsoft.Network/privateLinkServices 作為資源類型。
privateLinkResourceId
輸入上一個步驟中的值。 - 在 [虛擬網絡] 索引標籤上,選取虛擬網路的子網,然後選取 [靜態配置 IP 位址] 選項。
- 驗證並建立。
注意
目前,管理服務與私人端點之間的連線需要來自 Apache Cassandra 小組的 Azure 受控執行個體 核准。
- 在 [資源] 索引卷標上,選取 [依資源標識符或別名聯機至 Azure 資源] 作為連線方法,並將 Microsoft.Network/privateLinkServices 作為資源類型。
取得私人端點網路介面的IP位址。
使用上一個步驟中的IP位址作為參數,建立
--private-endpoint-ip-address
新的資料中心。
下一步
- 了解 Azure Managed Instance for Apache Cassandra 中的混合式叢集設定。