
У меня есть ферма RDS Windows Server 2016, которая содержит 16 серверов. Все эти серверы настроены на высокую доступность и используют одну и ту же базу данных на кластере SQL.
Если эта база данных будет утеряна по какой-то причине - как мне восстановить базу данных с нуля? Меня не волнует воссоздание всех коллекций и удаленных приложений.
Я пытался удалить все роли RDS, включая роль Connection Broker. Но затем - если я пытаюсь установить роли снова - у меня нет возможности создать новую базу данных. Он пытается подключиться к старой базе данных, которая была до удаления. Похоже, он хранит настройки базы данных где-то в реестре.
Я попробовал использовать Set-RDConnectionBrokerHighAvailability
команду. Результат такой: The RD Connection Broker server is configured for high availability.
Так что он говорит, что Высокая доступность уже настроена на брокере подключений (хотя я переустановил все роли RDS)
Я попробовал использовать Set-RDDatabaseConnectionString -DatabaseConnectionString "DRIVER={ODBC Driver 13 for SQL Server};SERVER=tcp:SQL_cluster.company.local,1433;DATABASE=RDBANK2;APP=Remote Desktop Services Connection Broker;Trusted_Connection=Yes;"
команду. Результат:
Update-DBConnStringWithDatabaseAccess : Exception calling "GetConnectionString" : ""
At
C:\Windows\system32\WindowsPowerShell\v1.0\Modules\RemoteDesktop\Deployment.psm1:1876
char:19
+ ... $result = Update-DBConnStringWithDatabaseAccess -ConnectionBroker $ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId :
Microsoft.PowerShell.Commands.WriteErrorException,Update-
DBConnStringWithDatabaseAccess
Get-WmiObject : Cannot validate argument on parameter 'ComputerName'. The argument is
null or empty. Provide an argument that is not null or empty, and then try the
command again.
At C:\Windows\system32\WindowsPowerShell\v1.0\Modules\RemoteDesktop\Utility.psm1:1977
char:117
+ ... Properties -Namespace root\cimv2 -ComputerName $broker.Server -Authen ...
+ ~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Get-WmiObject],
ParameterBindingValidationException
+ FullyQualifiedErrorId :
ParameterArgumentValidationError,Microsoft.PowerShell.Commands.GetWmiObjectCommand
Если я сначала перенесу базу данных RDS High Availability на другой SQL-сервер, а затем использую Set-RDDatabaseConnectionString
команду, указывающую на перемещенную базу данных, то команда выполняется успешно.
Как мне восстановить базу данных RDS High Availability, если она утеряна? Возможно ли полностью сбросить конфигурацию RDS Connection Broker, а затем создать ее заново? Переустановка всех 16 серверов с нуля была бы кошмаром.