【Azure API 管理】APIM集成內(nèi)網(wǎng)虛擬網(wǎng)絡(luò)后吗垮,啟用自定義路由管理外出流量經(jīng)過防火墻(Firewall)垛吗,遇見APIs加載不出來(lái)問題

問題描述

使用 Azure 虛擬網(wǎng)絡(luò),Azure APIM 可以管理無(wú)法通過 Internet 訪問的 API烁登,達(dá)到以保護(hù)企業(yè)內(nèi)部的后端API的目的怯屉。在虛擬網(wǎng)絡(luò)中,啟用網(wǎng)絡(luò)安全組(NSG:Network Security Group)來(lái)控制出站饵沧,入站的端口锨络,我們可以形象的把它比喻成一道門,需要滿足條件的流量才能通過這道安全的大門狼牺。

通過安全大門以后羡儿,我們就需要有路,才能達(dá)到目的是钥。而默認(rèn)的網(wǎng)絡(luò)路徑由Azure的骨干網(wǎng)絡(luò)控制掠归,如果需要通過公司自己的防火墻(Azure Firewall或企業(yè)自己的防火墻)缅叠。在虛擬網(wǎng)絡(luò)中,通過路由表(Route Table)來(lái)指定下一跳(Next Pod)虏冻,通過使用0.0.0.0/0的配置方式(UDRs:user-defined routes)肤粱,把虛擬網(wǎng)絡(luò)中的所有流量都導(dǎo)入并經(jīng)過防火墻。實(shí)現(xiàn)企業(yè)級(jí)的安全保護(hù)厨相。

以上兩句總結(jié)起來(lái)就是:NSG是門领曼,UDR是路。解決方案架構(gòu)圖為:

image.png

但是领铐,在搭建APIM VNET時(shí)候悯森,卻遇見了各種各樣的錯(cuò)誤。

1)因?yàn)镹SG的緣故绪撵,必須的端口不通瓢姻。導(dǎo)致APIM的網(wǎng)絡(luò)連接狀態(tài)“Network connectivity status”頁(yè)面中狀態(tài)顯示為 Error

image.png

2)因?yàn)榕渲昧俗远x路由(UDR), 導(dǎo)致了APIM頁(yè)面中的APIs,Repository等頁(yè)面錯(cuò)誤音诈,且門戶一直彈出Failed to connect to management endpoint錯(cuò)誤消息

image.png

問題分析

首先:以上的兩個(gè)問題幻碱,都可以在" 如何將 Azure API 管理與虛擬網(wǎng)絡(luò)配合使用:常見網(wǎng)絡(luò)配置問題 "一文中找到答案。

問題一端口問題:添加上文檔中所列出的所有必要端口细溅,就可以實(shí)現(xiàn)網(wǎng)絡(luò)連接狀態(tài)全部Success的狀態(tài)褥傍。

API 管理所需的端口:可以使用 網(wǎng)絡(luò)安全組控制其中部署了 API 管理的子網(wǎng)的入站和出站流量。 如果其中的任一端口不可用喇聊,API 管理可能無(wú)法正常工作且不可訪問恍风。 將 API 管理與 VNET 配合使用時(shí),另一個(gè)常見的錯(cuò)誤配置問題是阻止了這些端口中的一個(gè)或多個(gè)誓篱。

VNET 中托管 APIM服務(wù)實(shí)例時(shí)朋贬,將使用下表中的端口。


image.png

配置完成NSG后窜骄,一定要記住锦募,在APIM中去Apply Network Configration,以實(shí)現(xiàn)網(wǎng)絡(luò)配置雙邊同步邻遏。

image.png

問題二自定義路由問題:情況要復(fù)雜一些糠亩。需要開啟服務(wù)終結(jié)點(diǎn),在路由表中放行所在中國(guó)區(qū)的IP地址(控制平面 IP 地址

使用 Express Route 或網(wǎng)絡(luò)虛擬設(shè)備強(qiáng)制隧道流量發(fā)往本地防火墻:客戶的常用配置是定義自己的默認(rèn)路由 (0.0.0.0/0)准验,強(qiáng)制來(lái)自 API 管理所委托子網(wǎng)的所有流量流經(jīng)本地防火墻或流向網(wǎng)絡(luò)虛擬設(shè)備赎线。 此流量流一定會(huì)中斷與 Azure API 管理的連接,因?yàn)槌稣玖髁繒?huì)在本地被阻止糊饱,或者通過“網(wǎng)絡(luò)地址轉(zhuǎn)換”功能發(fā)送到不再與各種 Azure 終結(jié)點(diǎn)一起工作的一組無(wú)法識(shí)別的地址垂寥。

此解決方案要求執(zhí)行以下三項(xiàng)操作:

第一項(xiàng):在部署 API 管理服務(wù)的子網(wǎng)上啟用服務(wù)終結(jié)點(diǎn)。 需為 Azure SQL、Azure 存儲(chǔ)矫废、Azure 事件中心和 Azure 服務(wù)總線啟用服務(wù)終結(jié)點(diǎn)。 直接從 API 管理委托的子網(wǎng)啟用這些服務(wù)的終結(jié)點(diǎn)可以讓它們使用 Azure 主干網(wǎng)絡(luò)砰蠢,為服務(wù)流量提供優(yōu)化的路由蓖扑。 如果將服務(wù)終結(jié)點(diǎn)與強(qiáng)制隧道 API 管理配合使用,則不會(huì)將上述 Azure 服務(wù)流量進(jìn)行強(qiáng)制隧道傳輸台舱。 其他 API 管理服務(wù)依賴項(xiàng)流量會(huì)通過強(qiáng)制隧道重定向律杠,不能丟失,否則 API 管理服務(wù)會(huì)功能失常竞惋。

image.png

第二項(xiàng):所有控制平面流量(從 Internet 到 API 管理服務(wù)的管理終結(jié)點(diǎn))都會(huì)通過特定的一組由 API 管理托管的入站 IP 進(jìn)行路由柜去。 當(dāng)流量被強(qiáng)制進(jìn)行隧道傳輸時(shí),響應(yīng)不會(huì)對(duì)稱地映射回這些入站源 IP拆宛。 為了克服此限制嗓奢,我們需要添加以下用戶定義的路由 (UDR),通過將這些主機(jī)路由的目標(biāo)設(shè)置為“Internet”來(lái)將流量傳回 Azure浑厚。 用于控制平面流量的入站 IP 集是記錄在案的控制平面 IP 地址

image.png

第三項(xiàng):對(duì)于被強(qiáng)制進(jìn)行隧道傳輸?shù)钠渌?API 管理服務(wù)依賴項(xiàng)股耽,應(yīng)該有一種方法來(lái)解析主機(jī)名并訪問該終結(jié)點(diǎn)。 其中包括:

  • 指標(biāo)和運(yùn)行狀況監(jiān)視:到 Azure 監(jiān)視終結(jié)點(diǎn)的出站網(wǎng)絡(luò)連接钳幅,可在內(nèi)網(wǎng)中解析物蝙,這些 URL 在 AzureMonitor 服務(wù)標(biāo)記下表示,用于網(wǎng)絡(luò)安全組敢艰。
  1. mooncake.warmpath.chinacloudapi.cn
  2. global.prod.microsoftmetrics.com(新增)
  3. shoebox2.prod.microsoftmetrics.com(新增)
  4. shoebox2-red.prod.microsoftmetrics.com
  5. shoebox2-black.prod.microsoftmetrics.com
  6. shoebox2-red.shoebox2.metrics.nsatc.net
  7. shoebox2-black.shoebox2.metrics.nsatc.net
  8. prod3.prod.microsoftmetrics.com(新增)
  9. prod3-red.prod.microsoftmetrics.com
  10. prod5.prod.microsoftmetrics.com
  11. prod5-black.prod.microsoftmetrics.com
  12. prod5-red.prod.microsoftmetrics.com
  13. gcs.prod.warm.ingestion.monitoring.azure.cn
  • Azure 門戶診斷:若要在從虛擬網(wǎng)絡(luò)內(nèi)部使用 API 管理擴(kuò)展時(shí)從 Azure 門戶啟用診斷日志流诬乞,需要允許在端口 443 上對(duì) dc.services.visualstudio.com 進(jìn)行出站訪問。
  • **SMTP 中繼 ** :在主機(jī) smtpi-co1.msn.com钠导、smtpi-ch1.msn.com震嫉、smtpi-db3.msn.com、smtpi-sin.msn.com辈双、ies.global.microsoft.com 下解析的 SMTP 中繼的出站網(wǎng)絡(luò)連接
  • 開發(fā)人員門戶驗(yàn)證碼:在主機(jī) client.hip.live.com 和 partner.hip.live.com 下解析的開發(fā)人員門戶 CAPTCHA 的出站網(wǎng)絡(luò)連接责掏。

