在虛擬網路的 Azure Spring Apps 中存取應用程式
本文內容
注意
Azure Spring Apps 是 Azure Spring Cloud 服務的新名稱。 雖然服務有新的名稱,但在我們努力更新資產,例如螢幕快照、影片和圖表時,您會在某些地方看到舊名稱一段時間。
本文適用於: ✔️基本/標準✔️企業
本文說明如何在專用網中存取應用程式的端點。
當您在虛擬網路中所部署 Azure Spring Apps 服務實例的應用程式上指派端點時,端點會使用私人完整功能變數名稱 (FQDN)。 網域只能在專用網中存取。 應用程式和服務會使用應用程式端點。 其中包括在 Azure Spring Apps 中設定預備環境的檢視應用程式和部署 一節 中所述的測試端點 。 記錄串流,如即時串流 Azure Spring Apps 應用程式記錄中所述 ,也只能在專用網內運作。
必要條件
Azure 訂用帳戶。 如果您沒有訂用帳戶,請在開始之前建立 免費帳戶 。
(選擇性) Azure CLI 2.45.0 版或更高版本。
部署至虛擬網路之 Azure Spring Apps 服務實例中的現有應用程式。 如需詳細資訊,請參閱 在虛擬網路 中部署 Azure Spring Apps。
尋找應用程式的IP
使用下列步驟來尋找應用程式的IP位址。
移至 Azure Spring Apps 服務 網路 功能頁面。
選取 [ Vnet 插入 ] 索引標籤。
在 [一般資訊] 區段中,尋找 [端點 ] 並複製 [IP 位址] 值。 下列螢幕快照中的範例會使用IP位址 10.0.1.6
:
使用下列步驟來初始化本機環境,並尋找應用程式的IP位址。
使用下列命令來定義各種環境變數。 請務必將佔位元取代為您的實際值。
export SUBSCRIPTION='<subscription-ID>'
export RESOURCE_GROUP='<resource-group-name>'
export AZURE_SPRING_APPS_INSTANCE_NAME='<Azure-Spring-Apps-instance-name>'
export VIRTUAL_NETWORK_NAME='<Azure-Spring-Apps-virtual-network-name>'
export APP_NAME='<application-name>'
使用下列命令來登入 Azure CLI,然後選擇您的使用中訂用帳戶:
az login
az account set --subscription ${SUBSCRIPTION}
使用下列命令來尋找應用程式的IP位址。
export SERVICE_RUNTIME_RG=$(az spring show \
--resource-group $RESOURCE_GROUP \
--name $AZURE_SPRING_APPS_INSTANCE_NAME \
--query "properties.networkProfile.serviceRuntimeNetworkResourceGroup" \
--output tsv)
export IP_ADDRESS=$(az network lb frontend-ip list \
--lb-name kubernetes-internal \
--resource-group $SERVICE_RUNTIME_RG \
--query "[0].privateIPAddress" \
--output tsv)
echo $IP_ADDRESS
新增IP的 DNS
如果您有自己的虛擬網路 DNS 解決方案,例如 Active Directory 網域 Controller、Infoblox 或其他,您必須將網域*.private.azuremicroservices.io
指向 IP 位址 。 否則,請使用下列指示,在您的訂用帳戶中建立 Azure 私用 DNS 區域 ,以將私人完整功能變數名稱 (FQDN) 轉譯/解析為其 IP 位址。
注意
如果您使用由 21Vianet 運作的 Microsoft Azure,請務必將 取代private.azuremicroservices.io
private.microservices.azure.cn
為本文中的 。 如需詳細資訊,請參閱 Azure 中國開發人員指南的<檢查 Azure 中的端點>一節 。
建立私人 DNS 區域
使用下列步驟,為專用網中的應用程式建立私人 DNS 區域:
開啟 Azure 入口網站。 使用搜尋方塊,搜尋 私用 DNS 區域 。 從搜尋結果中選取 私用 DNS 區域 。
在 [私用 DNS 區域 ] 頁面上,選取 [新增 ]。
填寫 [建立 私用 DNS 區域] 頁面上的窗體 。 輸入 private.azuremicroservices.io 作為 區域的名稱 。
選取 [檢閱 + 建立] 。
選取 建立 。
使用下列命令來建立私人 DNS 區域:
az network private-dns zone create \
--resource-group $RESOURCE_GROUP \
--name private.azuremicroservices.io
建立區域可能需要幾分鐘的時間。
連結虛擬網路
若要將私人 DNS 區域連結至虛擬網路,您必須建立虛擬網路連結。
使用下列步驟,將您建立的私人 DNS 區域連結至保存 Azure Spring Apps 服務的虛擬網路:
選取您建立的私人 DNS 區域資源,例如 private.azuremicroservices.io 。
選取 [虛擬網络連結 ],然後選取 [ 新增 ]。
針對 [鏈接名稱 ],輸入 azure-spring-apps-dns-link 。
針對 [虛擬網络 ],選取您先前建立的虛擬網路。
選取 [確定]。
使用下列命令,將您建立的私人 DNS 區域連結至保存 Azure Spring Apps 服務的虛擬網路:
az network private-dns link vnet create \
--resource-group $RESOURCE_GROUP \
--name azure-spring-apps-dns-link \
--zone-name private.azuremicroservices.io \
--virtual-network $VIRTUAL_NETWORK_NAME \
--registration-enabled false
建立 DNS 記錄
您必須在私人 DNS 區域中建立“A” 類型記錄。
使用下列步驟來使用私人 DNS 區域來轉譯/解析 DNS。
選取您建立的私人 DNS 區域資源,例如 private.azuremicroservices.io 。
選取 [ 記錄集 ]。
在 [ 新增記錄集 ] 中,輸入或選取下列資訊:
設定
值
名稱
輸入 * 。
類型
選取 A 。
TTL
輸入 1 。
TTL 單位
選取 [時數 ]。
IP 位址
輸入IP位址 。 下列螢幕快照使用IP位址 10.1.0.7 。
選取 [確定]。
使用下列命令在 DNS 區域中建立 A 記錄:
az network private-dns record-set a add-record \
--resource-group $RESOURCE_GROUP \
--zone-name private.azuremicroservices.io \
--record-set-name '*' \
--ipv4-address $IP_ADDRESS
為您的應用程式指派私人 FQDN
在虛擬網路中部署 Azure Spring Apps 之後,您可以為您的應用程式指派私人 FQDN。 如需詳細資訊,請參閱 在虛擬網路 中部署 Azure Spring Apps。
使用下列步驟來指派私人 FQDN:
選取部署在虛擬網路中的 Azure Spring Apps 服務實例,然後開啟 [ 應用程式 ] 索引標籤。
選取應用程式以開啟 [概 觀 ] 頁面。
選取 [指派端點 ] 以將私人 FQDN 指派給您的應用程式。 指派 FQDN 可能需要幾分鐘的時間。
指派的私人 FQDN (加上標籤 的網址 ) 現已可供使用。 您只能存取專用網內的 URL,但不能存取因特網上的 URL。
使用下列命令將端點指派給您的應用程式:
az spring app update \
--resource-group $RESOURCE_GROUP \
--name $APP_NAME \
--service $AZURE_SPRING_APPS_INSTANCE_NAME \
--assign-endpoint true
存取應用程式的私人 FQDN
指派之後,您可以在專用網中存取應用程式的私人 FQDN。 例如,您可以在相同的虛擬網路或對等互連虛擬網路中建立 Jumpbox 機器。 然後,在該 Jumpbox 或虛擬機上,您可以存取私人 FQDN。
清除資源
如果您打算繼續使用後續的文章,您可能會想要保留這些資源。 當您不再需要它們時,請刪除資源群組,以刪除資源群組中的資源。 若要使用 Azure CLI 刪除資源群組,請使用下列命令:
az group delete --name $RESOURCE_GROUP
下一步