Azure 應(yīng)用服務(wù)混合連接

來(lái)源: Microsoft
作者:Microsoft
時(shí)間:2021-04-27
17352
混合連接既是 Azure 中的一個(gè)服務(wù),也是 Azure 應(yīng)用服務(wù)中的一項(xiàng)功能。 作為服務(wù),它的用途和功能超越了應(yīng)用服務(wù)中使用的功能。 若要詳細(xì)了解混合連接及其在應(yīng)用服務(wù)外部的用途,請(qǐng)參閱 Azure 中繼混合連接。

混合連接既是 Azure 中的一個(gè)服務(wù),也是 Azure 應(yīng)用服務(wù)中的一項(xiàng)功能。 作為服務(wù),它的用途和功能超越了應(yīng)用服務(wù)中使用的功能。 若要詳細(xì)了解混合連接及其在應(yīng)用服務(wù)外部的用途,請(qǐng)參閱 Azure 中繼混合連接。

在應(yīng)用服務(wù)中,混合連接可用于訪問(wèn)任何網(wǎng)絡(luò)中的應(yīng)用程序資源,這些網(wǎng)絡(luò)可以通過(guò)端口 443 對(duì) Azure 進(jìn)行出站調(diào)用。 混合連接提供從應(yīng)用到 TCP 終結(jié)點(diǎn)的訪問(wèn)權(quán)限,而不會(huì)啟用新的訪問(wèn)應(yīng)用的方式。 在應(yīng)用服務(wù)中使用時(shí),每個(gè)混合連接與單個(gè) TCP 主機(jī)和端口組合相關(guān)聯(lián)。 這樣,應(yīng)用就可以訪問(wèn)任何 OS 上的資源,前提是它是 TCP 終結(jié)點(diǎn)。 混合連接功能不知道、也不關(guān)心應(yīng)用程序協(xié)議或者要訪問(wèn)的內(nèi)容是什么。 它只提供網(wǎng)絡(luò)訪問(wèn)。

工作原理

混合連接要求將中繼代理部署到可以同時(shí)到達(dá)所需終結(jié)點(diǎn)和 Azure 的位置。 中繼代理混合連接管理器 (HCM) 通過(guò)端口 443 調(diào)用 Azure 中繼。 在 Web 應(yīng)用站點(diǎn)上,應(yīng)用服務(wù)基礎(chǔ)結(jié)構(gòu)還代表應(yīng)用程序連接到 Azure 中繼。 通過(guò)已聯(lián)接的連接,應(yīng)用可以訪問(wèn)所需的終結(jié)點(diǎn)。 連接使用 TLS 1.2 來(lái)確保安全,使用共享訪問(wèn)簽名 (SAS) 密鑰進(jìn)行身份驗(yàn)證和授權(quán)。

混合連接高級(jí)別流示意圖

如果應(yīng)用發(fā)出了與配置的混合連接終結(jié)點(diǎn)匹配的 DNS 請(qǐng)求,則會(huì)通過(guò)混合連接重定向出站 TCP 流量。

 備注

這意味著,始終應(yīng)該盡量為混合連接使用 DNS 名稱。 如果終結(jié)點(diǎn)使用 IP 地址,某些客戶端軟件不會(huì)執(zhí)行 DNS 查找。

應(yīng)用服務(wù)混合連接的優(yōu)勢(shì)

混合連接功能提供許多優(yōu)勢(shì),包括:

  • 應(yīng)用可以訪問(wèn)本地系統(tǒng)和服務(wù)。

  • 該功能不需要可訪問(wèn) Internet 的終結(jié)點(diǎn)。

  • 設(shè)置過(guò)程快速而輕松。 無(wú)需網(wǎng)關(guān)

  • 每個(gè)混合連接與單個(gè)“主機(jī):端口”組合匹配,這非常有利于安全性。

  • 通常不需要在防火墻中開(kāi)放端口。 連接全部是通過(guò)標(biāo)準(zhǔn) Web 端口建立的。

  • 由于該功能在網(wǎng)絡(luò)級(jí)別運(yùn)行,它并不知道應(yīng)用使用的語(yǔ)言以及終結(jié)點(diǎn)使用的技術(shù)。

  • 可以通過(guò)單個(gè)應(yīng)用使用它在多個(gè)網(wǎng)絡(luò)中提供訪問(wèn)。

  • 它在適用于 Windows 應(yīng)用和 Linux 應(yīng)用的 GA 中受支持。 Windows 容器應(yīng)用不支持該功能。

混合連接無(wú)法提供的功能

無(wú)法通過(guò)混合連接執(zhí)行的操作包括:

  • 裝載驅(qū)動(dòng)器。

  • 使用 UDP。

  • 訪問(wèn)使用動(dòng)態(tài)端口(例如 FTP 被動(dòng)模式或擴(kuò)展被動(dòng)模式)的基于 TCP 的服務(wù)。

  • 支持 LDAP,因?yàn)樗赡苄枰?UDP。

  • 支持 Active Directory,因?yàn)闊o(wú)法將應(yīng)用服務(wù)輔助角色加入域。

在應(yīng)用中添加和創(chuàng)建混合連接

若要?jiǎng)?chuàng)建混合連接,請(qǐng)轉(zhuǎn)到 Azure 門(mén)戶,并選擇應(yīng)用。 選擇“網(wǎng)絡(luò)” > “配置混合連接終結(jié)點(diǎn)”。 在此處,可以看到為應(yīng)用配置的混合連接。

混合連接列表的屏幕截圖

若要添加新的混合連接,請(qǐng)選擇“[+] 添加混合連接”。 此時(shí)會(huì)顯示已創(chuàng)建的混合連接的列表。 要將其中的一個(gè)或多個(gè)混合連接添加到應(yīng)用,請(qǐng)選擇所需的混合連接,然后選擇“添加選定的混合連接”。

混合連接門(mén)戶的屏幕截圖

如果想要?jiǎng)?chuàng)建新的混合連接,請(qǐng)選擇“創(chuàng)建新的混合連接”。 指定:

  • 混合連接名稱。

  • 終結(jié)點(diǎn)主機(jī)名。

  • 終結(jié)點(diǎn)端口。

  • 要使用的服務(wù)總線命名空間。

“創(chuàng)建新的混合連接”對(duì)話框屏幕截圖

每個(gè)混合連接已綁定到服務(wù)總線命名空間,每個(gè)服務(wù)總線命名空間在 Azure 區(qū)域中。 請(qǐng)盡量使用應(yīng)用所在的同一區(qū)域中的服務(wù)總線命名空間,這一點(diǎn)非常重要,目的是避免網(wǎng)絡(luò)造成的延遲。

如果想要從應(yīng)用中刪除混合連接,請(qǐng)右鍵單擊該混合連接,并選擇“斷開(kāi)連接”。

將混合連接添加到應(yīng)用后,選擇該混合連接即可查看其詳細(xì)信息。

“混合連接詳細(xì)信息”屏幕截圖

在 Azure 中繼門(mén)戶中創(chuàng)建混合連接

除了使用應(yīng)用內(nèi)部的門(mén)戶體驗(yàn)以外,還可以在 Azure 中繼門(mén)戶中創(chuàng)建混合連接。 要使混合連接可供應(yīng)用服務(wù)使用,必須:

  • 要求客戶端授權(quán)。

  • 提供一個(gè)名為 endpoint 的元數(shù)據(jù)項(xiàng),其中包含“主機(jī):端口”的組合作為值。

混合連接和應(yīng)用服務(wù)計(jì)劃

應(yīng)用服務(wù)混合連接只能在“基本”、“標(biāo)準(zhǔn)”、“高級(jí)”和“隔離”定價(jià) SKU 中使用。 定價(jià)計(jì)劃沒(méi)有相關(guān)的限制。

混合連接和應(yīng)用服務(wù)計(jì)劃
定價(jià)計(jì)劃在計(jì)劃中可以使用的混合連接數(shù)
基本每個(gè)計(jì)劃 5 個(gè)
標(biāo)準(zhǔn)每個(gè)計(jì)劃 25 個(gè)
PremiumV2每個(gè)應(yīng)用 200 個(gè)
隔離每個(gè)應(yīng)用 200 個(gè)

應(yīng)用服務(wù)計(jì)劃 UI 會(huì)顯示使用了多少個(gè)混合連接以及是由哪些應(yīng)用使用的。

應(yīng)用服務(wù)計(jì)劃屬性的屏幕截圖

選擇該混合連接可查看詳細(xì)信息。 可以看到應(yīng)用視圖中顯示的所有信息。 還可以查看同一計(jì)劃中還有其他多少個(gè)應(yīng)用正在使用該混合連接。

可在一個(gè)應(yīng)用服務(wù)計(jì)劃中使用的混合連接終結(jié)點(diǎn)數(shù)目有限制。 但是,所用的每個(gè)混合連接可在該計(jì)劃中任意數(shù)目的應(yīng)用中使用。 例如,在一個(gè)應(yīng)用服務(wù)計(jì)劃下的 5 個(gè)單獨(dú)應(yīng)用中共同使用的單個(gè)混合連接,僅算作 1 個(gè)混合連接。

定價(jià)

除了要求使用應(yīng)用服務(wù)計(jì)劃 SKU 外,使用混合連接還需要額外付費(fèi)。 需要為混合連接使用的每個(gè)偵聽(tīng)器付費(fèi)。 偵聽(tīng)器是混合連接管理器。 如果你有由兩個(gè)混合連接管理器支持的五個(gè)混合連接,則將有 10 個(gè)偵聽(tīng)器。 有關(guān)詳細(xì)信息,請(qǐng)參閱服務(wù)總線定價(jià)。

混合連接管理器

混合連接功能要求在網(wǎng)絡(luò)中安裝一個(gè)中繼代理用于托管混合連接終結(jié)點(diǎn)。 該中繼代理稱為混合連接管理器 (HCM)。 若要下載 HCM,請(qǐng)?jiān)?nbsp;Azure 門(mén)戶上的應(yīng)用中,選擇“網(wǎng)絡(luò)” > “配置混合連接終結(jié)點(diǎn)”。

此工具可在 Windows Server 2012 和更高版本上運(yùn)行。 HCM 作為服務(wù)運(yùn)行,并且在端口 443 上出站連接到 Azure 中繼。

安裝 HCM 后,可以運(yùn)行 HybridConnectionManagerUi.exe 來(lái)使用該工具的 UI。 此文件位于混合連接管理器的安裝目錄中。 在 Windows 10 上,也可以在搜索框中搜索“混合連接管理器 UI”即可。

混合連接管理器的屏幕截圖

啟動(dòng) HCM UI 時(shí),出現(xiàn)的第一個(gè)界面是一個(gè)表格,其中列出了為此 HCM 實(shí)例配置的所有混合連接。 如果想要進(jìn)行任何更改,請(qǐng)先在 Azure 中完成身份驗(yàn)證。

要將一個(gè)或多個(gè)混合連接添加到 HCM,請(qǐng)執(zhí)行以下操作:

  1. 啟動(dòng) HCM UI。

  2. 選擇“配置另一個(gè)混合連接”。 配置新混合連接的屏幕截圖

  3. 使用 Azure 帳戶登錄,以使你的訂閱可以使用混合連接。 除此之外,HCM 不會(huì)繼續(xù)使用你的 Azure 帳戶。

  4. 選擇訂閱。

  5. 選擇 HCM 要中繼的混合連接。 混合連接的屏幕截圖

  6. 選擇“保存” 。

現(xiàn)在,可以看到已添加的混合連接。 還可以選擇配置的混合連接查看詳細(xì)信息。

混合連接詳細(xì)信息的屏幕截圖

若要支持配置的混合連接,HCM 需要:

  • 通過(guò)端口 443 對(duì) Azure 進(jìn)行 TCP 訪問(wèn)。

  • 對(duì)混合連接終結(jié)點(diǎn)進(jìn)行 TCP 訪問(wèn)。

  • 能夠在終結(jié)點(diǎn)主機(jī)和服務(wù)總線命名空間中執(zhí)行 DNS 查找。

 備注

Azure 中繼的連接性依賴于 Web 套接字。 此功能僅適用于 Windows Server 2012 或更高版本。 因此,低于 Windows Server 2012 的版本將不支持 HCM。

冗余

每個(gè) HCM 可以支持多個(gè)混合連接。 此外,多個(gè) HCM 可以支持任一給定的混合連接。 默認(rèn)行為是在為任一給定終結(jié)點(diǎn)配置的 HCM 之間路由流量。 如果希望從網(wǎng)絡(luò)建立的混合連接具有高可用性,可在單獨(dú)的計(jì)算機(jī)上運(yùn)行多個(gè) HCM。 中繼服務(wù)用來(lái)將流量分配給各個(gè) HCM 的負(fù)載分配算法是隨機(jī)分配。

手動(dòng)添加混合連接

若要讓訂閱外部的某人托管給定混合連接的 HCM 實(shí)例,可與他(她)共享該混合連接的網(wǎng)關(guān)連接字符串。 可以在 Azure 門(mén)戶的“混合連接”屬性中看到網(wǎng)關(guān)連接字符串。 要使用該字符串,請(qǐng)?jiān)?HCM 中選擇“手動(dòng)輸入”,并粘貼網(wǎng)關(guān)連接字符串。