問題解決

對(duì)比NSG列表,添加缺少的端口湃望。特別是:1433换衬,5671, 5672,12000证芭,1886瞳浦,25028, 6381 - 6383等不常配置的端口废士。

在Route Table中添加中國(guó)區(qū)兩個(gè)被標(biāo)記為全球的IP地址叫潦。這是必須的地址,也是在配置中常常忽略的問題官硝。也是產(chǎn)生此問題的根源矗蕊。

image.png

參考資料

在內(nèi)部虛擬網(wǎng)絡(luò)中使用 Azure API 管理服務(wù):https://docs.azure.cn/zh-cn/api-management/api-management-using-with-internal-vnet

APIM常見網(wǎng)絡(luò)配置問題:https://docs.azure.cn/zh-cn/api-management/api-management-using-with-vnet#common-network-configuration-issues

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末短蜕,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子傻咖,更是在濱河造成了極大的恐慌朋魔,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,427評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件卿操,死亡現(xiàn)場(chǎng)離奇詭異警检,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)害淤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門扇雕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人窥摄,你說我怎么就攤上這事镶奉。” “怎么了崭放?”我有些...
    開封第一講書人閱讀 165,747評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵腮鞍,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我莹菱,道長(zhǎng)移国,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,939評(píng)論 1 295
  • 正文 為了忘掉前任道伟,我火速辦了婚禮迹缀,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蜜徽。我一直安慰自己祝懂,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,955評(píng)論 6 392
  • 文/花漫 我一把揭開白布拘鞋。 她就那樣靜靜地躺著砚蓬,像睡著了一般。 火紅的嫁衣襯著肌膚如雪盆色。 梳的紋絲不亂的頭發(fā)上灰蛙,一...
    開封第一講書人閱讀 51,737評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音隔躲,去河邊找鬼摩梧。 笑死,一個(gè)胖子當(dāng)著我的面吹牛宣旱,可吹牛的內(nèi)容都是我干的仅父。 我是一名探鬼主播,決...
    沈念sama閱讀 40,448評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼笙纤!你這毒婦竟也來(lái)了耗溜?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,352評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤省容,失蹤者是張志新(化名)和其女友劉穎强霎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蓉冈,經(jīng)...
    沈念sama閱讀 45,834評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,992評(píng)論 3 338
  • 正文 我和宋清朗相戀三年轩触,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了寞酿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,133評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡脱柱,死狀恐怖伐弹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情惨好,我是刑警寧澤,帶...
    沈念sama閱讀 35,815評(píng)論 5 346
  • 正文 年R本政府宣布随闺,位于F島的核電站日川,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏矩乐。R本人自食惡果不足惜龄句,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,477評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望散罕。 院中可真熱鬧分歇,春花似錦、人聲如沸欧漱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)误甚。三九已至缚甩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間窑邦,已是汗流浹背蹄胰。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留奕翔,地道東北人裕寨。 一個(gè)月前我還...
    沈念sama閱讀 48,398評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親宾袜。 傳聞我的和親對(duì)象是個(gè)殘疾皇子捻艳,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,077評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容