共用方式為


教學課程:將 AKS 應用程式連線到 Azure SQL 資料庫

在這個教學中,你會學習如何使用 Service Connector 將部署在 AKS 的應用程式連接到 Azure SQL 資料庫。 您要完成下列工作:

  • 建立 Azure SQL Database 資源
  • 使用服務連接器在 AKS 叢集與資料庫之間建立連線。
  • 更新您的容器
  • 更新應用程式的程式碼
  • 清理 Azure 資源。

必要條件

建立 Azure SQL Database

  1. 使用 az group create 命令,建立資源群組以儲存您在本教學課程中建立的資源。

    az group create \
        --name $RESOURCE_GROUP \
        --location eastus
    
  2. 依照指示在上一個步驟中建立的資源群組中建立 Azure SQL Database。 請記下本教學課程中使用的伺服器名稱、資料庫名稱和資料庫認證。

使用服務連接器在 AKS 中建立服務連線

登錄服務連接器和 Kube 設定資源提供者

使用 az provider register 命令登錄服務連接器和 Kube 設定資源提供者。

az provider register --namespace Microsoft.ServiceLinker
az provider register --namespace Microsoft.KubernetesConfiguration

提示

您可以使用 az provider show --namespace "Microsoft.ServiceLinker" --query registrationStateaz provider show --namespace "Microsoft.KubernetesConfiguration" --query registrationState 命令來檢查這些資源提供者是否已登錄。 如果輸出為 Registered,則服務提供者已經登錄。

建立新連線

使用 Microsoft Entra 工作負載 ID,在 AKS 叢集與 SQL 資料庫之間建立服務連線

  1. Azure 入口網站中,瀏覽至您的 AKS 叢集資源。

  2. 選取 設定>服務連接器>建立

  3. [基本] 索引標籤上,設定下列設定。

    • [Kube 命名空間]:選取 [預設]
    • [服務類型]:選取 [SQL 資料庫]
    • [連線名稱]:使用服務連接器所提供的連線名稱,或輸入您自己的連線名稱。
    • [訂用帳戶]:選取包含 Azure SQL 資料庫服務的訂用帳戶。
    • [SQL Server]:選取您的 SQL Server。
    • [SQL 資料庫]:選取您的 SQL 資料庫。
    • [用戶端類型]:您用來連線至目標服務的程式碼語言或架構,例如:Python

    Azure 入口網站的螢幕擷取畫面,顯示用來建立在 AKS 中 SQL 資料庫的新連線的表單。

  4. 選擇 「下一步:認證」,在 「認證 」標籤中,選擇 工作負載身份 ,並選擇一個 使用者指派的管理身份

  5. 選取 [下一步:網路>][下一步:檢閱 + 在 Cloud Shell 上建立]。>

  6. Cloud Shell 會啟動並執行建立連線的指令。 你可能需要在指令處理時確認一些設定變更。 指令成功執行後,會顯示連線資訊,你可以在 服務連接器 面板中選擇刷新按鈕,顯示最新結果。

警告

Microsoft 建議您使用最安全的可用驗證流程。 此程序中描述的認證流程需要對應用程式高度信任,且存在其他流程中不存在的風險。 請僅在其他較安全的流程 (例如受控身分識別) 皆不具可行性的情況下,才使用這個流程。 選取驗證方法 工作負載 ID (建議)

使用 連接字串,在 AKS 叢集與 SQL 資料庫之間建立服務連線

  1. Azure 入口網站中,瀏覽至您的 AKS 叢集資源。

  2. 選取 設定>服務連接器>建立

  3. [基本] 索引標籤上,設定下列設定。

    • [Kube 命名空間]:選取 [預設]
    • [服務類型]:選取 [SQL 資料庫]
    • [連線名稱]:使用服務連接器所提供的連線名稱,或輸入您自己的連線名稱。
    • [訂用帳戶]:選取包含 Azure SQL 資料庫服務的訂用帳戶。
    • [SQL Server]:選取您的 SQL Server。
    • [SQL 資料庫]:選取您的 SQL 資料庫。
    • [用戶端類型]:您用來連線至目標服務的程式碼語言或架構,例如:Python

    Azure 入口網站的螢幕擷取畫面,顯示用來建立在 AKS 中 SQL 資料庫的新連線的表單。

  4. 選擇 「下一步:認證」,在 「認證 」標籤中輸入你的資料庫使用者名稱和密碼。

  5. 選取 [下一步:網路]>[下一步:檢閱 + 建立]>[建立]

  6. 部署成功之後,您可以在 [服務連接器] 窗格中檢視新連線的相關資訊。

更新您的容器

現在您已建立 AKS 叢集與資料庫之間的連線,您需要擷取連線秘密,並將其部署在您的容器中。

  1. Azure 入口網站中,瀏覽至您的 AKS 叢集資源。 在 [設定] 底下,選取 [服務連接器]。

  2. 選取新建立的連線,然後選取 [YAML 程式碼片段]。 此動作會開啟一個面板,其中顯示服務連接器所產生的範例 YAML 檔案。

  3. 若要將連線秘密設定為容器中的環境變數,您有兩個選項:

    • 直接使用提供的 YAML 程式碼片段建立部署。 這段範例程式碼片段包含標示區段,顯示被注入為環境變數的秘密物件。 選取 [套用] 繼續進行此方法。

      Azure 入口網站的螢幕擷取畫面,顯示用來建立在 AKS 中 SQL 資料庫新連線的範例 YAML 程式碼片段。

    • 或者,在 [資源類型] 下,選取 [Kube 工作負載],然後選取現有的 Kube 工作負載。 此動作會將新連線的秘密物件設定為所選工作負載的環境變數。 選取工作負載之後,請選取 [套用]

      Azure 入口網站的螢幕擷取畫面,顯示用來建立在 AKS 中 SQL 資料庫新連線的範例 Kube 程式碼片段。

更新應用程式的程式碼

最後一個步驟是,遵循下列指示,更新應用程式程式碼以使用環境變數。

清除資源

如果您之後不再需要依據本教學課程建立的資源,您可以藉由刪除 Azure 資源群組來移除它們。

使用 az group delete 命令刪除您的資源群組。

az group delete --resource-group $RESOURCE_GROUP

請閱讀下列文章,以深入了解服務連接器的概念,以及其如何協助 AKS 連線到 Azure 服務: