教學課程:多個子網路中的可用性群組必要條件 (Azure VM 上的 SQL Server)。

適用于:Azure VM 上的SQL Server

提示

藉由在相同 Azure 虛擬網路內的多個子網路中建立 SQL Server VM,您的 Always On 可用性群組將不再需要 Azure Load Balancer 或分散式網路名稱 (DNN)。

在本教學課程中,請完成在 Azure虛擬機器 (VM) 上多個子網路中的 SQL Server 建立 Always On 可用性群組的必要條件。 在本教學課程結尾,您將會在兩部 Azure 虛擬機器上有一個網域控制站、多個子網中的兩台 SQL Server VM,以及單一資源群組中的儲存體帳戶。

估計時間:本教學課程會在 Azure 中建立數個資源,最多可能需要 30 分鐘的時間才能完成。

下圖說明您在本教學課程中部署的資源:

下圖說明您在本教學課程中部署的資源

必要條件

若要完成此教學課程,您需要下列項目:

建立資源群組

若要在 Azure 入口網站中建立資源群組,請遵循下列步驟:

  1. 登入 Azure 入口網站

  2. 選取 [+ 建立資源] 以在入口網站中建立新資源。

    選取 [+建立資源] 以在入口網站中建立新資源。

  3. 在 [Marketplace] 搜尋方塊中搜尋 [資源群組],然後選擇 Microsoft 的 [資源群組] 圖格。 選取 [資源群組] 頁面上的 [建立]。

    在 Marketplace 中搜尋資源群組,然後選擇建立資源群組。

  4. 在 [建立資源群組] 頁面上,填入值以建立資源群組:

    1. 從下拉式清單中選擇適當的 Azure 訂用帳戶。
    2. 提供資源群組的名稱,例如 SQL-HA-RG
    3. 從下拉式清單中選擇區域,例如美國西部 2。 請務必也將所有後續的資源部署至此位置。
    4. 選取 [審核 + 建立] 以檢查您的資源參數,然後選取 [建立] 以建立您的資源群組。

    填入值,以在 Azure 入口網站中建立資源群組。

建立網路和子網路

接下來,建立虛擬網路和三個子網路。 若要深入瞭解,請參閱虛擬網路概觀

若要在 Azure 入口網站中建立虛擬網路,請遵循下列步驟:

  1. Azure 入口網站中移至資源群組,並選取 [+ 建立]

    在資源群組中建立新資源

  2. 在 [Marketplace] 搜尋方塊中搜尋虛擬網路,然後從 Microsoft 選擇 [虛擬網路] 圖格。 在 [虛擬網路] 頁面中,選取 [建立]。

  3. 在 [建立虛擬網路] 頁面的 [基本] 索引標籤上,輸入下列資訊:

    1. 在 [專案詳細資料] 下方,選擇適當的 Azure 訂用帳戶,以及您先前建立的資源群組,例如 SQL-HA-RG
    2. 在 [執行個體詳細資料] 下提供虛擬網路 (例如 SQLHAVNET) 的名稱,然後從下拉式清單中選擇與資源群組相同的區域。

    選擇先前建立的資源群組,然後為虛擬網路提供名稱,例如 SQLHAVNET

  4. 在 [IP 位址] 索引標籤上,選取 [預設] 子網路以開啟 [編輯子網路] 頁面。 將 [名稱] 變更為 DC-subnet 以用於網域控制站子網路。 選取 [儲存]。

    在 [IP 位址] 索引標籤中,選取預設子網路來開啟 [編輯子網路] 頁面。將名稱變更為 DC 子網路,供網域控制站子網路使用。選取 [儲存]

  5. 選取 [+ 新增子網路],為您第一部 SQL Server VM 新增額外的子網路,並填入下列值:

    1. 在 [子網路名稱] 中提供一個值,例如 SQL-subnet-1
    2. 請在虛擬網路位址空間內提供唯一的子網路位址範圍。 例如,DC 子網路位址範圍的第三組八位元數字可以反覆使用 1。
      • 例如,如果 DC-subnet 範圍是 10.38.0.0/24,則針對 SQL-subnet-1 請輸入 IP 位址範圍 10.38.1.0/24
      • 同樣地,如果 DC-subnet IP 範圍是 10.5.0.0/24,則針對新的子網路請輸入 10.5.1.0/24
    3. 選取 [新增] 以新增您的子網路。

    為第一個子網路命名 (例如 sql-subnet-1),然後針對第三組八位元數字反覆使用 1,因此,如果您的 DC 子網路 IP 位址是 10.5.0.0,則新的子網路應該是 10.5.1.0

  6. 重複上述步驟,為第二台 SQL Server VM 新增額外的唯一子網路範圍,名稱可用 SQL-subnet-2。 第三組八位元數字可以再次反覆使用 1。

    • 例如,如果 DC-subnet IP 範圍是 10.38.0.0/24,而 SQL-subnet-1 是 10.38.1.0/24,則針對新的子網路請輸入 10.38.2.0/24
    • 同樣地,如果 DC-subnet IP 範圍是 10.5.0.0/24,而 SQL-subnet-1 是 10.5.1.0/24,則針對 SQL-subnet-2 請輸入 IP 位址範圍 10.5.2.0/24

    為第二個子網路命名 (例如 sql-subnet-2),然後針對第三組八位元數字反覆使用 2,因此,如果您的 DC 子網路 IP 位址是 10.38.0.0/24,則新的子網路應該是 10.38.2.0/24

  7. 新增第二個子網路之後,請檢查子網路名稱和範圍 (IP 位址範圍和影像可能不同)。 如果檢查一切都正確,請依序選取 [檢閱 + 建立] 和 [建立] 以建立新虛擬網路。

    當您新增第二個子網路之後,請檢閱您的子網路名稱與範圍,如此影像範例 (儘管您的 IP 位址可能不同)。如果一切看起來正確,請選取 [檢閱 + 建立],然後選取 [建立] 以建立新的虛擬網路。

    Azure 會讓您回到入口網站儀表板,並在建立完新網路時通知您。

建立網域控制站

當您的網路和子網路就緒後,請建立虛擬機器 (或選擇性建立兩台以取得高可用性) 並將其設為您的網域控制站。

建立 DC 虛擬機器

若要在 Azure 入口網站中建立網域控制站 (DC) 虛擬機器,請遵循下列步驟:

  1. Azure 入口網站中移至資源群組,並選取 [+ 建立]

    在資源群組中建立新資源

  2. 在 [Marketplace] 搜尋方塊中搜尋 Windows Server

  3. 在 Microsoft 的 [Windows Server] 圖格上,選取 [建立] 下拉式清單,然後選擇 [Windows Server 2016 Datacenter] 映像。

  4. 填寫 [建立虛擬機器] 頁面上的值,以建立您的網域控制站 VM,例如 DC-VM-1。 選擇性建立額外的 VM (例如 DC-VM-2),以針對 Active Directory Domain Services 提供高可用性。 使用下表中的值來建立您的 VM:

    欄位
    訂用帳戶 您的訂用帳戶
    資源群組 SQL-HA-RG
    虛擬機器名稱 第一個網域控制站:DC-VM-1。
    第二個網域控制站 DC-VM-2。
    區域 您用來部署資源群組和虛擬網路的位置。
    可用性選項 Azure 區域
    針對不支援可用性區域的 Azure 區域改用可用性設定組。建立新的可用性設定組,並將所有此教學課程中建立的 VM 放置於該可用性設定組內。
    可用性區域 針對 DC-VM-1 指定1。
    針對 DC-VM-2 指定2。
    大小 D2s_v3 (2 個 vCPU、8 GB RAM)
    使用者名稱 DomainAdmin
    密碼 Contoso!0000
    公用輸入連接埠 允許選取的連接埠
    選取輸入連接埠 RDP (3389)
    OS 磁碟類型 進階 SSD (本地備援儲存體)
    虛擬網路 SQLHAVNET
    子網路 DC-subnet
    公用 IP 與 VM 相同的名稱,例如 DC-VM-1 或 DC-VM-2
    NIC 網路安全性群組 基本
    公用輸入連接埠 允許選取的連接埠
    選取輸入連接埠 RDP (3389)
    開機診斷 以受控儲存體帳戶啟用 (建議)

    當您的虛擬機器已建立且可供使用時,Azure 會通知您。

設定網域控制站

當您的 DC 虛擬機器就緒之後,請設定 corp.contoso.com 的網域控制站。

若要將 DC-VM-1 設為網域控制站,請遵循下列步驟:

  1. Azure 入口網站中移至資源群組,並選取 DC-VM-1 機器。

  2. 在 [DC-VM-1] 頁面上,選取 [連線] 以下載用於遠端桌面存取的 RDP 檔案,然後開啟該檔案。

    連接到虛擬機器

  3. 使用所設定的系統管理員帳戶 (DomainAdmin) 和密碼 (Contoso!0000) 連線至 RDP 工作階段。

  4. 開啟 [伺服器管理員] 儀表板 (預設為開啟),然後選擇 [新增角色及功能]。

    伺服器總管 - 新增角色

  5. 連續選取 [下一步],直到到達 [伺服器角色] 區段。

  6. 選取 [Active Directory Domain Services] 和 [DNS 伺服器] 角色。 出現提示時,請新增這些角色所需的任何其他功能。

    注意

    Windows 會顯示無靜態 IP 位址的警告。 如果您要測試設定,請選取 [繼續]。 針對生產環境情況,請在 Azure 入口網站中將 IP 位址設定為靜態,或使用 PowerShell 來設定網域控制站機器的靜態 IP 位址

    [新增角色] 對話方塊

  7. 連續選取 [下一步],直到到達 [確認] 區段。 選取 [必要時自動重新啟動目的地伺服器] 核取方塊。

  8. 選取 [安裝] 。

  9. 功能安裝完畢後,請回到 [伺服器管理員] 儀表板。

  10. 在左側窗格中選取新的 [AD DS] 選項。

  11. 選取黃色警告列上的 [更多] 連結。

    DNS 伺服器 VM 上的 AD DS 對話方塊

  12. 在 [所有伺服器工作詳細資料] 對話方塊的 [動作] 資料行中,選取 [將此伺服器升級為網域控制站]。

  13. Active Directory 網域服務組態精靈中,使用下列值:

    頁面 設定
    部署組態 新增樹系
    根網域名稱 = corp.contoso.com
    網域控制站選項 DSRM 密碼 = Contoso!0000
    確認密碼 = Contoso!0000
  14. 選取 [下一步] 以完成精靈中的其他頁面。 在 [先決條件檢查] 頁面上,確認是否出現下列訊息:已順利通過所有先決條件檢查。 您可以檢閱任何適用的警告訊息,但是仍可以繼續進行安裝。

  15. 選取 [安裝] 。 DC-VM-1 虛擬機器會自動重新開機。

識別 DNS IP 位址

使用 DNS 的主要網域控制站。 若要這樣做,請找出用於網域主控站 VM 的私人 IP 位址。

若要在 Azure 入口網站中識別 VM 的私人 IP 位址,請遵循下列步驟:

  1. 移至 Azure 入口網站中的資源群組,並選取網域主控站 (DC-VM-1)。
  2. 在 [DC-VM-1] 頁面的 [設定] 窗格中,選擇 [網路]。
  3. 請記下 NIC 私人 IP 位址。 使用此 IP 位址作為其他虛擬機器的 DNS 伺服器。 範例影像中的私人 IP 位址是 10.38.0.4

在 [DC-VM-1] 頁面上,選擇 [設定] 窗格中的 [網路],然後記下 NIC 私人 IP 位址。使用此 IP 位址作為 DNS 伺服器。

設定虛擬網路 DNS

建立第一個網域控制站並啟用 DNS 後,請為 DNS 設定虛擬網路以使用此虛擬機器。

若要設定虛擬網路以使用 DNS,請遵循下列步驟:

  1. Azure 入口網站中移至資源群組,並選取虛擬網路 (例如 SQLHAVNET)。
  2. 選取 [設定] 窗格下的 [DNS 伺服器],然後選取 [自訂]。
  3. 在 [IP 位址] 欄位中輸入您先前識別的私人 IP 位址,例如 10.38.0.4
  4. 選取 [儲存]。

 選取 [設定] 窗格下的 [DNS 伺服器],然後選取 [自訂]。輸入您先前在 [IP 位址] 欄位中識別出的私人 IP 位址,例如 10.38.0.4。

設定第二個網域控制站

網域主控站重新開機後,您可以選擇性地設定第二個網域控制站,以提供高可用性。 如果您不想設定第二個網域控制站,請略過此步驟。 不過請注意,建議在生產環境中使用第二個網域控制站。

設定慣用的 DNS 伺服器位址、加入網域,然後設定次要網域控制站。

設定慣用 DNS 伺服器位址

慣用的 DNS 伺服器位址不應該直接在VM 內更新,它應該從Azure 入口網站或 Powershell 或 Azure CLI進行編輯。 下列步驟是在Azure 入口網站內進行變更:

  1. 登入 Azure 入口網站

  2. 在入口網站頂端的搜尋方塊中,輸入網路介面。 在搜尋結果中選取 [網路介面]。

  3. 從清單中選取您要檢視或變更設定之第二個網域控制站的網路介面。

  4. 在 [設定] 中選取 [DNS 伺服器]。

  5. 選取任一個選項:

    • 繼承自虛擬網路︰選擇此選項,可針對網路介面所指派的虛擬網路,繼承為虛擬網路所定義的 DNS 伺服器設定。 這會自動繼承主要網域控制站作為 DNS 伺服器。

    • 自訂︰您可以設定自己的 DNS 伺服器,以解析跨多個虛擬網路的名稱。 輸入您要做為 DNS 伺服器之伺服器的 IP 位址。 您指定的 DNS 伺服器位址只會指派給此網路介面,並會覆寫為此網路介面指派的虛擬網路的任何 DNS 設定。 如果您選取自訂,則輸入主要網域控制站的 IP 位址,例如 10.38.0.4

  6. 選取 [儲存]

  7. 如果使用自訂DNS 伺服器,請返回Azure 入口網站中的虛擬機器,然後重新開機 VM。

加入網域

接下來,加入 corp.contoso.com 網域。 若要這樣做,請依照下列步驟執行:

  1. 使用 BUILTIN\DomainAdmin 帳戶遠端連線至虛擬機器。
  2. 開啟 [伺服器管理員],選取 [本機伺服器]。
  3. 選取 [工作群組]。
  4. 在 [電腦名稱] 區段中,選取 [變更]。
  5. 選取 [網域] 核取方塊,然後在文字方塊中輸入 corp.contoso.com。 選取 [確定]。
  6. 在 [Windows 安全性] 快顯對話方塊中,指定預設的網域系統管理員帳戶 (CORP\DomainAdmin) 和密碼 (Contoso!0000) 的認證。
  7. 當您看到「歡迎使用 corp.contoso.com 網域」訊息時,請選取 [確定]。
  8. 選取 [關閉],然後選取快顯對話方塊中的 [立即重新啟動]。

設定網域控制站

當您的伺服器加入網域之後,您就可以將其設為第二個網域控制站。 若要這樣做,請依照下列步驟執行:

  1. 如果您尚未連線,請開啟您次要網域控制站的 RDP 工作階段,然後開啟 [伺服器管理員] 儀表板 (依預設可能會開啟)。

  2. 選取儀表板上的 [新增角色及功能] 連結。

    伺服器總管 - 新增角色

  3. 連續選取 [下一步],直到到達 [伺服器角色] 區段。

  4. 選取 [Active Directory Domain Services] 和 [DNS 伺服器] 角色。 出現提示時,請新增這些角色所需的任何其他功能。

  5. 功能安裝完畢後,請回到 [伺服器管理員] 儀表板。

  6. 在左側窗格中選取新的 [AD DS] 選項。

  7. 選取黃色警告列上的 [更多] 連結。

  8. 在 [所有伺服器工作詳細資料] 對話方塊的 [動作] 資料行中,選取 [將此伺服器升級為網域控制站]。

  9. 在 [部署組態] 下,選取 [將網域控制站新增至現有網域]。

  10. 按一下 [選取]。

  11. 使用系統管理員帳戶 (CORP.CONTOSO.COM\domainadmin) 和密碼 (Contoso!0000) 來進行連線。

  12. 在 [從樹系中選取一個網域] 中,選擇您的網域,然後選取 [確定]。

  13. 在 [網域控制站選項] 中,使用預設值並設定 DSRM 密碼。

    注意

    [DNS 選項] 頁面可能警告您,指出無法建立此 DNS 伺服器的委派。 您在非生產環境中可以忽略這個警告。

  14. 連續選取 [下一步],直到對話方塊到達 [必要條件] 檢查。 然後選取 [安裝]。

在伺服器完成組態變更之後,重新啟動伺服器。

將第二個 DC IP 位址新增至 DNS

設定第二個網域控制站之後,請遵循與之前相同的步驟來識別 VM 的私人 IP 位址,並將私人 IP 位址新增為資源群組內虛擬網路中的次要自訂 DNS 伺服器。 在 Azure 入口網站中新增次要 DNS 伺服器,即可啟用 DNS 服務的備援。

設定網域帳戶

設定您的網域控制站,且已在 Azure 入口網站中設定 DNS 伺服器之後,請為安裝 SQL Server 的使用者和 SQL Server 服務帳戶建立網域帳戶。

總共設定三個帳戶,一個是用於 SQL Server VM 的安裝帳戶,然後每個 SQL Server VM 各有一個服務帳戶。 例如,針對帳戶使用下表中的值:

帳戶 VM 完整網域名稱 Description
安裝 兩者 Corp\Install 使用此帳戶登入其中一個 VM,以設定叢集和可用性群組。
SQLSvc1 SQL-VM-1 Corp\SQLSvc1 將此帳戶用於第一個 SQL Server VM 上的 SQL Server 服務。
SQLSvc2 SQL-VM2 Corp\SQLSvc2 將此帳戶用於第二個 SQL Server VM 上的 SQL Server 服務。

請遵循下列步驟來建立每個帳戶:

  1. 連線至網域主控站機器,例如 DC-VM-1。 .

  2. 在 [伺服器管理員] 中,選取 [工具],然後選取 [Active Directory 管理中心]。

  3. 從左窗格中選取 [corp (本機)]。

  4. 在右側的 [工作] 窗格上,選取 [新增],然後選取 [使用者]。

  5. 輸入新的使用者帳戶,並設定複雜密碼。 對於非生產環境,將使用者帳戶設定為永不過期。

    Active Directory 管理中心

  6. 選取 [確定] 以建立使用者。

  7. 重複這些步驟來建立這三個帳戶。

授與安裝帳戶權限

建立帳戶之後,請將所需的網域權限授與安裝帳戶,讓帳戶能夠在 AD 中建立物件。

若要授與權限給安裝帳戶,請遵循下列步驟:

  1. 從 [伺服器管理員] 開啟 [Active Directory 管理中心] (如果尚未開啟)。

  2. 從左窗格中選取 [corp (本機)]。

  3. 在右側的 [工作] 窗格中,確認您在下拉式清單中看到 [corp (本機)],然後選取下方的 [屬性]。

    公司使用者內容

  4. 選取 [延伸模組],然後選取 [安全性] 索引標籤上的 [進階] 按鈕。

  5. 在 [公司的進階安全性設定] 對話方塊中,選取 [新增]。

  6. 按一下 [選取主體],搜尋 CORP\Install,然後選取 [確定]。

  7. 勾選 [讀取所有屬性] 和 [建立電腦物件] 旁的核取方塊。

    公司使用者權限

  8. 選取 [確定] ,然後再選取一次 [建立] 。 關閉 [公司] 內容視窗。

現在您已設定完 Active Directory 和使用者物件,已準備好可以建立 SQL Server VM。

建立 SQL Server VM

一旦設定您的 AD、DNS 和使用者帳戶之後,您就可以開始建立 SQL Server VM。 為了方便作業,請使用 Marketplace 中的 SQL Server VM 映像。

不過,在建立 SQL Server VM 之前,請考慮下列設計決策:

可用性 - 可用性區域

針對最高層級的備援,復原性和可用性會在個別可用性區域中部署 VM。 「可用性區域」是 Azure 地區內獨特的實體位置。 每個區域皆由一或多個配備獨立電力、冷卻系統及網路功能的資料中心所組成。 針對不支援可用性區域的 Azure 區域,請改用可用性設定組。 將所有 VM 放置在相同的可用性設定組內。

儲存體 - Azure 受控磁碟

為虛擬機器儲存體使用 Azure 受控磁碟。 Microsoft 建議使用 SQL Server 虛擬機器的受控磁碟,因為可用來處理幕後的儲存體。 如需詳細資訊,請參閱 Azure 受控磁碟概觀

網路 - 生產環境中的私人 IP 位址

本教學課程針對虛擬機器使用公用 IP 位址。 公用 IP 位址允許透過網際網路直接遠端連線至虛擬機器,讓設定步驟更為容易。 在生產環境中,Microsoft 僅建議使用私人 IP 位址,以降低 SQL Server 執行個體 VM 資源出現弱點的機率。

網路 - 每一伺服器單一 NIC

使用每一伺服器 (叢集節點) 單一 NIC。 Azure 網路具有實體備援,因此部署至 Azure 虛擬機器的容錯移轉叢集上不需要額外的 NIC。 叢集驗證報告會警告您節點只能在單一網路上觸達。 當您錯移轉叢集位於 Azure 虛擬機器時,您可以忽略此警告。

若要建立您的 VM,請遵循下列步驟:

  1. Azure 入口網站中移至資源群組,並選取 [+ 建立]。

  2. 搜尋 Azure SQL,然後選取 Microsoft 的 Azure SQL 圖格。

  3. 在 [Azure SQL] 頁面上,選取 [建立],然後從下拉式清單中選擇 [Windows Server 2016 映像上的 SQL Server 2016 SP2 Enterpris]。

     在入口網站的 [Azure SQL] 頁面上,選取 [建立],然後從下拉式清單中選擇 [Windows Server 2016 上的 SQL Server 2016 SP2 Enterprise] 映像。

使用下表來填寫 [建立虛擬機器] 頁面上的值,以建立 SQL Server VM,例如 SQL-VM-1SQL-VM-2 (您的 IP 位址可能與表格中的範例不同):

組態 SQL-VM-1 SQL-VM-2
資源庫映像 Windows Server 2016 上的 SQL Server 2016 SP2 Enterprise Windows Server 2016 上的 SQL Server 2016 SP2 Enterprise
VM 基本概念 名稱 = SQL-VM-1
使用者名稱 = DomainAdmin
密碼 = Contoso!0000
訂用帳戶 = 您的訂用帳戶
資源群組 = SQL-HA-RG
位置 = 您的 Azure 位置
名稱 = SQL-VM-2
使用者名稱 = DomainAdmin
密碼 = Contoso!0000
訂用帳戶 = 您的訂用帳戶
資源群組 = SQL-HA-RG
位置 = 您的 Azure 位置
VM 大小 大小 = E2ds_v4 (2 個 vcpu、16 GB RAM)
大小 = E2ds_v4 (2 個 vcpu、16 GB RAM)
VM 設定 可用性選項 = 可用性區域
可用性區域 = 1
公用輸入連接埠 = 允許選取的連接埠
選取輸入連接埠 = RDP (3389)
OS 磁碟類型 = 進階 SSD (本地備援儲存體)
虛擬網路 = SQLHAVNET
子網路 = SQL-subnet-1(10.38.1.0/24)
公用 IP 位址 = 自動產生。
NIC 網路安全性群組 = 基本
公用輸入連接埠 = 允許選取的連接埠
選取輸入連接埠 = RDP (3389)
開機診斷 = 以受控儲存體帳戶啟用 (建議)
可用性選項 = 可用性區域
可用性區域 = 2
公用輸入連接埠 = 允許選取的連接埠
選取輸入連接埠 = RDP (3389)
OS 磁碟類型 = 進階 SSD (本地備援儲存體)
虛擬網路 = SQLHAVNET
子網路 = SQL-subnet-2(10.38.2.0/24)
公用 IP 位址 = 自動產生。
NIC 網路安全性群組 = 基本
公用輸入連接埠 = 允許選取的連接埠
選取輸入連接埠 = RDP (3389)
開機診斷 = 以受控儲存體帳戶啟用 (建議)
SQL Server 設定 SQL 連線 = 私用 (在虛擬網路內)
連接埠 = 1433
SQL 驗證 = 停用
Azure Key Vault 整合 = 停用
儲存體最佳化 = 異動處理
SQL 資料 = 1024 GiB, 5000 IOPS, 200 MB/s
SQL 記錄 = 1024 GiB, 5000 IOPS, 200 MB/s
SQL TempDb = 使用本機 SSD磁碟機
自動修補 = 星期日 2:00
自動備份 = 停用
SQL 連線 = 私用 (在虛擬網路內)
連接埠 = 1433
SQL 驗證 = 停用
Azure Key Vault 整合 = 停用
儲存體最佳化 = 異動處理
SQL 資料 = 1024 GiB, 5000 IOPS, 200 MB/s
SQL 記錄 = 1024 GiB, 5000 IOPS, 200 MB/s
SQL TempDb = 使用本機 SSD磁碟機
自動修補 = 星期日 2:00
自動備份 = 停用

注意

這些建議的機器大小只適用於測試 Azure 虛擬機器中的可用性群組。 針對最佳化的生產工作負載,請參閱 Azure VM 上 SQL Server 的效能最佳做法中的大小建議。

設定 SQL Server VM

VM 建立完成後,請將次要 IP 位址新增至每個 VM,並將它們加入網域,以設定您的 SQL Server VM。

將次要 IP 新增至 SQL Server VM

在多重子網環境中,將次要 IP 位址指派給每個 SQL Server VM 以用於可用性群組接聽程式,並針對 Windows Server 2016 和更早版本,將次要 IP 位址指派給每個 SQL Server VM 以用於叢集 IP 位址。 這麼做即不再需要 Azure Load Balancer,因為就和單一子網路環境的需求一樣。

在 Windows Server 2016 和較舊版本中,您需要將額外的次要 IP 位址指派給每部 SQL Server VM 以供 Windows 叢集 IP 使用,因為叢集會使用叢集網路名稱,而不是在 Windows Server 2019 中引入的預設分散式網路名稱 (DNN)。 使用 DNN 時,叢集名稱物件 (CNO) 會自動註冊所有叢集節點的 IP 位址,不再需要專用的 Windows 叢集 IP 位址。

如果使用 Windows Server 2016 和較舊版本,請遵循本節中的步驟,將次要 IP 位址指派給每部 SQL Server VM,供可用性群組接聽程式「和」叢集「一起」使用。

如果使用 Windows Server 2019 或更新版本,請只指派次要 IP 位址供可用性群組接聽程式使用,並略過指派 Windows 叢集 IP 的步驟,除非您打算使用虛擬網路名稱 (VNN) 來設定叢集,如此才需要將這兩個 IP 位址指派給每部 SQL Server VM,就像在 Windows Server 2016 中時一樣。

若要將額外的次要 IP 指派給 VM,請遵循下列步驟:

  1. Azure 入口網站中移至資源群組,並選取第一部 SQL Server VM,例如 SQL-VM-1

  2. 在 [設定] 窗格中選取 [網路],然後選取 [網路介面]:

    選取 [設定] 窗格中的 [網路],然後選取 [網路介面]

  3. 在 [網路介面] 頁面的 [設定] 窗格中,選取 [IP 設定],然後選擇 [+ 新增] 以新增額外的 IP 位址:

    IP 組態

  4. 在 [新增 IP 設定] 頁面上,執行下列動作:

    1. 指定名稱作為 Windows 叢集 IP,例如為 Windows 2016 及較舊版本使用 Windows-cluster-ip。 如果使用 Windows Server 2019 或更新版本,請略過此步驟。
    2. 將 [配置] 設為靜態
    3. 在相同子網路 (SQL-subnet-1) 中輸入未使用的 IP 位址作為 SQL Server VM (SQL-VM-1),例如 10.38.1.10
    4. 保留 [公用 IP 位址] 的預設值 [取消關聯]。
    5. 選取 [確定] 完成新增 IP 設定。

    輸入第一個 SQL Server VM 子網路中已使用的 IP 位址,以新增叢集 IP

  5. 再次選取 [+ 新增],為可用性群組接聽程式設定其他 IP 位址 (指定名稱如可用性群組接聽程式),並再次在 SQL-subnet-1 中指定未使用的 ip 位址,例如 10.38.1.11

    再次選取 [+ 新增],為可用性群組接聽程式設定其他 IP 位址 (使用 availability-group-listener 之類的名稱),並再次在 SQL-subnet-1 中使用未使用的 IP 位址,例如 10.31.1.11

  6. 為第二部 SQL Server VM 重複上述步驟,例如 SQL-VM-2。 在 SQL-subnet-2 內指派兩個未使用的次要 IP 位址。 使用下表中的值來新增 IP 設定:

    欄位 輸入 輸入
    名稱 windows-cluster-ip availability-group-listener
    配置 靜態 靜態
    IP 位址 10.38.2.10 10.38.2.11

現在您已準備好加入 corp.contoso.com

將伺服器加入網域

將兩個次要 IP 位址都指派給 SQL Server VM 之後,將每個 SQL Server VM 加入corp.contoso.com網域。

若要加入 corp.contoso.com 網域,請針對 SQL Server VM 遵循相同的步驟,如同您使用次要網域控制站加入網域

等候每台 SQL Server VM 重新開機,然後您可以新增您的帳戶。

新增帳戶

將安裝帳戶新增為每台 VM 上的系統管理員、授與安裝帳戶和 SQL Server 內本機帳戶的權限,並更新 SQL Server 服務帳戶。

新增安裝帳戶

一旦這兩台 SQL Server VM 都已加入網域之後,將 CORP\Install 新增為本機系統管理員群組的成員。

提示

請確定您是使用網域系統管理員帳戶來登入。 在先前步驟中,您使用的是內建的系統管理員帳戶。 現在伺服器屬於網域的一部分並使用網域帳戶。 在您的 RDP 工作階段中,指定網域\使用者名稱,例如 CORP\DomainAdmin

若要將帳戶新增為管理員,請遵循下列步驟:

  1. 等候 VM 重新啟動,然後從第一台 SQL Server VM 重新啟動 RDP 檔案,以使用 CORP\DomainAdmin 帳戶來登入 SQL-VM-1
  2. 在 [伺服器管理員] 中,選取 [工具],然後選取 [電腦管理]。
  3. 在 [電腦管理 ] 視窗中,展開 [本機使用者和群組],然後選取 [群組]。
  4. 按兩下 [系統管理員] 群組。
  5. 在 [系統管理員屬性] 對話方塊中,選取 [新增] 按鈕。
  6. 輸入 CORP\Install 使用者,然後選取 [確定]。
  7. 選取 [確定] 以關閉 [系統管理員屬性] 對話方塊。
  8. SQL-VM-2 上重複這些步驟。

將帳戶新增至系統管理員

用來設定可用性群組 (CORP\install) 的安裝帳戶,必須是每台 SQL Server VM 上系統管理員固定伺服器角色的一部分。

若要授與系統管理員權限給安裝帳戶,請遵循下列步驟:

  1. 使用 <MachineName>\DomainAdmin 帳戶 (例如 SQL-VM-1\DomainAdmin) 透過遠端桌面通訊協定 (RDP) 連線至伺服器。
  2. 開啟 SQL Server Management Studio,然後連線到 SQL Server 的本機執行個體。
  3. 在 [物件總管] 中,選取 [安全性]。
  4. 以滑鼠右鍵按一下 [登入]。 選取 [新增登入]。
  5. 在 [登入 - 新增] 中,選取 [搜尋]
  6. 選取 [位置]。
  7. 輸入網域系統管理員網路認證。
  8. 使用安裝帳戶 (CORP\install)。
  9. 將登入設定為 [系統管理員 (sysadmin)] 固定伺服器角色的成員。
  10. 選取 [確定]。
  11. 在第二台 SQL Server VM (例如SQL-VM-2) 上重複這些步驟,並使用相關的機器名稱帳戶 (例如 SQL-VM-2\DomainAdmin) 進行連線。

新增系統帳戶

在 SQL Server 的較新版本中,[NT AUTHORITY\SYSTEM] 帳戶依預設沒有 SQL Server 的權限,且必須以手動方式授與。

若要新增 [NT AUTHORITY\SYSTEM] 並授與適當的權限,請遵循下列步驟:

  1. 使用 <MachineName>\DomainAdmin 帳戶 (例如 SQL-VM-1\DomainAdmin) 透過遠端桌面通訊協定 (RDP) 連線至第一部 QL Server VM。

  2. 開啟 SQL Server Management Studio,然後連線到 SQL Server 的本機執行個體。

  3. 在每個 SQL Server 執行個體上建立 [NT AUTHORITY\SYSTEM] 的帳戶,方法是使用下列 Transact-SQL (T-SQL) 命令:

    USE [master]
    GO
    CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS WITH DEFAULT_DATABASE=[master]
    GO 
    
  4. 在每個 SQL Server 執行個體上,將下列權限授與 [NT AUTHORITY\SYSTEM]

    • ALTER ANY AVAILABILITY GROUP
    • CONNECT SQL
    • VIEW SERVER STATE

    若要授與這些權限,請使用下列 Transact-SQL (T-SQL) 命令:

    GRANT ALTER ANY AVAILABILITY GROUP TO [NT AUTHORITY\SYSTEM]
    GO
    GRANT CONNECT SQL TO [NT AUTHORITY\SYSTEM]
    GO
    GRANT VIEW SERVER STATE TO [NT AUTHORITY\SYSTEM]
    GO 
    
  5. 在第二台 SQL Server VM (例如SQL-VM-2) 上重複這些步驟,並使用相關的機器名稱帳戶 (例如 SQL-VM-2\DomainAdmin) 進行連線。

設定 SQL Server 服務帳戶

每台 VM 上的 SQL Server 服務都必須使用專用網路域帳戶。 使用您先前建立的網域帳戶:適用於 SQL-VM-1Corp\SQLSvc1 和適用於 SQL-VM-2Corp\SQLSvc2

若要設定服務帳戶,請遵循下列步驟:

  1. 使用 <MachineName>\DomainAdmin 帳戶 (例如 SQL-VM-1\DomainAdmin) 透過遠端桌面通訊協定 (RDP) 連線至第一部 QL Server VM。
  2. 開啟 [SQL Server 組態管理員] 。
  3. 以滑鼠右鍵按一下 SQL Server 服務,然後選取 [屬性]。
  4. 提供帳戶 (Corp\SQLSvc1) 和密碼。
  5. 選取 [套用] 以認可您的變更,然後重新啟動 SQL Server 服務。
  6. 在其他 SQL Server VM (SQL-VM-1) 上重複這些步驟、使用電腦網域帳戶登入 (例如 SQL-VM-2\DomainAdmin),並提供 (Corp\SQLSvc2) 的第二個服務帳戶。

建立 Azure 儲存體帳戶

若要部署雙節點 Windows Server 容錯移轉叢集,則必須要有第三個成員才能建立仲裁。 在 Azure VM 上,雲端見證是建議的仲裁選項。 若要設定雲端見證,您需要 Azure 儲存體帳戶。 若要深入瞭解,請參閱為容錯移轉叢集部署雲端見證

若要在入口網站中建立 Azure 儲存體帳戶:

  1. 在入口網站中,開啟 [SQL-HA-RG] 資源群組,然後選取 [+ 建立]。

  2. 搜尋儲存體帳戶

  3. 選取 [儲存體帳戶],然後選取 [建立],並使用下列值進行設定:

    1. 選取您的訂用帳戶,然後選取資源群組 SQL-HA-RG
    2. 輸入您儲存體帳戶的儲存體帳戶名稱。 儲存體帳戶名稱必須介於 3 到 24 個字元的長度,而且只能包含數字和小寫字母。 儲存體帳戶名稱在 Azure 內必須是唯一的。
    3. 選取您的區域
    4. 針對 [效能],請選取 [標準:適用於多數案例的建議] (一般用途 v2 帳戶) 。 雲端見證不支援 Azure 進階儲存體。
    5. 針對 [備援],請選取 [本地備援儲存體 (LRS)]。容錯移轉叢集會使用 blob 檔案作為仲裁點,在讀取資料時需要一些一致性保證。 因此,您必須為複寫類型選取本地備援儲存體。
    6. 選取 [檢閱 + 建立]

設定防火牆

可用性群組功能依賴於透過下列 TCP 連接埠的流量:

  • SQL Server VM:SQL Server 預設執行個體的連接埠 1433。
  • 資料庫鏡像端點:任何可用的連接埠。 範例會經常使用 5022。

在兩台 SQL Server VM 上開啟這些防火牆連接埠。 開啟連接埠的方法取決於您使用的防火牆解決方案,且可能會因本節所提供的 Windows 防火牆範例而有所不同。

若要在 Windows 防火牆上開啟這些連接埠,請遵循下列步驟:

  1. 在第一個 SQL Server 上 [開始] 畫面中啟動 [具備進階安全性的 Windows 防火牆]。

  2. 在左窗格上,選取 [輸入規則]。 在右窗格上,選取 [新增規則]。

  3. 針對 [規則類型],選擇 [連接埠]。

  4. 針對連接埠,指定 [TCP] 並輸入適當的連接埠號碼。 請參閱下列範例:

    SQL 防火牆

  5. 選取 [下一步] 。

  6. 在 [動作] 頁面中,選取 [允許連線],然後選取 [下一步]。

  7. 在 [設定檔] 頁面上,接受預設設定,然後選取 [下一步]。

  8. 在 [名稱] 頁面上的 [名稱] 文字方塊中指定規則名稱 (例如 SQL 輸入),然後選取 [完成]。

  9. 在第二個 SQL Server VM 上重複上述步驟。

後續步驟

線在您已設定必要條件,請開始在多個子網路中設定您的可用性群組

若要深入了解,請參閱: