安裝 Windows Azure Pack 更新並確認版本

 

適用於: Windows Azure Pack

本主題說明如何更新 Windows Server 適用的 Windows Azure Pack,以及如何維護下列必要 System Center 元件的更新:

  • System Center 2012 R2 Virtual Machine Manager

  • Service Provider Foundation (屬於 System Center 2012 R2 Orchestrator 元件)

每項產品的更新會以更新 1、更新 2 等來指稱。 除了 Windows Azure 組件 會自動更新之外,所有更新都會以選用的 Windows Updates 來提供。 最新的更新為更新 4。 每個更新都會累積先前的更新,因此新安裝只需要最新的更新就可以了。

確認您環境中的每項產品皆已套用更新十分重要。

Windows Update 會自動更新組成 Windows Azure 組件 部署的所有驗證網站、入口網站、API 服務和擴充功能,而不需要使用者介入。 但請注意下列事項:

  • 由憑證授權單位取代的 SSL 憑證 (例如 Service Provider Foundation 所使用者) 會予以保留。 系統管理員若未以自己的憑證取代預設自動產生之自我簽署 SSL 憑證,原始的 SSL 憑證可能會由自動產生的新自我簽署 SSL 憑證取代。 因為節點之間必須使用相同的 SSL 憑證,所以產生的 SSL 憑證若是不同,可能會造成負載平衡叢集中的網站發生問題。

  • 服務所使用的 SQL 資料庫可能需要依照每個更新的知識庫文章所述手動進行更新。

下表包含知識庫文章的連結,可提供詳細資料及手動安裝指示。 如需判斷您的版本是否為最新,可以參考 [控制台] > [程式集] 中所示的 Windows Azure 組件 版本,(如下所示)

Windows Azure 組件 (知識庫文章的連結)

版本號碼

建置日期

安全性更新彙總套件 9.1

3.32.8196.12

3/2/2016

更新彙總套件 8.1

3.29.8196.0

11/16/2015

更新彙總套件 8

3.28.8196.48

10/28/2015

更新彙總套件 7.1

3.27.8196.3

8/25/2015

更新彙總套件 7

3.25.8196.75

7/31/2015

更新彙總套件 6

3.24.8196.35

4/28/2015

更新彙總套件 5

3.22.8196.48 

2/10/2015

更新彙總套件 4

3.19.8196.21

10/21/2014

更新彙總套件 3

3.15.8196.48

7/22/2014

更新彙總套件 2

3.14.8196.32

4/16/2014

更新彙總套件 1

3.12.8198.0

1/20/2014

RTM 版本

3.10.8198.9

9/16/2013

System_CAPS_important重要事項

請套用更新彙總套件 4 之後的 ASP.NET MVC 中的弱點修正程式,以確保妥善套用。

更新期間僅保留下列 web.config 元素:

  • 連接字串 (/configuration/connectionStrings)

  • 應用程式設定 (/configuration/appSettings)

  • 電腦金鑰 (/configuration/system.web/machineKey)

如果伺服器已安裝 Virtual Machine Manager,則會自動收到這些更新做為選用的更新,這些更新適用於伺服器和系統管理員主控台。 若要確認所有更新均已安裝,可前往 [控制台] > [系統及安全性] > [Windows Update] 中,按一下 [安裝自動更新]。

最新的更新會顯示為 Microsoft System Center Virtual Machine Manager 主控台的更新彙總套件 4Microsoft System Center Virtual Machine Manager 伺服器的更新彙總套件 4

您也必須更新 Virtual Machine Manager 中主機電腦上的 Virtual Machine Manager 代理程式。 如需相關指示,請參閱如何更新 VMM 代理程式 [VMM2012_Upgrade_R2]

另請確認 Service Provider Foundation 伺服器具有 Virtual Machine Manager (只需要主控台) 的最近更新。

如果您需要進行手動安裝,請參閱下列知識庫文章:

如果伺服器已安裝 Service Provider Foundation,則會自動收到這些更新做為選用的更新。 若要確認所有更新均已安裝,可前往 [控制台] > [系統及安全性] > [Windows Update] 中,按一下 [安裝自動更新]。

已安裝的 Service Provider Foundation 更新會列在 [控制台] 之已安裝的更新中。

如果您需要進行手動安裝,請參閱下列知識庫文章:

Service Provider Foundation 沒有更新彙總套件 3。

System_CAPS_note注意事項

在某些環境中,Service Provider Foundation 的更新彙總套件 2 會建立重複的 HTTPS 繫結。 在 [Internet Information Services (IIS) 管理員] 中選取 [SPF 網站],然後在 [動作] 窗格中按一下 [繫結], 以確認有無重複的 HTTPS 繫結。 如果有的話,請移除第二個重複的繫結。

您可以使用 Windows PowerShell 命令 Get-wmiobject,判斷您安裝之 Windows Azure 組件 的版本。 在每部安裝有 Windows Azure 組件 的電腦上執行下列命令,例如:

Get-WmiObject -Class Win32_Product | Where-Object { $_.Name -like "Windows Azure Pack *" } | Format-Table -AutoSize

若要判斷您 Windows Azure 組件 資料庫的版本,可在裝載 Windows Azure 組件 資料庫之 SQL Server 執行個體上的 SQL Server Management Studio 中,執行下列查詢:

-- WAP database versions
SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.Config' AS [Database],
N'Config' AS [Schema], *
FROM [Microsoft.MgmtSvc.Config].[Config].[Version]
UNION

SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.PortalConfigStore' AS [Database],
N'Config' AS [Schema],
[Version], [Major], [Minor], [Build], [Revision], [VersionInfo]
FROM [Microsoft.MgmtSvc.PortalConfigStore].[Config].[Version]
UNION
SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.PortalConfigStore' AS [Database],
N'PortalAspNet' AS [Schema],
N'' AS [Version], [CompatibleSchemaVersion] AS [Major], 0 AS [Minor], 0 AS [Build], 0 AS [Revision], N'' AS [VersionInfo]
FROM [Microsoft.MgmtSvc.PortalConfigStore].[dbo].[aspnet_SchemaVersions]
WHERE [Feature] = N'membership'
UNION

SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.Store' AS [Database],
N'Config' AS [Schema],
[Version], [Major], [Minor], [Build], [Revision], [VersionInfo]
FROM [Microsoft.MgmtSvc.Store].[Config].[Version]
UNION
SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.Store' AS [Database],
N'Management' AS [Schema],
[Version], [Major], [Minor], [Build], [Revision], [VersionInfo]
FROM [Microsoft.MgmtSvc.Store].[mp].[Version]
UNION

SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.Usage' AS [Database],
N'Usage' AS [Schema],
[Version], [Major], [Minor], [Build], [Revision], [VersionInfo]
FROM [Microsoft.MgmtSvc.Usage].[usage].[Version]
UNION

SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.WebAppGallery' AS [Database],
N'WebAppGallery' AS [Schema],
[Version], [Major], [Minor], [Build], [Revision], [VersionInfo]
FROM [Microsoft.MgmtSvc.WebAppGallery].[WebAppGallery].[Version]
UNION

SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.SQLServer' AS [Database],
N'SQLServer' AS [Schema],
[Version], [Major], [Minor], [Build], [Revision], [VersionInfo]
FROM [Microsoft.MgmtSvc.SQLServer].[SqlServer].[Version]
UNION

SELECT SERVERPROPERTY(N'ServerName') AS [Server],
N'Microsoft.MgmtSvc.MySQL' AS [Database],
N'MySQL' AS [Schema],
[Version], [Major], [Minor], [Build], [Revision], [VersionInfo]
FROM [Microsoft.MgmtSvc.MySQL].[MySql].[Version]

若 Windows Azure 組件 元件的版本與資料庫的版本不符,請執行下列其中一項作業:

  • Windows Azure 組件 元件版本低於資料庫版本:

    在大部分情況下,結構描述具有回溯相容性,但事件記錄檔中可能會顯示版本不相符的警告。 若這確為問題,您可以依照更新彙總套件知識庫文章所述,回復成先前的部署。

  • Windows Azure 組件 元件版本高於資料庫版本:

    以系統管理員身分在包含 Mgmtsvc-adminsite PowerShellAPI 模組的伺服器上執行下列指令碼。 這些伺服器包括使用量、 Web 應用程式庫、 SQL Server 及 MySQL 擴充功能。

    請注意,有些分散式安裝可能需要修改此指令碼。 特別是當使用量、Web 應用程式庫、SQL Server 與 MySQL 的結構描述與這些元件一起安裝時,指令碼中的這些部分必須在安裝有這些元件的電腦上執行。

    # Update-WapDatabases
    Import-Module -Name MgmtSvcConfig
    
    function New-SqlConnectionString([string]$masterConnectionString, [string]$database)
    {
        $builder = New-Object System.Data.SqlClient.SqlConnectionStringBuilder($masterConnectionString)
        $builder.Database = $database
        return $builder.ConnectionString
    }
    function Get-WapSchemas([string]$database)
    {
        switch ($database)
        {
            "Microsoft.MgmtSvc.Config"            { @("Config") }
            "Microsoft.MgmtSvc.MySQL"             { @("MySQL") }
            "Microsoft.MgmtSvc.PortalConfigStore" { @("Config","PortalAspNet","PortalNotification") }
            "Microsoft.MgmtSvc.SQLServer"         { @("SQLServer") }
            "Microsoft.MgmtSvc.Store"             { @("Config","Management") }
            "Microsoft.MgmtSvc.Usage"             { @("Usage") }
            "Microsoft.MgmtSvc.WebAppGallery"     { @("WebAppGallery") }
            default { throw New-Object System.ArgumentOutOfRangeException($database) }
        }
    }
    
    # Prompt for the SQL Server name: 
    $sName = Read-Host "Specify the name of the SQL Server that hosts the Windows Azure Pack databases."
    
    $wapMasterConnectionString = "Server=" + $sName + ";Database=master;Integrated Security=True"
    
    $wapDatabaseNames = (Get-MgmtSvcDefaultDatabaseName).DefaultDatabaseName
    foreach ($wapDatabaseName in $wapDatabaseNames)
    {
        $wapConnectionString = New-SqlConnectionString -masterConnectionString $wapMasterConnectionString -database $wapDatabaseName
        Write-Verbose -Message "Connection string: $wapConnectionString" -Verbose
    
        $wapSchemas = Get-WapSchemas -database $wapDatabaseName
        foreach ($wapSchema in $wapSchemas)
        {
            $wapSchema = Get-MgmtSvcSchema -Schema $wapSchema
            if ($wapSchema)
            {
                Write-Verbose -Message "BEGIN UPDATE database '$wapDatabaseName' schema '$wapSchema'." -Verbose
                Install-MgmtSvcDatabase -ConnectionString $wapConnectionString -Schema $wapSchema
                Write-Verbose -Message "END UPDATE database '$wapDatabaseName' schema '$wapSchema'." -Verbose
                $version = Test-MgmtSvcDatabase -ConnectionString $wapConnectionString -Schema $wapSchema
                Write-Output "Version: database '$wapDatabaseName' schema '$wapSchema' version $version"
            }
        }
    }
    
    
顯示: