將 DNS 名稱對應至相同虛擬網路中多個 Azure Spring 應用程式服務執行個體中的應用程式
注意
基本、標準和企業方案將從 2025 年 3 月中旬開始淘汰,並停用 3 年。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 Azure Spring Apps 淘汰公告。
標準 耗用量和專用 方案將從 2024 年 9 月 30 日起淘汰,並在六個月後完成關閉。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 將 Azure Spring Apps 標準取用和專用方案遷移至 Azure Container Apps。
本文適用於:✅ 基本/標準 ✅ 企業
本文說明如何將域名系統 (DNS) 名稱對應至應用程式,以存取相同虛擬網路中的多個 Azure Spring Apps 服務實例。
必要條件
- Azure 訂用帳戶。 如果您沒有訂用帳戶,請先建立免費帳戶,再開始操作。
- Azure CLI 2.45.0 版或更新版本。 使用下列命令,以安裝 Azure Spring 應用程式延伸模組:
az extension add --name spring
- 部署在 Azure Spring Apps 實例中的虛擬網路。 如需詳細資訊,請參閱在 Azure 虛擬網路中部署 Azure Spring Apps(VNet 插入)。
概觀
本文說明下列兩種方法,將 DNS 名稱對應至應用程式:
使用Microsoft提供的完整功能變數名稱 (FQDN)。
相較於自定義網域方法,此方法是對應 DNS 名稱相對簡單且輕量的方法。 如果您不需要 DNS 區域中的通配符方法,建議您使用此方法。
此方法需要每個應用程式的 DNS 記錄。
使用自訂網域。
如果您已經有自定義網域,或想要通配符方法在多重實例案例中運作,請使用此方法。
此方法需要每個 Azure Spring Apps 服務實例的 DNS 記錄,以及針對每個應用程式設定的自定義網域。
例如,本文會使用 azure-spring-apps-1
和 azure-spring-apps-2
作為相同虛擬網路中兩個 Azure Spring Apps 實例的名稱。
從 [DNS 對應] 的 [初步步驟] 區段開始,然後繼續進行您慣用的方法:
最後,如存取私人應用程式的 FQDN URL 一節中所述,測試對應。
DNS 對應的初步步驟
針對 FQDN 和自定義網域方法,完成本節中的步驟,以對應 DNS 名稱。
尋找應用程式IP位址
這兩種方法都需要您想要對應之 Azure Spring Apps 實例中每個應用程式的 IP 位址。 使用下列步驟來尋找 IP 位址:
建立私人 DNS 區域
使用下列步驟,為專用網中的應用程式建立私人 DNS 區域。
注意
如果您使用由 21Vianet 運作的 Azure Microsoft,請將 取代private.azuremicroservices.io
private.microservices.azure.cn
為本文中的 。 如需詳細資訊,請參閱 檢查 Azure 中的端點。
在 [Azure 首頁] 頁面上,搜尋 私用 DNS 區域。
在 [私用 DNS 區域] 頁面上,選取 [建立]。
在 [建立 私用 DNS 區域] 頁面上填寫窗體。 在 [名稱] 的 [實例詳細數據] 中,指定
private.azuremicroservices.io
為私人 DNS 區域的名稱。選取 [ 檢閱建立]。
選取 建立。
建立區域可能需要幾分鐘的時間。
連結虛擬網路
若要將您建立的私人 DNS 區域連結至虛擬網路,您必須建立虛擬網路連結。
使用下列步驟來建立此連結:
為您的應用程式指派私人 FQDN
為您的應用程式指派私人 FQDN。
使用下列步驟,以指派的端點更新您的應用程式:
使用Microsoft提供的 FQDN 進行 DNS 對應
使用此方法時,您必須在使用Microsoft提供的完整功能變數名稱 (FQDN) 時,為每個應用程式建立 DNS 記錄作為需求。 如需此程式的核心瞭解,請參閱 在專用網中存取您的應用程式。
在虛擬網路中部署具有指派端點的 Azure Spring Apps 服務實例中的應用程式時,端點是私人 FQDN。 根據預設,完整域名對於服務實例的每個應用程式而言都是唯一的。 FQDN 格式為 <service-name>-<app-name>.private.azuremicroservices.io
。
為所有應用程式建立 DNS 記錄
若要使用私人 DNS 區域來轉譯和解析 DNS 名稱,您必須在區域中為每個應用程式建立「A」類型記錄。 在這裡範例中,應用程式名稱是 hello-vnet
,而 Azure Spring Apps 服務實體名稱稱為 azure-spring-apps-1
。
您需要每個應用程式的IP位址。 複製它,如在專用網中存取應用程式的 [尋找應用程式 IP 位址] 區段中所述。 在這裡範例中,IP 位址為 10.1.0.6
。
使用下列步驟建立 DNS 記錄:
視需要重複這些步驟,為其他應用程式新增 DNS 記錄。
具有自定義網域的 DNS 對應
使用這種方法,您只需要為每個 Azure Spring Apps 實例新增 DNS 記錄,但您必須為每個應用程式設定自定義網域。 如需此程式的核心瞭解,請參閱 將現有的自定義網域對應至 Azure Spring Apps。
此範例會重複使用私人 DNS 區域 private.azuremicroservices.io
,以新增自訂網域相關的 DNS 記錄。 私人 FQDN 格式為 <app-name>.<service-name>.private.azuremicroservices.io
。
技術上,您可以使用任何您想要的私人完整功能變數名稱。 在此情況下,您必須建立對應至您選擇的完整功能變數名稱的新私人 DNS 區域。
將自定義網域對應至 Azure Spring Apps 實例中的應用程式
使用下列步驟,將自定義網域對應至 Azure Spring Apps 實例中的每個應用程式:
開啟 Azure Spring Apps 實例,然後在瀏覽窗格中選取 [應用程式 ]。
在 [ 應用程式] 頁面上,選取應用程式。
在瀏覽窗格中選取 [自定義網域 ]。
選取 [ 新增自定義網域]。
在 [ 新增自定義網域 ] 窗格中,輸入您想要使用的 FQDN,並確定它對應至稍後要用於 TLS/SSL 系結的憑證。 這個範例會使用
hello-vnet.azure-spring-apps-1.private.azuremicroservices.io
。 您可以忽略 CNAME 元件。選取驗證。
如果已驗證,請選取 [ 新增]。
當自定義網域成功對應至應用程式時,它會出現在自定義網域數據表中。
注意
自定義網域的 TLS/SSL 狀態值為 [不安全],表示尚未系結至 TLS/SSL 憑證。 從瀏覽器到自定義網域的任何 HTTPS 要求都會收到錯誤或警告。
新增 TLS/SSL 系結
執行此步驟之前,請確定您已備妥憑證,並將其匯入 Azure Spring Apps。 如需詳細資訊,請參閱 將現有的自定義網域對應至 Azure Spring Apps。
使用下列步驟,以憑證更新應用程式的自訂網域:
開啟 Azure Spring Apps 實例,然後在瀏覽窗格中選取 [應用程式 ]。
在 [ 應用程式] 頁面上,選取應用程式。
在瀏覽窗格中選取 [自定義網域 ]。
選取自定義網域的省略號 (...) 按鈕,然後選取 [系結 TLS/SSL]。
在 [ TLS/SSL 系結] 窗格中,選取 [憑證 ],然後選取或匯入憑證。
選取儲存。
成功新增 TLS/SSL 系結之後,網域狀態將會是安全的,如 [狀況良好] 的 TLS/SSL 狀態值所示。
設定所有應用程式的自定義網域
若要使用私人 DNS 區域來轉譯和解析 DNS 名稱,您必須為每個 Azure Spring Apps 服務實例在區域中建立“A” 類型記錄。 在這裡範例中,應用程式名稱是 hello-vnet
,而 Azure Spring Apps 服務實體名稱稱為 azure-spring-apps-1
。
您需要每個應用程式的IP位址。 複製它,如在專用網中存取應用程式的 [尋找應用程式 IP 位址] 區段中所述。 在這裡範例中,IP 位址為 10.1.0.6
。
使用下列步驟在 DNS 區域中建立 A 記錄:
視需要重複設定其他應用程式的自定義網域。
存取應用程式的私人 FQDN
在這兩種方法的 FQDN 指派和 DNS 對應之後,您就可以存取專用網中的所有應用程式私人 FQDN。 例如,您可以在相同的虛擬網路或對等互連虛擬網路中建立 Jumpbox 或虛擬機,並存取應用程式的所有私人 FQDN。
下列範例顯示 FQDN 方法:
https://hello-vnet.azure-spring-apps-1.private.azuremicroservices.io
https://hello-vnet.azure-spring-apps-2.private.azuremicroservices.io
下列範例顯示自訂網域方法:
https://azure-spring-apps-1-hello-vnet.private.azuremicroservices.io
https://azure-spring-apps-2-hello-vnet.private.azuremicroservices.io
下列螢幕快照顯示使用 FQDN 之 Spring 應用程式的網址:
下列螢幕快照顯示使用自訂網域之 Spring 應用程式的網址:
清除資源
如果您打算繼續進行後續的文章,可以讓這些資源留在原處。 如果不再需要,請刪除資源群組,這會刪除資源群組中的資源。 若要使用 Azure CLI 刪除資源群組,請使用下列命令:
az group delete --name $RESOURCE_GROUP