SharePoint Server のオフライン評価の概要 - Unified

SharePoint アセスメントにより、次の SharePoint 環境で潜在的な問題がないかを診断する SharePoint Server ファーム の評価が提供されます。

  • オンプレミスでホスティングされた SharePoint
  • サービスとしてのインフラストラクチャ (IaaS) Azure でホストされた SharePoint

サービスでは、単一の SharePoint 2013、SharePoint 2016、または最大 30 サーバー (SQL Server を含む)、および Windows Server 2012 R2 以降で実行されている最大 50,000 の Web から成る SharePoint 2019 ファームがサポートされます。

この推奨事項は、SharePoint を構成する主なコンポーネント (SharePoint 構成の設定、たとえば SQL や IIS への依存関係など) に関する変更管理、監視、災害復旧、サービス レベル アグリーメント(SLA)、構成項目、適正動作といった領域が対象になります。

この評価は、ご使用の SharePoint Server ファームや組織へのリスクを低減するために、「フォーカス エリア」に分類された具体的で実施可能なガイダンスを提供することを目的としています。

SharePoint Assessment のフォーカス ポイント

SharePoint Assessment は、次のような主な柱を中心に構成されています。

  • SharePoint Configuration
  • SharePoint Topology
  • SharePoint Health Analyzer
  • SharePoint Data Integrity
  • イベント ログ分析
  • オペレーショナル エクセレンス

SharePoint Server のオフライン評価の準備

SharePoint 環境内の各サーバーに接続するには、「ツール マシン」が必要です。 ツール マシンは、リモート プロシージャ コール (RPC)、サーバー メッセージ ブロック (SMB)、ライトウェイト ディレクトリ アクセス プロトコル (LDAP) および分散コンポーネント オブジェクト モデル (DCOM) を介して通信することで情報を取得します。 データが収集され、運用インタビューが完了すると、オフライン評価ツールがローカルでデータを分析します。

正常にデータを収集するには、次の前提条件が必要です。

前提条件

1. ハードウェアとソフトウェア

サーバー クラスまたはハイエンド ワークステーション コンピュータには、次が使用されます。

  • 最小 2GHz シングル プロセッサ — 推奨されるデュアル コア/マルチ コア 2GHz 以上のプロセッサ。

  • 最小 4 GB RAM—推奨される 12 GB RAM。

  • 最小 5 GB の空きディスク領域。

  • ハイエンド ワークステーション: Windows 11、Windows 10 Server: Windows Server 2022、Windows Server 2019、Windows Server 2016

  • オペレーティング システムは 32 ビットと 64 ビットのどちらも使用できます。

  • 1024x768 以上の画面解像度 (高い方が優先される)

  • レポート作成用の Microsoft 365 Apps for enterprise (Word、Excel、および PowerPoint)。

  • 分析されている SharePoint ファームと同じドメインのメンバーである必要があります。

  • Microsoft® .NET Framework 4.8 — https://dotnet.microsoft.com/en-us/download/dotnet-framework/net48

    注: SharePoint Server にインストールされている .NET のバージョンが 4.8 より高い場合、ツール マシンにインストールされているバージョンは、ターゲットの SharePoint Server にインストールされているバージョンと同じかそれ以上である必要があります。

  • Windows PowerShell 4.0 以降

    • PowerShell 4.0 は、Windows Management Framework 4.0 の一部です
    • Windows PowerShell のシステム要件
    • PowerShell の実行ポリシーは、ツール マシンとすべてのサーバー (SharePoint と SQL) の両方で RemoteSigned に設定されている必要があります。
    • 実行ポリシーの設定は、PowerShell コマンド ウィンドウの「Get-ExecutionPolicy –list」を使用して検証できます。
  • ネットワーク接続された「ドキュメント」またはリダイレクトされた「ドキュメント」フォルダーはサポートされません。 データ収集用のマシンではローカルに「ドキュメント」フォルダーが必須です。

  • IIS 管理ツール (IIS 7 管理コンポーネント)

  • リモート管理 (RPC) に対するファイアウォール例外 – 動的ポート範囲

2. アカウントの権限

次を含むドメイン アカウント:

  • SharePoint 環境内のすべてのサーバー (SharePoint サーバーと SQL サーバー) のローカル管理者グループのメンバー
  • すべてのサービス アプリケーションに対するフル コントロール
  • SharePoint データベースをホストする SQL インスタンスの "SysAdmin" グループのメンバー
  • ツール マシンからすべてのサーバー (SharePoint サーバーと SQL サーバー) への制限のないネットワーク アクセス
  • SharePoint ファーム管理者グループのメンバー

オフライン評価クライアントを実行しているコンピューターで PowerShell スクリプトを実行する機能。 Windows PowerShell 実行ポリシーは、RemoteSigned またはローカル スクリプトを実行する同等の機能を提供するポリシーに設定する必要があります。 詳細については、「about_Execution_Policies」を参照してください。

警告

検出プロセスとコレクターが失敗する可能性があるため、「別のユーザーとして実行」機能を使用して評価ソフトウェアを起動しないでください。 オフライン評価ツールを起動するアカウントは、ローカル マシンにログオンする必要があります。

3. 評価ソフトウェアをダウンロードする

評価用のソフトウェア (オフライン評価ツール) は、Services Hub からダウンロードできます。 Services Hub へのアクセスについては、サービス管理者、CSAM、またはサポート アカウント コーディネーターと協力してください。

注:

これはオフライン評価であるため、Azure サブスクリプションと Log Analytics ワークスペースは必要ありません。

4. ネットワークとリモート アクセス

完全なデータ収集を確実に行うために、評価中は、ツール マシンからすべてのサーバー (SharePoint と SQL) への無制限のネットワーク アクセスを一時的に許可することをお勧めします。 これは、サーバーのいずれかのトラフィックを制限している可能性のあるファイアウォールおよびルーター ACL を経由してアクセスするということです。 これには、次のリモート アクセスが含まれます。

  • DCOM
  • リモート レジストリ サービス
  • Windows Management Instrumentation (WMI) サービス
  • 既定の管理用共有 (C$、D$、IPC$)。

無制限のネットワーク アクセスによってセキュリティ上の懸念が生じる可能性があることを理解しています。これらの要件は、環境ごとに異なる構成が行われているため必要です (たとえば、特定のプロトコルに対してポート範囲が変更されている可能性があります)。 以下の手順に従って、環境の特定のポートとプロトコルのファイアウォールの無効化を試みることができます。

注:

以下の手順を使用する場合、Microsoft はサポートやアシスタンスを提供しません。

ポートとプロトコルのアクセス要件:

ツール マシンに以下を搭載していることを確認します。

  • すべてのサーバー (SharePoint と SQL) への RPC アクセスを含む、完全な TCP/UDP アクセス
  • ポート 135 および 139 または 445 経由のアクセス。
  • Windows リモート管理 (WinRM) では、HTTP 用のポート 5985 が使用されます。 PowerShell コマンドをリモートで実行するため、ツール マシンから、データ収集の対象となる SharePoint サーバー (対象サーバーはセクション 6 を参照) への 5985 番ポートの通信を有効にしておく必要があります。
  • SQL インスタンス用に構成されたポート。

リモート イベント ログ管理が有効になるようにサーバーのファイアウォールを設定します。

オフライン評価ツールは、リモート イベント ログ管理が有効になっていない場合、Windows Server からイベント ログ情報を収集することができない可能性があります。 リモート管理が有効な場合、すべてのサーバー (SharePoint と SQL) で次のサービスを開始する必要があります。

  • WMI
  • リモート レジストリ サービス
  • サーバー サービス
  • ワークステーション サービス
  • ファイルとプリンターの共有サービス
  • 自動更新サービス

Windows ファイアウォール。

接続テスト

次のテストを実施すると、SharePoint ファーム (SharePoint と SQL) 内のすべてのサーバーに接続できるかどうかを確認できます。

  • イベント ログ: eventvwr.msc を使用して、すべてのサーバー上のイベント ビューアーに接続できるかどうかを確認します。 リモート接続が失敗した場合は、Windows 組み込みファイアウォールを有効にして "リモート イベント ログ管理" を許可する必要があります。
  • レジストリ: regedit.exe を使用して、すべてのサーバーへのリモート レジストリ接続をテストします ([ファイル]、>[ネットワーク レジストリへの接続] の順に選択)。
  • ファイル: すべてのサーバーの C$ と Admin$ 共有に接続して、ファイル アクセスを確認します。

4. Windows Server 2016 以降の追加要件:

A. コマンド プロンプトから IPConfig.exe を使用して、現在の IP アドレスを識別するために選択したデータ収集用のマシンにログインします。 出力例は次のとおりです。

C:\>ipconfig
Windows IP Configuration
Ethernet adapter Ethernet:
Connection-specific DNS Suffix  . :
Link-local IPv6 Address . . . . . : fe80::X:X:X:X%13
IPv4 Address. . . . . . . . . . . : X.X.X.X
Subnet Mask . . . . . . . . . . . : X.X.X.X
Default Gateway . . . . . . . . . : X.X.X.X
  • マシンの IPv4 アドレスをメモします。 構成の最後の手順では、このアドレスを使用して、データ収集用のマシンのみが確実に SharePoint Server ファーム上の Windows Update エージェントと通信できるようにします。

B. グループ ポリシー オブジェクトを作成して構成し、サーバーのドメイン内の SharePoint Server OU にリンクさせます。

グループ ポリシー オブジェクト

新しい GPO を作成する

GPO が SharePoint Server の組織単位に適用されることを確認します。

注: スコープ外の他のサーバーが OU 内に存在する場合は、セキュリティ グループのフィルター処理を使用して、グループ ポリシーの適用を SharePoint Server のみに制限できます。

  • GPO 内で開く: コンピューターの構成\ポリシー\Windows の設定\セキュリティの設定\セキュリティが強化された Windows ファイアウォール\セキュリティが強化された Windows ファイアウォールの順に移動します。
  • [受信の規則] を右クリックし、[新しい規則] をクリックします。
  • 作成するルールは、ローカル ポリシーまたは受信ルールが定義されている他のグループ ポリシー オブジェクトを通じて、SharePoint Servers で既に有効になっているルールとマージされます。
  • [新しい受信規則ウィザード] で、[規則の種類] ページの [カスタム]、[次へ] の順にクリックします。
  • [プログラム] タブで [このプログラム パス] を選択し、引用符なしで次のパスを挿入します。
  • 以下の図に示すように「%SystemRoot%\system32\dllhost.exe」から [次へ] を選択します。

DL ホスト

[プロトコルとポート] ページで、[プロトコルの種類] に [TCP] を、[ローカル ポート] に [RPC 動的ポート] を選択し、次の図に示されているように [次へ] を選択します。

プロトコルの種類、プロトコル番号、リモート ポート フィールドを含む確認ウィンドウのスクリーンショット。

  • [スコープ] ページで、[この規則を適用するリモート IP アドレスを選択してください] の下の [これらの IP アドレス] を選択し、[追加] をクリックします。 最初のステップで識別されたデータ収集用のマシンの IP アドレスを挿入します。 [OK] をクリックし、[スコープ] ページで [次へ] をクリックします。
  • [操作] ページで [接続を許可] を選択し、[次へ] を選択します。
  • [プロファイル] ページで既定のプロファイルをオンのままにし、[x.x.x.x から WUA への受信を許可する] と同様に、[名前] ページで、許可する内容を説明するルールに名前を与え、ルール作成ウィザードを終了し、ルールをファイアウォール ポリシーにコミットします。
  • ルールが適用されると、ナビゲーション ノードを監視するセキュリティが強化された Windows ファイアウォール MMC (WF.MSC) を介するか、次の PowerShell コマンド “Get-NetFirewallRule -Enabled true -policystore ActiveStore” の出力を参照して作成されたルールが表示されることを確認することによって、ルールをアクティブとして確認できます。

5. リモート PowerShell と CredSSP 構成 (ツール マシン) ツール マシンで、オプションの [管理者として実行] を使用して PowerShell プロンプトを起動します。 そして、次のコマンドを実行します (以下のコマンドを実行する前に、以下の重要な注意を参照してください)

Enable-WSManCredSSP -Role client -DelegateComputer <SharePointServer FQDN>

(example) Enable-WSManCredSSP -Role client -DelegateComputer SPAPP01.contoso.local

注:

  • 上記のコマンドの "SharePointServer FQDN" は、データ収集時に "ツール マシン" が接続する "ターゲット サーバー" です。 SharePoint サーバーの FQDN (SPAPP01.contoso.local など) を使用する必要があります。 一般に、ターゲット サーバーは全体管理サイトをホスティングする SharePoint サービスです。
  • このコマンドを成功させるには、WinRM サービスを実行させる必要があります。

6. リモート PowerShell と CredSSP 構成 (ターゲット サーバー)

ターゲット サーバーで (ターゲット サーバーについて学習するには、このドキュメントの最初のページと 4 ページ目を参照してください)、オプションの [管理者として実行] を使用して PowerShell プロンプトを起動します。 そして、次のコマンドを実行します (以下のコマンドを実行する前に、以下の重要な注意を参照してください)

Enable-WSManCredSSP -Role server

注:

  • SharePoint 2013、SharePoint 2016 および SharePoint 2019 ファームは、現在のみサポートされています。 SharePoint Server のオフライン評価は、SharePoint Server 2010 以前ではサポートしていません。
  • SharePoint Server のオフライン評価は、SQL を実行している SQL サーバー (SQL Server 2014 以降) を備えた SharePoint ファームをサポートしています。 以前のバージョンの SQL Server はサポートされていません。

7. リモート PowerShell と CredSSP 構成のテスト

ほとんどの SharePoint 情報は、ツール マシンから PowerShell スクリプトをリモートで実行することによって収集されます。 PowerShell スクリプトをターゲット サーバー上でリモートで実行できるように、CredSSP 委任を正しく構成することは特に重要です。 構成をテストするには、ツール マシンから次のコマンドを実行します。

以下のスニペットを実行すると、SharePoint ファームのすべての SharePoint コンテンツ データベースの一覧が出力されます。

$farm = Get-Credential
$s = New-PSSession -ComputerName [FQDN of Target Server] -Authentication CredSSP -Credential $farm
Invoke-Command -Session $s -ScriptBlock { Add-PSSnapin Microsoft.SharePoint.PowerShell -ea 0 }
Invoke-Command -Session $s -ScriptBlock { Get-SPFarm }
Invoke-Command -Session $s -ScriptBlock { Get-SPContentDatabase }
Get-PSSession | Remove-PSSession

注:

  • "ターゲット サーバーの FQDN" は、CredSSP が有効になっている SharePoint Server です (ターゲット サーバーの詳細については、このドキュメントの最初のページと 4 ページ目を参照してください)。
  • 上記のテストが失敗した場合、評価を続行しないで、CSAM に連絡してさらに支援を求めてください。

データ収集方法

付録: データ収集方法

SharePoint Server のオフライン評価では、複数のデータ収集方法を使用して情報を収集します。 このセクションでは、SharePoint 環境からデータを収集するために使用される方法について説明します。 データ収集に VB スクリプトは使用されません。 データ収集ではワークフローとコレクターを使用します。 コレクターは次のとおりです。

  • レジストリ コレクター
  • SharePoint PowerShell スクリプト
  • イベント ログ コレクター
  • SQL クエリ
  • IIS 情報
  • ファイル データ コレクター
  • WMI

レジストリ コレクター:

レジストリのキーと値を、ツール マシンとファーム内のすべての SharePoint サーバー (SharePoint と SQL) から読み取ります。 次のような項目が含まれます。

  • HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo からの SQL エイリアス情報

これにより、評価では、SharePoint Server が SQL エイリアスを使用して、SharePoint データベースをホストしている SQL Server に接続しているかどうかを判断できます。

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion からのオペレーティング システム情報

これにより、Windows 10、Windows Server 2012 R2 以降などのオペレーション システムの情報を確認できます。

SharePoint PowerShell スクリプト:

SharePoint データの大部分は、SharePoint PowerShell スクリプトを実行して収集されます。 たとえば、大規模なリスト ビュー、代替アクセス マッピング、SharePoint サービス、ULS 情報、SharePoint リスト情報、SharePoint 検索、タイマー ジョブなどに関する情報は、すべて SharePoint PowerShell スクリプトを使用して収集されます。

これらのスクリプトは、ターゲット マシンに接続することにより、ツール マシンからリモートで実行されます。

イベント ログ コレクター:

ファーム内のすべての SharePoint サーバー (SharePoint と SQL) からイベント ログを収集します。 オフライン評価ツールは、アプリケーション ログとシステム ログから過去 7 日間の警告とエラーを収集します。

SQL クエリ:

SharePoint SQL インスタンスによってホストされている SQL データベースに関する情報の一部は、SQL スクリプトを使用して収集されます。 たとえば、SQL データおよびログのファイル (サイズと次に拡張するサイズなど)、SQL インスタンス プロパティ (統合セキュリティを使用している場合、インスタンスがクラスタ化されている場合など)、インデックスの断片化、統計情報などに関連する情報は、すべて SQL スクリプトを介して収集されます。

IIS 情報:

IIS Web サイトとアプリ プールの構成の詳細は、.NET コードとワークフローを使用して収集されます。

ファイル データ コレクター:

リモート マシンでフォルダー内のファイルを列挙し、必要に応じてそれらのファイルを取得します。 たとえば、web.config ファイル、IIS ログ ファイル、アプリ ホスト構成ファイルなど、

Windows Management Instrumentation (WMI):

WMI は、次のようなさまざまな情報を収集するために使用されます。

  • WIN32_Volume: SharePoint 環境内の各サーバーのボリューム設定に関する情報を収集します。 この情報は、たとえば、オフライン評価ツールがシステム ドライブ上のファイルに関する情報を収集できるように、システム ボリュームとドライブの文字を決定するために使用されます。

  • Win32_Process: SharePoint 環境内の各サーバーで実行しているプロセスに関する情報を収集します。 この情報は、大量のスレッド、メモリ、または大規模なページ ファイルの使用量を使用するプロセスの分析情報を提供します。

  • Win32_LogicalDisk: 論理ディスクに関する情報収集に使用します。 この情報を使用して、データベースまたはログ ファイルが格納されているディスクの空き領域を決定します。