Windows Server
 Computer >> コンピューター >  >> システム >> Windows Server

WindowsServerでのRDS接続ブローカーの高可用性の設定

リモートデスクトップ接続ブローカー(RDCB) は、Windows Serverのリモートデスクトップサービス(RDS)の役割のコンポーネントです。 RD接続ブローカーを使用すると、RDSファームサーバーの負荷を分散し(RDSファームに接続すると、ユーザーは最も負荷の少ないRDSホストにリダイレクトされます)、VDIおよびRemoteAppsへのユーザーアクセスを提供し、ファーム内のRDSホスト構成を管理します。また、RDCBを使用すると、ユーザーは自分のセッションに再接続できます。RDSに接続するとき、RDCBは、ファームの他のサーバーに不完全なセッションがあるかどうかを確認し、前のセッションにリダイレクトします。

この記事では、フォールトトレラントな高可用性RD接続ブローカーインスタンスを構成する方法を示します。 RDCBロールを持つサーバーの1つに障害が発生した場合に備えて、その機能を維持します。 MS SQL Server 2019を実行しているデータベースサーバーは、リモートデスクトップ接続ブローカーのデータを格納するために使用されます。単一障害点を回避するには、RDCBSQLデータベースもフォールトトレラント構成で展開する必要があります。この例では、SQLAlwaysOn可用性グループが構成された2つのSQLServerノードを使用します。

RD接続ブローカーの高可用性要件とサポートされる構成:

  • WindowsServer2022/2019を実行しているRD接続ブローカーの役割を持つ少なくとも2台のサーバー;
  • RDCB SQLデータベースに高可用性を使用する場合は、SQL Server 2014以降(StandardまたはEnterpriseエディション)で少なくとも2つのホストが必要です。この例では、スタンドアロンのMS SQL Server2019Enterpriseインスタンスを各サーバーにインストールしました。 HA SQLデータベースを使用しない場合は、SQLExpressを備えた1台のサーバーで十分です。
  • RDConnectionBrokerの役割を持つサーバーにSQLServerNativeClientをインストールします。
  • SQLデータベースとSQLインストールフォルダの完全な制御をRDConnectionBrokerサーバーに付与します。
  • ファーム内でリモートデスクトップセッションホストの役割を持つ少なくとも1台のサーバー。

2台のサーバーの高可用性RDCB構成を作成します。どちらにもRD接続の役割とSQLServerがインストールされます。 SQL Serverデータベースの高可用性と障害復旧は、SQLServerのAlwaysOnAvailabilityグループによって提供されます。

WindowsServerでのRDS接続ブローカーの高可用性の設定

Windows Server 2012以降では、RDS接続ブローカーはアクティブ/アクティブモードで高可用性を提供します。このモードでは、すべてのRDCBサーバーがアクティブであり、着信接続を処理できます。これにより、大規模なリモートデスクトップ環境で高いRDCBの可用性とスケーラビリティを提供できます。 リモートデスクトップ接続ブローカーのインフラストラクチャの準備

RD接続ブローカーの役割を持つすべてのサーバーに静的IPアドレスを割り当て、それらをActiveDirectoryドメインに参加させます。

  • srv-rds1.woshub.com192.168.13.20
  • srv-rds2.woshub.com192.168.13.21

Active Directoryに新しいセキュリティグループを作成します(MUN_RD_Connection_Brokers )そしてそれにすべてのRDCBサーバーを追加します。 ADUCスナップイン(dsa.msc)を使用してグループを作成できます )またはPowerShellを使用して:

New-ADGroup "MUN_RD_Connection_Brokers" -path 'OU=Groups,OU=Berlin,DC=woshub,DC=com' -GroupScope Global -PassThru –Verbose

グループに2つのRDSホストを追加します:

Add-AdGroupMember -Identity "MUN_RD_Connection_Brokers" -Members srv-rds1$,srv-rds2$

WindowsServerでのRDS接続ブローカーの高可用性の設定

DNSにRDSファーム(この例ではMUNRDCB)のクラスター名のAレコードを作成します。 DNSレコードには、すべてのRDCBサーバーのIPアドレスが含まれている必要があります。これにより、RD接続ブローカーサーバー間の負荷分散(ラウンドロビン)が可能になります。次のエントリを作成しました:

  • A — MUNRDCB.woshub.com 192.168.13.20 (最初のRDCBサーバーのIPアドレス— srv-rds1.woshub.com)
  • A — MUNRDCB.woshub.com 192.168.13.21 (2番目のRDCBサーバーのIPアドレス— srv-rds2.woshub.com)

PowerShellを使用してDNSにAレコードを作成できます:

Add-DnsServerResourceRecordA -Name MUNRDCB -IPv4Address 192.168.13.20 -ZoneName woshub.com
Add-DnsServerResourceRecordA -Name MUNRDCB -IPv4Address 192.168.13.21 -ZoneName woshub.com

WindowsServerでのRDS接続ブローカーの高可用性の設定

SQLServerネイティブクライアントをインストールします RDCBの役割を持つすべてのサーバー。 SQLServerバージョンのSQLServerネイティブクライアントをMicrosoftWebサイトからダウンロードするか、SQL Serverインストールイメージ(D:\1033_ENU_LP\x64\Setup\x64\sqlncli.msi)からコピーできます。 。

WindowsServerでのRDS接続ブローカーの高可用性の設定

次に、 SQL Server Management Studioを実行します そして、共有接続ブローカーデータベースが作成される最初のSQLサーバーに接続します(後で、Always On高可用性グループに移動します)。

セキュリティを開く ->ログイン 新しいログインを追加します。 [検索]をクリックし、場所でドメインを選択します 、オブジェクトタイプを設定します =グループ、およびドメイングループ MUN_RD_Connection_Brokersを検索します 。

WindowsServerでのRDS接続ブローカーの高可用性の設定

dbcreatorを割り当てます およびsysadmin グループへの役割。

WindowsServerでのRDS接続ブローカーの高可用性の設定

Windows DefenderFirewallでSQLServerポートを開きます(デフォルトでは、TCP1433ポートを使用してSQLServerに接続します)。

Windowsサーバーにリモートデスクトップサービスの役割をインストールする

次に、サーバーにRDSの役割をインストールする必要があります。サーバーマネージャーコンソールを開き、[管理]->[役割と機能の追加]->リモートデスクトップサービスのインストールを選択します。 。

WindowsServerでのRDS接続ブローカーの高可用性の設定

この記事では、スタンドアロンホストへのRDSロールのインストールについて説明します。

標準導入を選択します ->セッションベースのデスクトップ展開

WindowsServerでのRDS接続ブローカーの高可用性の設定

RD接続ブローカーの役割をインストールするサーバーを1つ選択します。今すぐ2番目のサーバーにRDCBの役割をインストールする必要はありません。

WindowsServerでのRDS接続ブローカーの高可用性の設定

同じサーバーにRDWebアクセスの役割をインストールします。両方のサーバーにRDセッションホストの役割をインストールします。

WindowsServerでのRDS接続ブローカーの高可用性の設定

RDSロールのインストールが完了するのを待ちます。 WindowsServerでのRDS接続ブローカーの高可用性の設定

ロールのインストールが完了したら、RDCBホストと「NTAUTHORITY\NETWORKSERVICE」アカウントをローカルのRDS管理サーバーに追加します。 両方のサーバーでグループ化します。

WindowsServerでのRDS接続ブローカーの高可用性の設定

ファーム内の最初のサーバーにRD接続ブローカーの役割をインストールする際に、ローカルSQLデータベースがC:\Windows\rdcbDb\rdcms.mdfに作成されます。 RD接続ブローカーサーバーのローカルドライブ上。

WindowsServerでのRDS接続ブローカーの高可用性の設定

このデータベースは、ファームとターミナルのユーザーセッションに関する情報を保持します。ローカルコンピュータ上にあるため、他のRDCBサーバーは使用できません。 RDCB HAを提供するには、他のサーバーがアクセスできる専用のSQLサーバーに移動する必要があります。

RD接続ブローカーの高可用性の導入

RD接続ブローカーの役割を持つ2番目のホストをファームに追加する前に、ローカルRDCBデータベースを外部SQLServerに移行する必要があります。

ConnectionBrokerデータベースをローカルデータベースから専用のSQLServerに移動するには、サーバーマネージャー->リモートデスクトップサービス->概要を開きます。 。リモートデスクトップ接続ブローカーのフェイルオーバー構成ウィザードを実行するには、RD接続ブローカーの役割のイメージをクリックし、高可用性の構成を選択します。 。

WindowsServerでのRDS接続ブローカーの高可用性の設定

次に、専用データベースサーバーを選択します 。 SQLServer接続設定を指定してローカルRDCBデータベースを移動します。

2つのフィールドに入力します:

  • DNS RD接続ブローカークラスターの名前 :ラウンドロビンDNSレコードを作成したRDCBファームのFQDN名(この例では、MUNRDCB.woshub.com )。これは、RDPクライアントがRD接続ブローカーサーバーに接続するときに使用するアドレスです。
  • データベース接続文字列 –SQLServerデータベースへの接続文字列を指定します。文字列の形式は次のとおりです。DRIVER=SQL Server Native Client 11.0;SERVER=<SQL Server Name>;Trusted_Connection=Yes;APP=Remote Desktop Services Connection Broker;DATABASE=<DB Name> この例では、SQL Server名はデータベースを作成するSQLサーバーの名前であり、DB名は新しいデータベースの名前です:DRIVER=SQL Server Native Client 11.0;SERVER=srv-rds2.woshub.com;Trusted_Connection=Yes;APP=Remote Desktop Services Connection Broker;DATABASE=RDCB_DB

WindowsServerでのRDS接続ブローカーの高可用性の設定

RD接続ブローカーのHA構成を有効にすると、RDSファーム構成全体を廃止せずに内部RDCBデータベースに戻すことはできなくなります。

構成をクリックします 次のステップで。

次に、SQL ManagementStudioを使用してSQLServerインスタンスに接続し、新しいデータベースが RDCB_DBであることを確認します。 作成されました。

WindowsServerでのRDS接続ブローカーの高可用性の設定

両方のRD接続ブローカーサーバーにデータベースへの書き込み権限を付与します。 [データベース]->[RDCB_DB]->[セキュリティ]->[ユーザー]->[新しいユーザー]を開きます。

2人の新しいユーザーを作成します:BUILTIN\RDS Management Servers およびwoshub\MUN_RD_Connection_Brokers 。両方のdb_ownerを付与します およびpublic 特権。

WindowsServerでのRDS接続ブローカーの高可用性の設定

最初のサーバーに障害が発生した場合に高可用性を提供するには、現在の構成に2番目のRD接続ブローカーサーバーを追加します。

RD接続ブローカーアイコンをクリックし、RD接続ブローカーサーバーの追加を選択します。 。

WindowsServerでのRDS接続ブローカーの高可用性の設定

接続ブローカーの役割をインストールする2番目のサーバーの名前を入力し、[次へ]をクリックします。次に、RDCBロールを持つ2台のサーバーがRDSファームホストのリストに表示されます。 RD接続ブローカー(高可用性モード)も表示されます。 メッセージ。

これで、リモートデスクトップ接続ブローカーの高可用性構成が完了しました。

WindowsServerでのRDS接続ブローカーの高可用性の設定

RD ConnectionBrokerHAのSQLServerフェールオーバー構成の構成

次に、SQLデータベースのフェイルオーバー構成をセットアップします。その間、それは1台のサーバーでのみ実行されています。 RD接続ブローカーデータベースをSQLクラスターに配置します。これは、従来のMicrosoftフェールオーバークラスターまたはSQLServerのAlwaysOn高可用性グループのいずれかです。

この記事では、SQLServer2019の基本的なAlwaysOn構成について説明します。ここでは主な手順のみを示します:

  1. フェイルオーバークラスタリングをインストールします 任意のファイルサーバー上で監視とクォーラムを使用して、2つのRDCBホストのSQL-RDSクラスターを役割および構築します(上記のAlways Onに関する記事で説明されています)。
  2. オプションを有効にする常にオンの可用性グループを有効にする SQLServer構成マネージャーで 両方のサーバーの設定; WindowsServerでのRDS接続ブローカーの高可用性の設定
  3. 新しい可用性グループウィザードを実行します;
  4. 可用性グループの名前を入力します( SQL-RDS );
  5. 高可用性グループ( RDCB_DB )に配置するデータベースを選択します ); WindowsServerでのRDS接続ブローカーの高可用性の設定
  6. 2番目のSQLサーバーを高可用性グループに追加し、自動フェイルオーバーを確認します オプション; WindowsServerでのRDS接続ブローカーの高可用性の設定
  7. リスナーについて タブで、クライアントがデータベースへの接続に使用する名前とIPアドレスをAlways Onグループに入力します( SQL-RDSDB-liste ); WindowsServerでのRDS接続ブローカーの高可用性の設定
  8. フェールオーバークラスターマネージャーを開きます スナップイン(FailoverClusters.SnapInHelper.msc )そして、新しいリソースが役割のリストに表示されていることを確認します。 WindowsServerでのRDS接続ブローカーの高可用性の設定

次に、ConnectionBroker設定でRDCBデータベースを使用してSQLサーバーの接続文字列を変更します。 RDCB接続文字列は、PowerShellを介してのみ変更できます:

Set-RDDatabaseConnectionString [-DatabaseConnectionString] <String> [[-ConnectionBroker] <String>] [ <CommonParameters>]

私の例では、RDCBファームをSQLデータベースの高可用性グループに切り替えるコマンドは次のようになります。

Set-RDDatabaseConnectionString -ConnectionBroker srv-rds1.woshub.com -DatabaseConnectionString "DRIVER=SQL Server Native Client 11.0;SERVER=SQL-RDSDB-liste;Trusted_Connection=Yes;APP=Remote Desktop Services Connection Broker;DATABASE=RDCB_DB"

WindowsServerでのRDS接続ブローカーの高可用性の設定

コマンドがエラーを返さない場合は、すべて問題ありません。これで、RDS接続ブローカークラスターがSQLAlwaysOn可用性グループを使用するように構成されました。

RDSファーム設定を開き、HAに新しい接続文字列が使用されていることを確認します([タスク]-> [展開プロパティの編集])。

WindowsServerでのRDS接続ブローカーの高可用性の設定

そのため、WindowsServer2022/2019で高可用性RDS接続ブローカーサービスを作成しました。 RDSファーム内のホストの1つをシャットダウンすることで、RDCBの高可用性をテストできます。

次に、RDSファームの構成を続行し、RDSライセンスサーバーを展開し、RDSHサーバーを追加し、RDSコレクションを設定し、RemoteAppを公開し、RDS用のHTML5Webクライアントを有効にします。


  1. SSMSを介してSQLServerに接続する方法

    みなさん、こんにちは。前回の記事では、Microsoft SQL Serverをインストールしました。SSMS(SQL Server Management Studio)は、SQLServerの操作をサポートするインターフェイスツールです。 また、前の投稿の内容を継続するために、この次の記事では、SSMSを介したSQLServerへの接続に参加します。では、今すぐ始めましょう! #first。 SQL ServerManagementStudioを起動します +ステップ1:最初にSSMSを開きます。開くには、さまざまな方法があります。タスクバーで検索するか、デスクトップでショートカットを作

  2. SQLServerデータベースをAWSRDSインスタンスに移行します

    このブログでは、オンプレミス(またはAmazon®EC2またはAzure®)でホストされているMicrosoft®SQLServer®データベースをAmazon Relational DatabaseService(RDS)に移動する方法について説明します。この移動には、SQLデータベースをAWS S3bucketにバックアップし、そのS3バケットからAWSRDSインスタンスのデータベースを復元する必要があります。 はじめに 以前のバージョンのAmazonRDSインスタンスでは、 .bakからデータを復元できませんでした ファイル。その結果、ユーザーはAmazon Data Migratio