手動(dòng)添加混合連接

升級(jí)

我們會(huì)定期發(fā)布混合連接管理器更新來(lái)修復(fù)問(wèn)題或提供改進(jìn)。 當(dāng)發(fā)布升級(jí)時(shí),一個(gè)彈出窗口將顯示在 HCM UI 中。 應(yīng)用升級(jí)將應(yīng)用所做的更改并重啟 HCM。

以編程方式將混合連接添加到你的應(yīng)用

Azure CLI 支持混合連接。 提供的命令可在應(yīng)用和應(yīng)用服務(wù)計(jì)劃級(jí)別上運(yùn)行。 應(yīng)用級(jí)命令為:

Azure CLI

az webapp hybrid-connection

Group    az webapp hybrid-connection : Methods that list, add and remove hybrid-connections from webapps.
        This command group is in preview. It may be changed/removed in a future release.
Commands:    add    : Add a hybrid-connection to a webapp.    list   : List the hybrid-connections on a webapp.    remove : Remove a hybrid-connection from a webapp.

利用應(yīng)用服務(wù)計(jì)劃命令,你可以設(shè)置給定混合連接將使用的密鑰。 每個(gè)混合連接上都設(shè)置了兩個(gè)密鑰,一個(gè)主密鑰和一個(gè)輔助密鑰。 可以選擇通過(guò)以下命令使用主密鑰或輔助密鑰。 這樣,你就可以在需要定期再生成密鑰時(shí)切換密鑰。

Azure CLI

az appservice hybrid-connection --helpGroup    az appservice hybrid-connection : A method that sets the key a hybrid-connection uses.
        This command group is in preview. It may be changed/removed in a future release.
Commands:
    set-key : Set the key that all apps in an appservice plan use to connect to the hybrid-
                connections in that appservice plan.

保護(hù)混合連接

任何在基礎(chǔ) Azure 服務(wù)總線中繼上有足夠權(quán)限的用戶都可以將現(xiàn)有的混合連接添加到應(yīng)用服務(wù) Web 應(yīng)用。 這意味著,如果必須阻止他人重復(fù)使用這個(gè)相同的混合連接(例如,如果目標(biāo)資源是一項(xiàng)沒(méi)有設(shè)置任何其他的安全措施來(lái)防止未經(jīng)授權(quán)的訪問(wèn)的服務(wù),則必須這樣做),則必須鎖定對(duì) Azure 服務(wù)總線中繼的訪問(wèn)。

可以通過(guò) Reader 訪問(wèn)權(quán)限來(lái)訪問(wèn)中繼的任何人都將能夠看到混合連接(在嘗試通過(guò) Azure 門(mén)戶將它添加到 Web 應(yīng)用時(shí)),但卻無(wú)法添加它,因?yàn)槿鄙贆z索用于建立中繼連接的連接字符串的權(quán)限。 若要成功添加混合連接,他們必須具有 listKeys 權(quán)限 (Microsoft.Relay/namespaces/hybridConnections/authorizationRules/listKeys/action)。 Contributor 角色或者任何其他包含此權(quán)限(在中繼上)的角色都會(huì)允許用戶使用混合連接并將其添加到自己的 Web 應(yīng)用。

故障排除

“已連接”狀態(tài)表示,至少有一個(gè) HCM 配置了該混合連接,且可以訪問(wèn) Azure。 如果混合連接狀態(tài)未顯示“已連接”,則表示未在任何可訪問(wèn) Azure 的 HCM 上配置該混合連接。 當(dāng) HCM 顯示 " 未連接 " 時(shí),請(qǐng)注意以下幾點(diǎn):

  • 你的主機(jī)是否有到端口443上的 Azure 的出站訪問(wèn)權(quán)限? 可以使用 PowerShell 命令 Test-netconnection Destination-P 端口 從 HCM 主機(jī)進(jìn)行測(cè)試

  • 你的 HCM 是否可能處于錯(cuò)誤的狀態(tài)? 嘗試重啟 "Azure 混合連接管理器服務(wù)" 本地服務(wù)。

如果狀態(tài)顯示為 " 已連接 ",但應(yīng)用無(wú)法訪問(wèn)終結(jié)點(diǎn),請(qǐng)執(zhí)行以下操作:

  • 請(qǐng)確保在混合連接中使用 DNS 名稱。 如果使用 IP 地址,則可能不會(huì)進(jìn)行所需的客戶端 DNS 查找。 如果在 web 應(yīng)用中運(yùn)行的客戶端未執(zhí)行 DNS 查找,則混合連接將不起作用

  • 檢查混合連接中使用的 DNS 名稱能否從 HCM 主機(jī)解析。 使用 Nslookup EndpointDNSname 檢查分辨率,其中 EndpointDNSname 是與混合連接定義中使用的內(nèi)容完全匹配。

  • 使用 PowerShell 命令 Test-netconnection EndpointDNSname-P 端口 測(cè)試從你的 HCM 主機(jī)到你的終結(jié)點(diǎn)的訪問(wèn)權(quán)限。如果無(wú)法從 HCM 主機(jī)訪問(wèn)終結(jié)點(diǎn),請(qǐng)檢查兩個(gè)主機(jī)(包括目標(biāo)主機(jī)上的任何基于主機(jī)的防火墻)之間的防火墻。

在應(yīng)用服務(wù)中,可以從 "高級(jí)工具" (Kudu) "控制臺(tái)調(diào)用 tcpping 命令行工具。 此工具可以告知你是否能夠訪問(wèn) TCP 終結(jié)點(diǎn),但不會(huì)告知你是否能夠訪問(wèn)混合連接終結(jié)點(diǎn)。 在控制臺(tái)中針對(duì)混合連接終結(jié)點(diǎn)使用此工具時(shí),只能確認(rèn)混合連接是否使用了“主機(jī):端口”組合。

如果你有終結(jié)點(diǎn)的命令行客戶端,則可以從應(yīng)用控制臺(tái)測(cè)試連接。 例如,可以使用 curl 測(cè)試對(duì) Web 服務(wù)器終結(jié)點(diǎn)的訪問(wèn)。

立即登錄,閱讀全文
版權(quán)說(shuō)明:
本文內(nèi)容來(lái)自于Microsoft,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
相關(guān)文章
Azure Arc為企業(yè)構(gòu)建安全的云基礎(chǔ)
Azure Arc為企業(yè)構(gòu)建安全的云基礎(chǔ)
隨著人工智能技術(shù)持續(xù)重塑企業(yè)運(yùn)營(yíng)方式,企業(yè)需要能夠處理海量數(shù)據(jù)的系統(tǒng),以支持實(shí)時(shí)洞察,同時(shí)幫助他們應(yīng)對(duì)跨IT和OT環(huán)境(包括云端、邊緣和本地)中運(yùn)營(yíng)、應(yīng)用、數(shù)據(jù)和基礎(chǔ)設(shè)施的協(xié)作難題。
Azure
微軟云
云服務(wù)
2024-12-172024-12-17
釋放.NET 9和Azure的AI技術(shù)與云計(jì)算潛力:更快、更智能、面向未來(lái)
釋放.NET 9和Azure的AI技術(shù)與云計(jì)算潛力:更快、更智能、面向未來(lái)
.NET 9現(xiàn)已正式發(fā)布,它為.NET平臺(tái)的發(fā)展掀開(kāi)了嶄新的一頁(yè),突破了性能、云原生開(kāi)發(fā)和AI技術(shù)集成的邊界。
Azure
微軟云
云服務(wù)
2024-12-162024-12-16
Azure網(wǎng)絡(luò)管理現(xiàn)已具備智能Microsoft Copilot副駕駛能力
Azure網(wǎng)絡(luò)管理現(xiàn)已具備智能Microsoft Copilot副駕駛能力
智能Microsoft Copilot副駕駛for Azure網(wǎng)絡(luò)服務(wù)現(xiàn)已推出公共預(yù)覽版。
Azure
微軟云
云服務(wù)
2024-12-102024-12-10
Microsoft Fabric功能更新,借助AI驅(qū)動(dòng)的數(shù)據(jù)平臺(tái)加速應(yīng)用創(chuàng)新
Microsoft Fabric功能更新,借助AI驅(qū)動(dòng)的數(shù)據(jù)平臺(tái)加速應(yīng)用創(chuàng)新
一年前,我們正式推出了一款端到端數(shù)據(jù)平臺(tái),旨在幫助組織推動(dòng)人工智能轉(zhuǎn)型,并重新定義數(shù)據(jù)的連接、管理和分析方式。
Azure
微軟云
云服務(wù)
2024-12-092024-12-09
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開(kāi)掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家