SharePoint 2013 の検索結果に異なる SharePoint ファームのコンテンツを表示する

こんにちは、SharePoint サポートの萩原です。

 

今回の投稿は、SharePoint 2013 の検索結果に異なる SharePoint ファームのコンテンツを表示する方法をご紹介します。

複数の SharePoint ファームが存在している状況で、コンテンツの移行は実施せずに、検索結果にのみ別の SharePoint ファームのコンテンツを表示させたい場合などに便利です。

 

 

こんなシナリオに便利です

(シナリオ 1)

SharePoint 2013 ファームを複数管理しているが、ひとつの検索センターですべての SharePoint ファームのコンテンツを検索したい!!

 

 

 

(シナリオ 2)

最近、SharePoint 2007 から SharePoint 2013 へ移行したが、SharePoint 2013 上で SharePoint 2007 のコンテンツも検索したい!!

 

 

実現方法の概要です

少し技術的なお話です。どのような仕組みで、異なる SharePoint ファーム間のコンテンツ検索を実現しているか簡単に説明します。

まず、SharePoint 上のコンテンツを検索結果に表示させるためには、そのコンテンツの検索インデックスが必要です。逆に言えば、検索インデックスが存在しない SharePoint コンテンツは、そもそも検索結果に表示されません。SharePoint にアップロードした Word や Excel ファイルがアップロード直後に検索結果に表示されないのはこのためです。この検索インデックスは「クロール」と呼ばれるコンテンツ情報収集処理によって生成されます。クロールの実行タイミング (クロール スケジュール) は SharePoint 管理者によって管理されているため、SharePoint にアップロードしたコンテンツが検索結果に反映されるまでの時間はこのクロール スケジュールに依存します。

 

クロールについて理解したところで、本題に戻ります。これまでの説明で、SharePoint 上のコンテンツを検索結果に表示させるためには、これらコンテンツのクロールを実行する必要があるということはわかりましたよね。つまり、別の SharePoint ファームのコンテンツを検索結果に表示するためには、別の SharePoint ファームをクロールして検索インデックスを作成すればいいわけです。

 

本投稿では、SharePoint 2013 から別の SharePoint をクロールする方法で、SharePoint 2013 の検索結果に別の SharePoint ファーム上のコンテンツを表示させる方法を紹介します。

ただし、検索結果に表示されるコンテンツのリンクは、コンテンツが保管されている SharePoint ファームの URL となるため、検索結果のリンクをクリックした場合、コンテンツが保管されている SharePoint ファームに遷移する動きになります。

 

制限事項があります

本手順は、双方の SharePoint ファームが同一のドメインに所属しているシナリオ向けの手順です。別のドメインに所属している SharePoint ファームをクロールするには、今回ご紹介する設定に加えて、個別の設定をいくつか設定する必要があります。別のドメインに所属している SharePoint ファームをクロールする方法については、別の記事でご紹介予定です。

 

例: 同一ドメインに所属している SharePoint ファーム

クロール実行元: SharePoint 2013 ファーム A (contoso.com)

クロール先: SharePoint 2007 ファーム B (contoso.com)

 

ご注意ください

コンテンツをクロールすると、コンテンツをホストするサーバーのパフォーマンスを低下させる場合があります。この影響は、ホスト サーバーに負荷を処理するための十分なリソース (特に CPU と RAM) があるかどうかによって異なります。本手順を実施する際は、検証環境などで十分なテストを実施した上で本番環境にて作業ください。

また、クロールによって、クロール対象のサーバーのパフォーマンスが低下した場合、クロール実行元の SharePoint ファームでクロール スケジュールの調整やクローラー影響ルールの設定をおこない、クロール時のパフォーマンスをチューニングすることをお勧めします。

 

●クロールを管理する (SharePoint Server 2013)

 

●SharePoint Server 2013 でクロールするためのベスト プラクティス

 

それでは、実際の設定手順をみていきましょう。

本投稿では、SharePoint 2013 の検索結果に SharePoint 2007 のコンテンツを表示させる手順を例にあげ、紹介します。

< 事前準備>

必要に応じて AD 上で、SharePoint 2007 コンテンツ クロール専用に新規アカウントを作成しておきます。(例: mosssearch)

既存のアカウントを使用する場合は本手順はスキップして問題ありません。(例: spsearch)

  

 

< ステップ 1> SharePoint 2013 上の設定

SharePoint 2007 をクロールするための、コンテンツ ソースを作成します。

1-1) SharePoint 2013 サーバーに管理者としてログインし、サーバーの全体管理サイトを起動します。

1-2) [アプリケーション構成の管理] カテゴリの [サービス アプリケーションの管理] をクリックします。

1-3) "Search Service Application" をクリックします。

1-4) 左ナビゲーションの [クロール] セクションの [コンテンツ ソース] をクリックします。

1-5) [新しいコンテンツ ソース] リンクをクリックします。

1-6) [Search Service Application: コンテンツ ソースの追加] 画面に必要項目を入力します。

 

名前: 任意

コンテンツ ソースの種類 : SharePoint サイト (必須)

開始アドレス: SharePoint 2007 URL

 

設定例:

 

 

1-7) [OK] ボタンをクリックし、設定を保存します。ここではまだクロールは実行しません。この状態で手順 1-8 に進みます。

 

コンテンツ ソースを作成したら、クロール ルールを作成します。

 

1-8) 左ナビゲーションの [クロール] セクションの [クロール ルール] をクリックします。

 

1-9) [新しいクロール ルール] リンクをクリックします。

1-10) 以下の入力例を参考に、必要項目を入力します。

 

パス: クロール対象の SharePoint 2007 サイト URL 

クロールの構成: "このパスにあるアイテムをすべて含める" にチェック

認証の指定 (異なるコンテンツ アクセス アカウントを使用する場合) : 事前準備で作成した SharePoint 2007 用コンテンツ アクセス アカウント (例: mosssearch)

認証の指定 (既定のコンテンツ アクセス アカウントを使用する場合) : 既定のコンテンツ アクセス アカウント (例: spsearch)

 

※必要に応じて * (ワイルドカード) を含めた URL をパスに指定します。

※異なるコンテンツ アクセス アカウントを使用する場合はパスワードも入力します。

 

設定例:

1-11) [OK] ボタンをクリックし設定を保存します。

 

SharePoint 2013 上の設定は以上となります。

< ステップ 2> SharePoint 2007 上の設定

ステップ 1 で指定したコンテンツ アクセス アカウントに SharePoint 2007 コンテンツの読み取り権限を付与します。この設定によって、SharePoint 2013 から SharePoint 2007 上のコンテンツをクロールすることが出来るようになります。

2-1) SharePoint 2007 サーバーに管理者としてログインし、サーバーの全体管理サイトを起動します。

2-2) 画面上部の [アプリケーション構成の管理] タブをクリックします。

2-3) [アプリケーション セキュリティ] セクションの [Web アプリケーションのポリシー] をクリックします。

2-4) [ユーザーの追加] リンクをクリックします。

2-5) [Web アプリケーション] セクションで、クロール対象の Web アプリケーションを選択し、[次へ] をクリックします。

2-6) [ユーザーの選択] セクションに手順 1-11 で指定したコンテンツ アクセス アカウントを指定します。(例: mosssearch)

2-7) [権限の選択] セクションで、[すべて読み取り] にチェックを入れます。

2-8) [完了] ボタンをクリックし、設定を保存します。

 

設定例:

 

SharePoint 2007 上の設定は以上となります。

これで、SharePoint 2013 から SharePoint 2007 をクロールするための準備は整いました!

 

< ステップ 3> SharePoint 2013 から SharePoint 2007 をクロールする

SharePoint 2013 から SharePoint 2007 をクロールしましょう。

3-1) SharePoint 2013 サーバーに管理者としてログインし、サーバーの全体管理サイトを起動します。

3-2) [アプリケーション構成の管理] カテゴリの [サービス アプリケーションの管理] をクリックします。

3-3) "Search Service Application" をクリックします。

3-4) 左ナビゲーションの [クロール] セクションの [コンテンツ ソース] をクリックします。

3-5) 手順 1-7 で作成したコンテンツ ソース (例: Moss 2007) を選択した状態で、[▽] - [フル クロールの開始] をクリックし、フルクロールを開始します。

 

例:

 

3-6) フルクロール完了後、検索センターで動作を確認します。

 

設定は以上となります。

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

今回の投稿は以上となります。次回の投稿では "別のドメインに所属している SharePoint ファームをクロールする方法" をご紹介する予定です。