重要事項
SQL 受控執行個體現在具有私人端點的原生支援。 建議您不要在本文件中實作解決方案,而是直接建立 SQL 受控執行個體資源的私人端點,如受控私人端點中所述。
本教學課程提供使用 Azure 入口網站來設定 Private Link 服務,和使用私人端點從受控 VNET 存取 SQL 受控執行個體的步驟。
附註
使用此解決方案連線到 Azure SQL Database 受控執行個體時,不支援「重新導向」連線原則,您必須切換至「Proxy」 模式。
先決條件
- Azure 訂用帳戶。 如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
- 虛擬網路。 如果您沒有虛擬網路,請遵循建立虛擬網路建立一個。
- 虛擬網路到內部部署網路。 使用 ExpressRoute 或 VPN 建立虛擬網路與內部部署網路間的連線。
- 已啟用受控 VNet 的 Data Factory。 如果您沒有 Data Factory 或受控 VNet 未啟用,請依照使用受控 VNet 建立 Data Factory 的指示建立一個。
建立資源的子網路
使用入口網站在您的虛擬網路中建立子網路。
| 子網路 | 描述 |
|---|---|
| be-subnet | 後端伺服器的子網路 |
| fe-subnet | 標準內部負載平衡器的子網路 |
| pls-subnet | Private Link 服務的子網路 |
建立標準負載平衡器
使用入口網站建立標準內部負載平衡器。
在入口網站頂端的搜尋列中,從搜尋窗格的 [服務] 區段中搜尋並選取 [負載平衡器]。
在 [負載平衡服務] 頁面上選取 [建立],以建立新的負載平衡器。
在 [建立負載平衡器] 頁面的 [基本] 索引標籤中,輸入或選取下列詳細資料:
設定 值 訂用帳戶 選取您的訂用帳戶。 資源群組 選取您的資源群組。 名稱 輸入 myLoadBalancer。 區域 選取 [美國東部]。 SKU 選取 [標準]。 類型 選取 [內部]。 在 [建立負載平衡器] 頁面的 [前端 IP 設定] 索引標籤上,選取 [新增前端 IP設定],然後在 [新增前端 IP 位址] 設定窗格上輸入或選取下列詳細資料:
設定 值 前端 IP 名稱 輸入前端 IP 位址的名稱 虛擬網路 選取虛擬網路。 子網路 選取上一個步驟中建立的 [fe-subnet]。 IP 位址指派 選取 [動態]。 可用性區域 選取 [區域備援]。 接受其餘設定的預設值,然後選取 [檢閱 + 建立]。
在 [檢閱 + 建立] 索引標籤中,選取 [建立]。
建立負載平衡器資源
建立後端集區
後端位址集區會包含已連線至負載平衡器之虛擬 NIC 的 IP 位址。
建立後端位址集區 myBackendPool,以包含用於平衡網際網路流量負載的虛擬機器。
- 選取左側功能表中的 [所有服務]、選取 [所有資源],然後從資源清單中選取 myLoadBalancer。
- 在 [設定] 底下選取 [後端集區],然後選取 [新增]。
- 在 [新增後端集區] 頁面上,針對名稱輸入 myBackEndPool 作為後端集區的名稱,然後選取 [新增]。
建立健康狀態探查
負載平衡器會透過健康情況探查監視應用程式的狀態。
健康狀態探查會根據 VM 對健康情況檢查的回應,從負載平衡器輪替中新增或移除 VM。
建立名為 myHealthProbe 的健康狀態探查,以監視 VM 的健康狀態。
選取左側功能表中的 [所有服務]、選取 [所有資源],然後從資源清單中選取 myLoadBalancer。
在 [設定] 底下選取 [健康狀態探查],然後選取 [新增]。
設定 值 名稱 輸入 myHealthProbe。 通訊協定 選取 [TCP]。 連接埠 輸入 22。 間隔 輸入 15 作為探查嘗試之間的 [間隔] 秒數。 狀況不良臨界值 選取 [2] 作為 [狀況不良閾值] 的數值,或將 VM 視為狀況不良之前,必須達到的連續探查失敗次數。 保留其餘的預設值,然後選取 [確定]。
建立負載平衡器規則
負載平衡器規則用來定義如何將流量分散至 VM。 您可定義連入流量的前端 IP 組態及後端 IP 集區來接收流量。 來源和目的地連接埠會在規則中定義。
在本節中,您將建立負載平衡器規則:
選取左側功能表中的 [所有服務]、選取 [所有資源],然後從資源清單中選取 myLoadBalancer。
在 [設定] 下選取 [負載平衡規則],然後選取 [新增]。
使用下列值來設定負載平衡規則:
設定 值 名稱 輸入 myRule。 IP 版本 選取 [IPv4]。 前端 IP 位址 選取 [LoadBalancerFrontEnd]。 通訊協定 選取 [TCP]。 連接埠 輸入 1433。 後端連接埠 輸入 1433。 後端集區 選取 [myBackendPool]。 健全狀況探查 選取 [myHealthProbe]。 閒置逾時 (分鐘) 將滑桿移至 15 分鐘。 TCP 重設 選取 [已停用]。 保留其餘的預設值,然後選取 [確定]。
建立私人連結服務
在本節中,您將建立標準負載平衡器後方的 Private Link 服務。
在 Azure 入口網站頁面的左上角,選取 [建立資源]。
在 [搜尋 Marketplace] 方塊中搜尋 Private Link。
選取 [建立]。
在 [Private Link 中心] 下的 [概觀] 中,選取藍色 [建立私人連結服務] 按鈕。
在 [建立私人連結服務] 下的 [基本] 索引標籤中,輸入或選取下列資訊:
設定 值 專案詳細資料 訂用帳戶 選取您的訂用帳戶。 資源群組 選取您的資源群組。 執行個體詳細資料 名稱 輸入 myPrivateLinkService。 區域 選取 [美國東部]。 選取 [輸出設定] 索引標籤,或選取頁面底部的 [下一步: 輸出設定] 按鈕。
在 [輸出設定] 索引標籤中,輸入或選取以下資訊:
設定 值 負載平衡器 選取 [myLoadBalancer]。 負載平衡器前端 IP 位址 選取 [LoadBalancerFrontEnd]。 來源 NAT 子網路 選取 [pls-subnet]。 啟用 TCP Proxy V2 保留預設值 [否]。 私人 IP 位址設定 保留預設設定。 選取 [存取安全性] 索引標籤,或選取頁面底部的 [下一步: 存取安全性] 按鈕。
在 [存取安全性] 索引標籤中,保留 [僅角色型存取控制] 預設值。
選取 [標籤] 索引標籤,或選取頁面底部的 [下一步: 標籤]。
選取 [檢閱 + 建立] 索引標籤,或在頁面底部選取 [下一步: 檢閱 + 建立]。
在 [檢閱 + 建立] 索引標籤中,選取 [建立]。
建立後端伺服器
在入口網站的左上方,選取 [建立資源] > [計算] > [虛擬機器]。
在 [建立虛擬機器] 中,輸入或選取 [基本資訊] 索引標籤中的值:
設定 值 專案詳細資料 訂用帳戶 選取 Azure 訂用帳戶。 資源群組 選取您的資源群組。 執行個體詳細資料 虛擬機器名稱 輸入 myVM1。 區域 選取 [美國東部]。 可用性選項 選取 [可用性區域]。 可用性區域 選取 [1]。 影像 選取 [Ubuntu Server 18.04LTS - Gen1]。 Azure Spot 執行個體 請選取 [否] 。 大小 選擇 VM 大小或接受預設設定。 系統管理員帳戶 使用者名稱 輸入使用者名稱。 SSH 公開金鑰來源 產生新的金鑰組。 金鑰組名稱 mySSHKey。 輸入連接埠規則 公用輸入連接埠 無。 選取 [網路] 索引標籤,或選取 [下一步: 磁碟],然後選取 [下一步: 網路]。
在 [網路功能] 索引標籤中,選取或輸入:
設定 值 網路介面 虛擬網路 選取虛擬網路。 子網路 be-subnet。 公用 IP 選取 [無]。 NIC 網路安全性群組 選取 [無]。 負載平衡 要將此虛擬機器放在現有負載平衡解決方案後面嗎? 選取 [是]。 負載平衡設定 負載平衡選項 選取 [Azure 負載平衡]。 選取負載平衡器 選取 [myLoadBalancer]。 選取後端集區 選取 [myBackendPool]。 選取 [檢閱 + 建立]。
檢閱設定,然後選取 [建立]。
您可以重複步驟 1 到 6,建立多個後端伺服器 VM 實現高可用性。
建立端點的轉送規則
在登入後將指令碼 ip_fwd.sh 複製到後端伺服器 VM。
附註
此指令碼只會暫時設定 IP 轉送。 若要讓此設定為永久,請確定檔案 /etc/sysctl.conf 中取消註解 "net.ipv4.ip_forward=1" 行
使用下列選項執行指令碼:
sudo ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433
<FQDN/IP> 是您 SQL 受控執行個體的主機。執行下列命令,並檢查後端伺服器 VM 中的 iptable。 您可以使用目標 IP 查看 iptable 其中一個資料列。
sudo iptables -t nat -v -L PREROUTING -n --line-number
附註
注意:如果您有多個 SQL MI 或其他資料來源,則必須使用不同的連接埠來定義多個負載平衡器規則和 IP 資料表記錄。 否則,將會發生一些衝突。 例如,
負載平衡器規則中的連接埠 負載平衡規則中的後端連接埠 在後端伺服器 VM 中執行的命令 SQL MI 1 1433 1433 sudo ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433 SQL MI 2 1434 1434 sudo ./ip_fwd.sh -i eth0 -f 1434 -a <FQDN/IP> -b 1433 附註
每次重新啟動負載平衡器後方的 VM 時,都應再次執行指令碼。
建立 Private Link 服務的私人端點
在左側功能表中,選取 [所有服務]、選取 [所有資源],然後從資源清單選取您的資料處理站。
選取 [編寫與監視],以在個別索引標籤中啟動 Data Factory 使用者介面。
移至 [管理] 索引標籤,然後移至 [受控私人端點] 區段。
在 [受控私人端點] 下,選取 [+ 新增]。
從清單選取 [Private Link 服務] 圖格,然後選取 [繼續]。
輸入私人端點的名稱,然後在私人連結服務清單中選取 myPrivateLinkService。
新增目標 SQL 受控執行個體的 FQDN。
建立私人端點。
建立連結服務並測試連線
移至 [管理] 索引標籤,然後移至 [受控私人端點] 區段。
在 [連結服務] 底下選取 [+新增]。
從清單中選取 [Azure SQL Database 受控執行個體] 圖格,然後選取 [繼續]。
啟用 [互動式製作]。
輸入 SQL 受控執行個體的主機、使用者名稱和密碼。
附註
請手動輸入 SQL 受控執行個體主機。 否則,這就不是選取清單中的完整網域名稱。
然後,按一下 [測試連線]。
相關內容
前往下列教學課程,了解如何使用私人端點從 Data Factory 管理的 VNet 存取內部部署 SQL Server: