Сбои высокой доступности посредника подключений RDS (Connection Broker HA)
Симптомы сбоев высокой доступности RD Connection Broker
Пользователи не могут подключиться к ферме RDS, получая сообщение: «Посредник подключений к удаленному рабочему столу недоступен». В журнале TerminalServices-SessionBroker/Admin регистрируются ошибки: Event ID 802: RD Connection Broker failed to connect to the database или Event ID 801: Database initialization failed.
| Симптом | Локация | Причина |
|---|---|---|
| Event ID 802 / 801 | RD Session Broker Log | Служба брокера не может подключиться к базе данных SQL Server (SQL HA DB) |
| Балансировщик сессий не распределяет нагрузку | RD Connection Broker | Рассинхронизация записей DNS Round Robin или отказ одной из нод брокера |
| Ошибка аутентификации SQL | SQL Server ErrorLog | Учетная запись компьютера брокера (BROKER$) не имеет прав db_owner на БД RDS |
Пошаговое восстановление высокой доступности брокера RDS
- Проверьте сетевую доступность и порт SQL Server с нод брокера:
Test-NetConnection -ComputerName "sql-cluster.company.local" -Port 1433 - Проверьте права учетных записей брокеров в базе данных SQL Server: учетные записи компьютеров всех серверов брокеров (
Broker01$,Broker02$) должны иметь ролиdb_ownerна базу данных RDS в SQL Server Management Studio. - Проверьте корректность строки подключения High Availability:
Get-RDConnectionBrokerHighAvailability - Обновите DNS-записи для имени пула брокеров (DNS Round Robin): убедитесь, что для DNS-имени фермы (например,
rds-broker.company.local) созданы А-записи, указывающие на IP-адреса всех серверов брокеров с одинаковым TTL (5 минут).
Совет: Если SQL Server переехал на новый адрес или инстанс, обновите строку подключения командлетом Set-RDConnectionBrokerHighAvailability -DatabaseConnectionString "...".
Частые вопросы (FAQ)
Какая база данных поддерживается для RD Connection Broker HA?
Поддерживается Microsoft SQL Server (включая SQL Server Always On Availability Groups, отказоустойчивые кластеры FCI и Azure SQL Database).
Почему нельзя использовать SQL Server Express для полноценного Broker HA?
SQL Server Express не поддерживает сетевой протокол без локальной настройки и не обеспечивает отказоустойчивость при отказе экземпляра БД.
Что делать, если база данных брокера перешла в состояние Recovery Pending?
Восстановите целостность базы данных средствами SQL Server Management Studio (DBCC CHECKDB) или переключитесь на реплику Always On.
Как добавить второй сервер RD Connection Broker в активный кластер?
В консоли Server Manager перейдите в свойства развертывания RDS и нажмите кнопку 'Добавить сервер посредника подключений'.