Установка обновлений Windows Azure Pack и проверки версий
Область применения: Windows Azure Pack
В этом разделе описывается, как обновляется пакет Azure для Windows Server Windows и как поддерживать обновления для этих необходимых компонентов System Center:
System Center 2012 R2 Virtual Machine Manager
Service Provider Foundation (часть компонента orchestrator System Center 2012 R2)
Для каждого продукта эти обновления называются обновлением 1, обновлением 2 и т. д. Все обновления доставляются как необязательные Windows Актуальные данные за исключением Windows пакета Azure, который обновляется автоматически. Последнее обновление — это обновление 4. В каждом обновлении собраны предыдущие обновления, поэтому при каждой последующей установке требуется установить только самые новые.
Гарантия того, что каждый продукт в среде обновляется, очень важна.
Обновления Microsoft Azure Pack
Все сайты проверки подлинности, порталы, службы API и расширения, составляющие Windows развертывание пакета Azure, обновляются автоматически клиентский компонент Центра обновления Windows и не требуют вмешательства пользователя. Имейте в виду следующее:
SSL-сертификаты (например, те, что используются для Service Provider Foundation), которые были заменены сертификатами из центра сертификации, будут сохранены. Однако если администратор не заменяет автоматически созданные самозаверяющие SSL-сертификаты собственными, исходные SSL-сертификаты могут быть заменены новыми автоматически созданными самозаверяющими SSL-сертификатами. Наличие разных созданных SSL-сертификатов может быть проблемой для веб-сайтов в кластерах с балансировкой нагрузки, поскольку SSL-сертификаты, используемые на разных узлах, должны совпадать.
Базы данных SQL, используемые службами, могут потребовать обновления вручную, как описано в статьях базы знаний для каждого обновления.
Следующая таблица содержит ссылки на статьи базы знаний, подробные сведения и инструкции по ручной установке. Чтобы определить, есть ли у вас последнее обновление, версия для Windows Azure Pack в панель управления-programs> отображается следующим образом:
Важно!
Примените исправление для уязвимости в ASP.NET MVC после накопительного пакета обновления 4 для гарантии его наличия.
Во время обновления сохраняются только следующие элементы файла web.config:
- строки подключения (/configuration/connectionStrings);
- настройки приложения (/configuration/appSettings);
- ключ компьютера (/configuration/system.web/machineKey).
Обновления Virtual Machine Manager и System Center
Эти обновления получаются автоматически как необязательные обновления для серверов, на которых установлены диспетчер виртуальных машин, как для сервера, так и для консоли администрирования. Чтобы убедиться, что обновления установлены, в панель управления-System>и Security-клиентский компонент Центра обновления Windows> нажмите кнопку "Установить автоматические обновления".
Последнее обновление отображается как Накопительный пакет обновления 4 для консоли Microsoft System Center Virtual Machine Manager или Накопительный пакет обновления 4 для сервера Microsoft System Center Virtual Machine Manager.
Кроме того, необходимо обновить агенты диспетчер виртуальных машин на компьютерах, на которых размещены диспетчер виртуальных машин. Инструкции см. в разделе "Обновление агента VMM [VMM2012_Upgrade_R2].
Также убедитесь, что на сервере Service Provider Foundation установлено последнее обновление для диспетчер виртуальных машин (требуется только консоль).
Если требуется выполнить установку вручную, см. следующие статьи базы знаний:
Накопительный пакет обновления 1 для System Center 2012 R2 Virtual Machine Manager
Накопительный пакет обновления 2 для System Center 2012 R2 Virtual Machine Manager
Накопительный пакет обновления 3 для System Center 2012 R2 Virtual Machine Manager
Накопительный пакет обновления 4 для System Center 2012 R2 Virtual Machine Manager
Накопительный пакет обновления 8 для System Center 2012 с пакетом обновления 1 (SP1)
Обновления Service Provider Foundation
Эти обновления получаются автоматически как необязательные обновления для серверов, на которых установлен Service Provider Foundation. Чтобы убедиться, что обновления установлены, в панель управления-System>и Security-клиентский компонент Центра обновления Windows> нажмите кнопку "Установить автоматические обновления".
Установленные обновления для Service Provider Foundation перечислены в установленных обновлениях в панель управления.
Если требуется выполнить установку вручную, см. следующие статьи базы знаний:
Накопительный пакет обновления 1 для System Center 2012 R2 Service Provider Foundation
Накопительный пакет обновления 2 для System Center 2012 R2 Service Provider Foundation
Накопительный пакет обновления 4 для System Center 2012 R2 Service Provider Foundation
Для Service Provider Foundation не существует накопительного пакета обновления 3.
Примечание
В некоторых средах накопительный пакет обновления 2 для Service Provider Foundation создает повторяющиеся привязки HTTPS. В диспетчере IISвыберите элемент Веб-сайт SPFи на панели "Действия" щелкните элемент "Привязки", чтобы увидеть, дублируется ли привязка HTTPS. Если она дублируется, удалите вторую привязку.
Проверка версий
Вы можете определить версии Windows установок Пакета Azure с помощью команды Get-WmiObject Windows PowerShell. Выполните следующую команду на каждом компьютере, на котором установлен Windows Пакет Azure, например:
Get-WmiObject -Class Win32_Product | Where-Object { $_.Name -like "Windows Azure Pack *" } | Format-Table -AutoSize
Чтобы определить версии баз данных Windows Azure Pack, выполните следующий запрос в SQL Server Management Studio экземпляре SQL Server, на котором размещены базы данных Windows Azure Pack:
-- 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 Pack меньше версии базы данных:
В большинстве случаев схемы обладают обратной совместимостью, но в журнал может быть добавлено предупреждение о несоответствии версий. Если это создает проблему, можно выполнить откат до предыдущего развертывания, как описано в статьях базы знаний для накопительного пакета обновления.
Windows версия компонента Azure Pack превышает версию базы данных:
Запустите следующий скрипт с правами администратора на серверах, которые содержат модуль MgmtSvc PowerShellAPI . Эти серверы включают использование, коллекцию веб-приложений, SQL Server и расширения MySQL.
Обратите внимание, что этот скрипт может потребовать изменения для некоторых распределенных установок. В частности схемы для использования, WebAppGallery, SQLServer и 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" } } }