使用 Windows SQL Server IaaS 代理程式擴充功能來自動化管理

適用於:Azure VM 上的 SQL Server

SQL Server IaaS 代理程式延伸模組 (SqlIaasExtension) 運行於 Azure Windows 虛擬機器 (VM) 的 SQL Server 上,用於自動化管理和系統管理工作。

本文提供此擴充功能的概觀。 若要在 Azure VM 的 SQL Server 上安裝 SQL Server IaaS 代理程式延伸模組,請參閱自動註冊註冊單一 VM註冊大量 VM 的文章。

若要深入了解 Azure VM 部署和管理體驗,包括最近的改善項目,請參閱:

概觀

SQL Server IaaS 代理程式延伸模組能可讓您整合 Azure 入口網站,並解鎖 Azure VM 上 SQL Server 的許多優點:

  • 功能優點:此擴充功能可提供許多自動化功能的功能優點,例如入口網站管理、授權彈性、自動備份、自動修補等等。 如需詳細資訊,請參閱本文後續的功能優點

  • 合規性:此擴充功能提供簡單的方法,滿足通知 Microsoft 已依照產品條款指定的方式啟用 Azure Hybrid Benefit 的要求。 此流程不需要為每項資源管理授權註冊表單。

  • 免費:延伸模組完全免費。 此延伸模組沒有額外的相關成本。

  • 集中管理 Azure Hybrid Benefit 的整合:向延伸模組註冊的 SQL Server VM 可以與集中管理 Azure Hybrid Benefit 整合,讓您大規模輕鬆管理 SQL Server VM 的 Azure Hybrid Benefit。

  • 簡化授權管理:此延伸模組可以簡化 SQL Server 授權管理,並可讓您快速識別已啟用 Azure Hybrid Benefit 的 SQL Server VM:

    您可以使用 Azure 入口網站中的 SQL 虛擬機器資源,快速識別使用 Azure Hybrid Benefit 的 SQL Server VM。

啟用自動升級,以確保您每月都會取得延伸模組的最新更新。

管理模式

在 2023 年 3 月之前,SQL IaaS 代理程式延伸模組依賴管理模式來定義安全性模型,並解除鎖定功能優點。 在 2023 年 3 月,延伸模組架構已更新為完全移除管理模式,而是依賴最低權限原則,讓客戶控制他們想要以功能為基礎使用延伸模組的方式。

從 2023 年 3 月開始,當您第一次向延伸模組註冊時,二進位檔會儲存至虛擬機器,以提供基本功能,例如授權管理。 啟用依賴代理程式的任何功能之後,二進位檔會用來將 SQL IaaS 代理程式安裝到虛擬機器,而且每個啟用的功能都會視需要指派給 SQL IaaS 代理程式服務的權限

功能優點

SQL Server IaaS 代理程式延伸模組會解除鎖定一些功能優點,以管理 SQL Server VM,讓您挑選並選擇哪一個優點符合您的業務需求。 當您第一次向延伸模組註冊時,此功能僅限於幾個不依賴 SQL IaaS 代理程式的功能。 啟用需要的功能之後,代理程式就會安裝到 SQL Server VM。

下表詳細說明透過 SQL IaaS 代理程式延伸模組取得的優點,以及是否需要代理程式:

功能 描述
連接埠管理 解除鎖定入口網站中的管理功能,讓您可以在同一處檢視所有 SQL Server VM,以直接從入口網站啟用或停用 SQL 特定功能。

包含在基本註冊中。
自動備份 為 VM 上 SQL Server 的預設執行個體或正確安裝的具名執行個體,自動化所有資料庫的備份排程。 如需詳細資訊,請參閱 Azure 虛擬機器中的 SQL Server 自動備份 (Resource Manager)

需要 SQL IaaS 代理程式延伸模組。
自動修補 設定維護期間,在此期間進行 VM 的重要 Windows 和 SQL Server 安全性更新,以避免在工作負載尖峰時段進行更新。 如需詳細資訊,請參閱 Azure 虛擬機器中的 SQL Server 自動修補 (Resource Manager)

需要 SQL IaaS 代理程式延伸模組。
Azure Key Vault 整合 讓您在 SQL Server VM 上自動安裝和設定 Azure 金鑰保存庫。 如需詳細資訊,請參閱在 Azure 虛擬機器上設定 SQL Server 的 Azure Key Vault 整合 (Resource Manager)

需要 SQL IaaS 代理程式延伸模組。
Azure 更新管理員整合 由於自動修補不會安裝 SQL Server 的累積更新,因此您可以透過將 Azure 更新管理員整合到 SQL 虛擬機器資源中來取代它,這會為 SQL Server VM 新增改進的修補功能。 此功能目前為預覽功能。
彈性授權 從自備授權 (也稱為 Azure Hybrid Benefit) 順暢地轉換為「隨用隨付」授權模型再轉換回來,以節省成本。

包含在基本註冊中。
彈性版本 如果您決定要變更 SQL Server 的版本 (version)版本 (edition),只要更新 Azure 入口網站內的中繼資料即可,而不需要重新部署整個 SQL Server VM。

包含在基本註冊中。
設定 tempdb 您可以直接從 Azure 入口網站設定 tempdb,例如指定檔案數目、其初始大小、其位置,以及自動成長比率。 重新開啟您的 SQL Server 服務後變更才會生效。

需要 SQL IaaS 代理程式延伸模組。
適用於雲端的 Defender 入口網站整合 如果您已啟用適用於 SQL 的 Microsoft Defender,則可以直接在 Azure 入口網站的 SQL 虛擬機器資源中檢視適用於雲端的 Defender 建議。 請參閱安全性最佳做法以深入了解。

需要 SQL IaaS 代理程式延伸模組。
SQL 最佳做法評量 讓您使用設定最佳做法來評估 SQL Server VM 的健康情況。 如需詳細資訊,請參閱 SQL 最佳做法評定

需要 SQL IaaS 代理程式延伸模組。
在入口網站中檢視磁碟使用率 讓您在 Azure 入口網站中檢視 SQL 資料檔案磁碟使用率的圖形表示。

需要 SQL IaaS 代理程式延伸模組。

權限模型

依預設,SQL IaaS 代理程式延伸模組會使用最低權限模式權限模型。 最低使用權限模型會授與您啟用之每項功能所需的最低權限。 您使用的每個功能都會獲指派 SQL Server 中的自訂角色,而且自訂角色只會獲得執行與功能相關動作所需的授與權限。

在 2022 年 10 月之前部署的 SQL Server VM 會使用舊版系統管理員模型,其中 SQL IaaS 代理程式延伸模組預設會採用系統管理員權限。 針對在 2022 年 10 月之前佈建的 SQL Server VM,您可以移至 SQL 虛擬機器資源,選擇 [安全性] 下的 [安全性組態],然後核取 [啟用最低權限模式] 旁的方塊,來啟用「最低權限」權限模型。

若要啟用最低使用權限模型,請移至您的 [SQL 虛擬機器資源],選擇 [安全性] 底下的 [安全性設定],然後核取[啟用最低權限模式] 旁的方塊:

Screenshot of the Azure portal SQL virtual machines resource, Security Configuration page, enable least privilege highlighted.

下表定義擴充功能每個功能所使用的權限和自訂角色:

功能 權限 自訂角色 (伺服器/資料庫)
SQL 最佳做法評量 伺服器權限 - CONTROL SERVER SqlIaaSExtension_Assessment
自動備份 伺服器權限 – CONTROL SERVER
資料庫權限 – master 上的 db_ddladminmsdb 上的 db_backupoperator
SqlIaaSExtension_AutoBackup
Azure 備份服務 系統管理員 (sysadmin)
認證管理 伺服器權限 - CONTROL SERVER SqlIaaSExtension_CredentialMgmt
可用性群組入口網站管理 系統管理員 (sysadmin)
R 服務 伺服器權限 - ALTER SETTINGS SqlIaaSExtension_RService
SQL 驗證 系統管理員 (sysadmin)
SQL Server 執行個體設定 伺服器權限 - ALTER ANY LOGIN、ALTER SETTINGS SqlIaaSExtension_SqlInstanceSetting
儲存體組態 伺服器權限 - ALTER ANY DATABASE SqlIaaSExtension_StorageConfig
狀態報告 伺服器權限 - VIEW ANY DEFINITION、VIEW SERVER STATE、ALTER ANY LOGIN、CONNECT SQL SqlIaaSExtension_StatusReporting

安裝

當您使用 SQL IaaS 代理程式延伸模組能註冊 SQL Server VM 時,二進位檔會複製到 VM。 啟用依賴此功能的功能之後,SQL IaaS 代理程式延伸模組會安裝至 VM,並可存取 SQL Server。 根據預設,代理程式會遵循最低權限模型,而且只有與您啟用之功能相關聯的 SQL Server 內的權限,除非您自行手動將 SQL Server 安裝至 VM,或是在 2022 年 10 月之前從 Marketplace 部署 SQL Server 映像,在此情況下,代理程式在 2022 年 10 月之前便已擁有系統管理員權限 SQL Server。

透過 Azure 入口網站部署 SQL Server VM Azure Marketplace 映像,會自動向延伸模組註冊 SQL Server VM。 不過,如果選擇在 Azure 虛擬機器上自行安裝 SQL Server,或從自訂 VHD 佈建 Azure 虛擬機器,則您必須使用 SQL IaaS 代理程式延伸模組註冊 SQL Server VM 以解鎖功能優點。 當 CEIP 服務偵測到自行安裝 SQL Server 2016 或更新版本的 Azure VM 時,預設會使用 SQL IaaS 代理程式延伸模組自動註冊 Azure VM。 應該手動註冊 SQL Server CEIP 未偵測到的 VM。

當您向 SQL IaaS 代理程式延伸模組註冊時,二進位檔會複製到虛擬機器,但預設不會安裝代理程式。 只有在您啟用其中一個有需要的 SQL laaS 代理程式延伸模組功能時,才會安裝代理程式,然後會在虛擬機器上執行下列兩項服務:

  • Microsoft SQL Server IaaS 代理程式是 SQL IaaS 代理程式延伸模組的主要服務,應該在本機系統帳戶下執行。
  • Microsoft SQL Server IaaS 查詢服務是協助程式服務,可協助延伸模組在 SQL Server 內執行查詢,應該在 NT 服務帳戶 NT Service\SqlIaaSExtensionQuery 下執行。

有三種方式可以向擴充功能註冊:

使用 SQL Server IaaS 代理程式延伸模組註冊您的 SQL Server VM,藉以在訂閱內建立 SQL 的虛擬機器資源,這是獨立於虛擬機器資源外的資源。 從延伸模組取消註冊 SQL Server VM 會移除訂閱的 SQL 虛擬機器資源,但不會卸載基礎的虛擬機器。

多個執行個體支援

如果有預設執行個體,SQL IaaS 代理程式延伸模組只能在具有多個執行個體的虛擬機器上運作。 當您使用 SQL IaaS 代理程式延伸模組註冊虛擬機器時,將註冊預設執行個體,而這就是您可以從 Azure 入口網站管理的執行個體。

如果沒有預設執行個體,SQL IaaS 代理程式延伸模組不支援具有多個具名執行個體的虛擬機器。

具名執行個體支援

如果 SQL 具名執行個體是虛擬機器上唯一可用的 SQL Server 執行個體,則 SQL Server IaaS 代理程式延伸模組會選用此執行個體。 SQL IaaS 代理程式延伸模組不支援具有多個具名執行個體的 VM。

若要使用 SQL Server 的具名執行個體,請部署 Azure 虛擬機器、在其中安裝一個具名 SQL Server 執行個體,然後使用 SQL IaaS 代理程式延伸模組將其註冊。

或者,若要使用具有 Azure Marketplace SQL Server 映像的具名執行個體,請遵循下列步驟:

  1. 從 Azure Marketplace 部署 SQL Server VM。
  2. 從 SQL IaaS 代理程式擴充功能取消註冊 SQL Server VM。
  3. 完全解除安裝 SQL Server VM 內的 SQL Server。
  4. 重新啟動虛擬機器。
  5. 使用 SQL Server VM 中的具名執行個體來安裝 SQL Server。
  6. 重新啟動虛擬機器。
  7. 使用 SQL IaaS 代理程式擴充功能註冊 VM

容錯移轉叢集執行個體支援

支援註冊 SQL Server 容錯移轉叢集執行個體 (FCI),且功能有限。 由於功能有限,SQL Server 向延伸模組註冊的 FCI 不支援需要代理程式的功能,例如自動備份、修補和進階入口網站管理。

如果您的SQL Server VM 已經向 SQL IaaS 代理程式延伸模組註冊,而且您已啟用任何需要代理程式的功能,則必須從延伸模組取消註冊 SQL Server VM,並在安裝 FCI 之後再次註冊。

確認擴充功能的狀態

使用 Azure 入口網站或 Azure PowerShell 或 Azure CLI 檢查延伸模組的狀態。

確認擴充功能已安裝在 Azure 入口網站中。

移至 Azure 入口網站中的虛擬機器資源 (不是 SQL 虛擬機器資源,而是 VM 的資源)。 選取 [設定] 底下的 [擴充功能]。 您應該會看到列出的 SqlIaasExtension 擴充功能,如下列範例所示:

Screenshot from the Azure portal of the status of the SQL Server IaaS Agent extension.

限制

SQL IaaS 代理程式擴充功能僅支援:

  • 透過 Azure Resource Manager 部署的 SQL Server VM。 不支援透過傳統模型部署的 SQL Server VM。
  • 部署至公用或 Azure Government 雲端的 SQL Server VM。 不支援部署到其他私人或政府雲端。
  • 功能有限的 SQL Server FCIs。 SQL Server 向延伸模組註冊的 FCI 不支援需要代理程式的功能,例如自動備份、修補和進階入口網站管理。
  • 具有預設執行個體或單一具名執行個體的 VM。
  • 如果 VM 具有多個具名執行個體,則其中一個執行個體必須是使用 SQL IaaS 代理程式延伸模組的預設執行個體。
  • 僅限 SQL Server 執行個體映像。 SQL IaaS 代理程式延伸模組不支援 Reporting Services 或 Analysis Services,例如下列映像:SQL Server Reporting Services、Power BI 報表伺服器、SQL Server Analysis Services。

隱私權聲明

使用 Azure VM 上的 SQL Server 和 SQL IaaS 代理程式延伸模組時,請考慮下列隱私權聲明:

  • 自動註冊:當 CEIP 服務偵測到 SQL Server 2016 或更新版本的 Azure VM 時,預設會使用 SQL IaaS 代理程式延伸模組自動註冊 Azure VM。 如需詳細資訊,請檢閱 SQL Server 隱私權補充

  • 資料收集:SQL IaaS 代理程式擴充功能會收集資料,以在 Azure 虛擬機器上使用 SQL Server 時,為客戶提供選擇性的優點。 Microsoft 在沒有客戶的事先同意之前,不會將此資料用於授權稽核。 如需詳細資訊,請參閱 SQL Server 隱私權補充

  • 區域內資料落地:Azure VM 上的 SQL Server 和 SQL IaaS 代理程式延伸模組不會將客戶資料從部署 VM 的區域移出或儲存到其他位置。

若要在 Azure VM 的 SQL Server 上安裝 SQL Server IaaS 擴充功能,請參閱自動安裝單一 VM大量 VM 的文章。 如需問題解決方式,請參閱針對延伸模組的已知問題進行疑難排解

若要深入了解,請檢閱下列文章: