Skype for Business後端資料庫Alwayson
本文重點描述在skype for business server部署中後端資料庫alwayson的建立和配置,觀看此文需要一定經驗,另外會弱化整個skype for business server的部署過程。
在做Skype for business server專案規劃的時候涉及到企業版後端資料庫高可用的問題,微軟官方支援三種預設:
1、SQL故障轉移群集
2、SQL映象
3、SQL Alwayson
SQL故障轉移群集是比較老舊的技術,依耐性比較高,操作複雜但是比較穩定可靠;SQL映象應該算是一箇中間產物,後期的SQL正在逐步的取消此功能,但是在部署Skype時操作很簡單,不過日誌的問題很頭疼;SQL Alwayson是SQL 2012開始的一項新的高可用技術,配置起來沒有SQL群集那麼複雜,但又有映象那樣多個副本的高可用性。
今天分享下在Skype for business server中如何去實現後端資料的alwayson高可用性。
環境描述:
Domain:ucssi.cn
兩臺SQL FQDN為:sqlsvr01.ucssi.cn 、sqlsvr02.ucssi.cn
Skype伺服器FQDN為:sfbpool.ucssi.cn
先決條件準備:
兩臺SQL Server伺服器安裝.NET3.5以便順利安裝SQL Server 2014同時也需要在兩臺SQL Server伺服器上安裝windows故障轉移群集功能,以便順利實施SQL Alwayson功能
我們可以在Powershell中執行以下安裝命令(注意要指定.net3.5的原始檔):
Add-WindowsFeature Net-Framework-Core,Failover-Clustering,RSAT-Clustering-Mgmt,RSAT-Clustering-PowerShell -Source d:\sources\sxs
接下來調整SQL Server網絡卡順序:業務網絡卡優於心跳網絡卡。
以上條件準備完成後,開始進行Windows故障轉移群集部署。
在建立群集之前應當對兩臺伺服器進行群集驗證測試,使用以下Powershell命令進行(也可圖形化介面進行)
Test-Cluster -Node sqlsrv01,sqlsrv02(使用此命令進行測試會對兩臺伺服器以及儲存仲裁等進行完整測試,當然會有一些警告,在生產環境中建議仔細檢視每個警告並根據實際情況解決警告後在進行群集部署)
完成驗證後即可開始建立群集,使用以下Powershell命令進行群集建立(也可圖形化介面進行)
New-Cluster -Name sqlcluster -Node sqlsrv01,sqlsrv02 -NoStorage -StaticAddress 192.168.31.180
開啟Windows故障轉移群集管理器,此時已經建立好了群集
接下來對Windows故障轉移群集配置見證仲裁,首先需要建立一個共享資料夾來存放見證
然後進行群集仲裁配置
Set-ClusterQuorum -Cluster sqlcluster –NodeAndFileShareMajority “\\dc\sqlclusterwitness"
接下來進行SQL Server安裝。注意:alwayson僅支援SQL Server 2012及以上版本,同時SQL Server必須為企業版,SQL Server例項名稱必須一致。
安裝SQL Server功能至少要勾選資料庫引擎
保持預設例項名稱或者指定例項名稱(兩臺SQL例項名稱必須一致)
使用服務賬戶為域使用者(生產環境建議單獨為SQL建立一個服務賬號,普通user許可權即可)
然後等待兩臺SQL Server 安裝完成。接著我們需要在DNS中建立一條A記錄作為alwayson的偵聽器。以sql.ucssi.cn為例吧,手動指向一個VIP 192.168.31.168
SQL Server安裝完畢後開啟SQL Server配置管理器,選擇SQL Server屬性,並啟用alwayson功能
重啟SQL服務
在SQL Server安裝部分就到此為止,看過我之前ADFS的後端資料庫配置的部落格同學應該都知道,alwayson的配置是要先存在資料然後才能對這個資料庫進行啟用高可用性組配置。所以接下來就是安裝Skype for Business Server,在拓撲中定義好一臺SQL Server,讓拓撲自動建立好資料庫,然後再對資料庫進行alwayson配置,完成配置後再次更改拓撲中的資料庫FQDN即可。接下來就開始Skype for Business Server的先決條件安裝
開啟Powershell執行以下命令進行安裝:
Add-WindowsFeature NET-Framework-Core, RSAT-ADDS, Windows-Identity-Foundation, Web-Server, Web-Static-Content, Web-Default-Doc, Web-Http-Errors, Web-Dir-Browsing, Web-Asp-Net, Web-Net-Ext, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Http-Logging, Web-Log-Libraries, Web-Request-Monitor, Web-Http-Tracing, Web-Basic-Auth, Web-Windows-Auth, Web-Client-Auth, Web-Filtering, Web-Stat-Compression, Web-Dyn-Compression, NET-WCF-HTTP-Activation45, Web-Asp-Net45, Web-Mgmt-Tools, Web-Scripting-Tools, Web-Mgmt-Compat, Server-Media-Foundation, BITS, Desktop-Experience, Telnet-Client -Source d:\sources\sxs
安裝完先決條件後,插入Skype for business server的映象進行安裝
接下來依次完成AD準備
安裝管理工具
然後開啟拓撲進行各種自定義,新建前端池,到後端資料庫這裡選擇後端SQL Server儲存為新建注意寫上偵聽器的FQDN以及其中一臺SQL Server,目的是通過拓撲讓SQL自動生成Skype所需的資料庫
然後定義檔案儲存等等(這裡著重講後端資料庫,會簡化整個Skype for Business Server的部署過程),最後點擊發布拓撲
釋出完拓撲後sqlsrv01上已經自動生成了skype所需的資料庫
由於alwayson的前提是需要對資料庫做一次完整備份,所以需要將所有資料庫進行一次完成備份然後才能去建立alwayson group
使用以下SQL Powershell進行備份
Invoke-Sqlcmd -Query "ALTER DATABASE [cpsdyn] SET RECOVERY FULL WITH NO_WAIT;" -ServerInstance "SQL01\SFBDB_BACK"
Invoke-Sqlcmd -Query "ALTER DATABASE [rgsconfig] SET RECOVERY FULL WITH NO_WAIT;" -ServerInstance "SQL01\SFBDB_BACK"
Invoke-Sqlcmd -Query "ALTER DATABASE [rgsdyn] SET RECOVERY FULL WITH NO_WAIT;" -ServerInstance "SQL01\SFBDB_BACK"
Invoke-Sqlcmd -Query "ALTER DATABASE [rtcab] SET RECOVERY FULL WITH NO_WAIT;" -ServerInstance "SQL01\SFBDB_BACK"
Invoke-Sqlcmd -Query "ALTER DATABASE [rtcshared] SET RECOVERY FULL WITH NO_WAIT;" -ServerInstance "SQL01\SFBDB_BACK"
Invoke-Sqlcmd -Query "ALTER DATABASE [rtcxds] SET RECOVERY FULL WITH NO_WAIT;" -ServerInstance "SQL01\SFBDB_BACK"
Invoke-Sqlcmd -Query "ALTER DATABASE [xds] SET RECOVERY FULL WITH NO_WAIT;" -ServerInstance "SQL01\SFBDB_BACK"
Invoke-Sqlcmd -Query "ALTER DATABASE [lis] SET RECOVERY FULL WITH NO_WAIT;" -ServerInstance "SQL01\SFBDB_BACK"
Backup-SqlDatabase -ServerInstance SQL01\SFBDB_BACK -Database xds
Backup-SqlDatabase -ServerInstance SQL01\SFBDB_BACK -Database lis
Backup-SqlDatabase -ServerInstance SQL01\SFBDB_BACK -Database cpsdyn
Backup-SqlDatabase -ServerInstance SQL01\SFBDB_BACK -Database rgsconfig
Backup-SqlDatabase -ServerInstance SQL01\SFBDB_BACK -Database rgsdyn
Backup-SqlDatabase -ServerInstance SQL01\SFBDB_BACK -Database rtcab
Backup-SqlDatabase -ServerInstance SQL01\SFBDB_BACK -Database rtcshared
Backup-SqlDatabase -ServerInstance SQL01\SFBDB_BACK -Database rtcxds
或者使用圖形化介面操作
同時也需要將資料庫的恢復模式更改為完整
最後還需要將目錄結構複製到第二個SQL伺服器:
robocopy C:\ CsData \\sqlsrv02\c$\CsData / e / xf *
然後開始建立alwayson group
定義組名稱
選擇資料庫
新增副本
接下來下一步進行建立
新增偵聽器
Sqlsrv02上也將資料庫進行同步
此時需要將alwayson進行故障轉移到sqlsrv02上
選擇新的主副本
完成故障轉移
接下來我們就要回到SFB Server上下載拓撲更改SQL FQDN為sqlsrv02
修改完成後進行拓撲釋出
然後使用以下命令更新資料庫
Install-CsDatabase -Update -ConfiguredDatabases -SqlServerFqdn sql.ucssi.cn -Verbose
最後再次將sql fqdn更改為偵聽器FQDN
最後再次釋出拓撲即可完成在skype for business server環境中整個alwayson的部署過程。
最後開始安裝skype for business server元件,過程就比較簡單了,依次進行本地配置儲存安裝,Skype for business server元件安裝,證書申請
後續步驟:略!略!略!