Vous êtes sur la page 1sur 19
Activation et configuration de Fast Search 2013 (v3.6) Tutorial conçu et rédigé par Michel de

Activation et configuration de Fast Search 2013 (v3.6)

Tutorial conçu et rédigé par Michel de CREVOISIER - Août 2013

conçu et rédigé par Michel de CREVOISIER - Août 2013 Search technologies: SOURCES  Overview :

Search technologies:

SOURCES

Understanding search architecture:

Changes from SharePoint 210 to SharePoint 2013 :

1

INDEX

INDEX SOURCES 1 INDEX 2 1. Search 4 1.1 Présentation 4 1.2 Nouveautés 4 1.3

SOURCES

1

INDEX

2

1. Search

4

1.1 Présentation

4

1.2 Nouveautés

4

1.3 Fonctionnalités supprimées

4

2. Architecture

5

2.1 Composants

5

2.2 Base de données

6

2.3 Interactions entre les différents composants du service Search

7

3. Mise en place

8

3.1 Configuration et activation du service

8

3.2 Administration

9

3.3 Modification du compte d’accès au contenu

9

3.4 Modification du compte « Host controller »

10

4. Topologie des composants

11

4.1 Création d’une nouvelle topologie

11

4.2 Ajout d’un composant sur un nouveau serveur

12

4.3 Suppression d’un composant sur un serveur

12

4.4 Déplacement de l’index

12

5. Préparation des données

13

5.1 Création d’une liste

13

5.2 Ajout de « Sites columns »

13

5.3 Mappage de champs

15

5.4 Result source

15

6. Configuration de la recherche

16

6.1 Source de contenu

16

6.2 Site de recherche

17

7. Configuration des crawls

18

7.1 Fréquence du « crawl » continu

18

7.2 Full « crawl »

18

7.3 Incremental « crawl »

18

2

 
 

8.

Suivi des performances

19

8.1 Ressources utilisées

19

8.2 Rapport de Crawl

19

D’autres tuto en relation avec ce sujet sont également disponibles sur mon blog :

 

Installation de SharePoint 2013 (tuto)

Configuration de SharePoint 2013 (tuto)

Activation et mise en place de FastSearch 2013 (tuto)

Configuration du service de cache (tuto)

Configuration du service UPS (tuto)

Installation de Reporting Services pour SQL Server 2012 (tuto)

Installation de PowerPivot pour SQL Server 2012 (tuto)

Migration de SharePoint 2010 vers 2013 (tuto)

 

3

1. Search

1.1Présentation

1. Search 1.1 Présentation Pour mémoire, Search offre un puissant moteur d’indexation permettant des recherches par

Pour mémoire, Search offre un puissant moteur d’indexation permettant des recherches par mots clefs, et cela grâce aux informations contenues dans des sites internes ou externes à SharePoint. Ce service est toutefois très gourmand en ressources, c’est pourquoi il convient de l’activer de façon stratégique et adéquate sur les serveurs adéquats.

Important : Search a besoin d’une « porte d’entrée » pour pouvoir indexer le contenu d’un site. En l’occurrence il s’agit ni plus ni moins que d’une URL. Toutefois, cette tâche risque d’impacter lourdement vos serveurs frontaux tout en nuisant à la navigation de vos utilisateurs. Aussi, il peut s’avérer intéressant d’utiliser un WFE dédié au service Crawl.

1.2Nouveautés

Anciennement présent sous forme de module à part entière dans SharePoint 2010, Search (et non plus Fast Search) refait peau neuve en s’intégrant nativement à SharePoint 2013. Par ailleurs, l’algorithme d’indexation a était revu et offre des performances accrues (source). Le crawl continu fait également son apparition (source) toujours aux côtés des crawls complets et incrémentiels (point 6.1). De plus, deux nouveaux composants ont été ajoutés au service Search : Content et Analytics (point 2.1). Autre nouveauté notoire : la mise à disposition de graphique et statistiques avancées concernant les tâches de crawl (point 7.2).

Pour terminer, les documents PDF sont nativement supportés et il n’est plus nécessaire de passer par des solutions tierces.

Note : Search est uniquement disponible sur les versions Enterprise et Standard (partiellement).

1.3Fonctionnalités supprimées

Certaines fonctionnalités de Fast Search ont été supprimées. C’est notamment le cas pour la fonction Scope (détails) remplacée par la fonctionnalité Result sources (point 5.4). Vous trouverez d’autres informations ici concernant les changements entre SharePoint 2010 et 2013.

4

2. Architecture

2.1Composants

2. Architecture 2.1 Composants Le service « Search » est constitué de 6 composants ( source

Le service « Search » est constitué de 6 composants (source) pouvant être activés sur un ou plusieurs serveurs de façon à former une topologie adaptée à votre architecture (point 4):

Query : ce composant est chargé du traitement et de l’analyse des requêtes. Quand une requête est reçue, il l’analyse à des fins d’optimisation pour ensuite l’envoyer vers le composant Index

Index : ce composant a pour rôle d’écrire les données issues du composant Content dans le fichier d’index. Il est par ailleurs chargé de retourner le résultat des requêtes issues du composant Query. Afin d’accroître sa disponibilité et sa résilience aux pannes, l’Index peut être séparé en plusieurs partitions distribuées sur plusieurs serveurs et des réplicas d’index peuvent être provisionnés.

Note : une partition d’index est une portion logique de l’index de recherche. Et l’index de recherche est l’agrégation de toutes les partitions d’index

Content : ce composant est apparu avec SharePoint 2013. Sa mission est de traiter les éléments « crawlé » en les soumettant à différentes tâches avant de les inclure inclus dans l’Index de recherche. Concrètement, ces éléments sont convertis en « artefacts » afin d’être soumis à des phases d’analyse, de « mappage de propriétés », de traitement linguistique, …. Les données telles que les liens ou URLs sont ensuite enregistrées dans la base de données Link. Le service Analytics inscrit ensuite les informations relatives à la pertinence des données dans l’Index au travers du composant Content

Analytics : autre nouveau composant apparu avec SharePoint 2013, il est chargé d’analyser les éléments indexés (métadonnées, liens, « anchros texts ») pour ensuite les stocker dans la base de données Link. Il analyse également les interactions de l’utilisateur avec Search en comptant par exemple le nombre de fois où un élément a été consulté. Les résultats finaux sont transmis au composant Content afin d’être inclus dans l’Index

Crawl : comme son nom l’indique, ce composant est chargé du « crawling ». Autrement-dit, il « construit » l’index grâce aux données fournis par le composant Content

Admin : ce composant est chargé d’exécuter les différents processus du service Search. Il participe également à l’initialisation des nouvelles instances de Search

5

2.2Base de données

2.2 Base de données Le service Search utilise 4 bases de données pour fonctionner. Elles sont

Le service Search utilise 4 bases de données pour fonctionner. Elles sont chacune liées aux composants présentés au point précédent :

SearchAdminDB : stocke les données propres à la configuration du service : topologie, règles, Il n’existe qu’une base de données Search admin par Search Service Application

CrawlDB : stocke l’historique du crawl ainsi que toutes les opérations associées : date du dernier crawl, type de mise à jour, …

LinkDB : stocke l’ensemble des informations extraites par le Content processing. D’autres informations telles le nombre résultats consultés ou le nombre de clicks sont également stockées dans cette base mais de façon « brute ». Le composant Analytics sera ensuite chargé du traitement de ces informations.

AnalyticsDB : stocke les résultats propres à Analytics. Elle stocke également les statistiques relatives aux différentes analyses

6

2.3Interactions entre les différents composants du service Search

7

2.3 Interactions entre les différents composants du service Search 7

3. Mise en place

3.1Configuration et activation du service

3. Mise en place 3.1 Configuration et activation du service Attention : ce service sera activé

Attention : ce service sera activé par défaut sur les serveurs frontaux. Le point 4 vous expliquera comment migrer ces composants vers une nouvelle topologie. Pour activer cette fonctionnalité :

Allez dans Central Administration > Application Management > Manage Service Applications

New > Search Service Application

Applications  New > Search Service Application  Renseignez les champs suivants : o Service

Renseignez les champs suivants :

o

Service Application Name : Service Application Serach 1

o

Application pool name (Search admin) : Search Admin Web Service

o

Application pool name (Search query) : Search Query Web Service

pool name (Search query) : Search Query Web Service  Le processus de création se lance

Le processus de création se lance :

Query Web Service  Le processus de création se lance :  Vérifiez pour terminer que

Vérifiez pour terminer que le nouveau pool d’application a bien été créé :

de création se lance :  Vérifiez pour terminer que le nouveau pool d’application a bien

8

de création se lance :  Vérifiez pour terminer que le nouveau pool d’application a bien

3.2Administration

3.2 Administration Une fois le service activé, connectez-vous à la console d’administration Search . Pour cela

Une fois le service activé, connectez-vous à la console d’administration Search. Pour cela allez dans :

Central Administration > General Application Setting > Farm search administration > <Search instance name>

search administration > <Search instance name>  Vous aboutirez alors à la console suivante : Vous

Vous aboutirez alors à la console suivante :

name>  Vous aboutirez alors à la console suivante : Vous remarquerez alors que l’ensemble des

Vous remarquerez alors que l’ensemble des composants sont nativement activés sur le serveur WFE. Hors dans notre architecture, nous souhaitons qu’ils soient placés sur notre serveur d’application.

Référez-vous donc au point 4 pour créer une nouvelle topologie et ainsi placer ces rôles sur les serveurs adéquats.

3.3Modification du compte d’accès au contenu

Remplacez le compte d’accès au contenu du service Search par le compte Svc_ SP_Crawl. Pour cela modifiez le compte présent à la ligne Default content access account :

présent à la ligne Default content access account : Note : en cliquant sur User Policy

Note : en cliquant sur User Policy dans les propriétés de votre Web Application, vous remarquerez que le compte d’accès au contenu est automatiquement rajouté en lecture seul. L’ancien compte peut être supprimé par la même occasion.

9

3.4Modification du compte « Host controller »

3.4 Modification du compte « Host controller » Le compte Farm est utilisé par défaut pour
3.4 Modification du compte « Host controller » Le compte Farm est utilisé par défaut pour

Le compte Farm est utilisé par défaut pour exécuter le service Search Host Controller. Or il convient de ne pas utiliser ce compte en raison des privilèges élevés dont il dispose. Pour changer le compte d’exécution de ce service suivez la procédure du point 3.4 de mon tuto et remplacez-le par le compte associé à Search.

10

4. Topologie des composants

4.1Création d’une nouvelle topologie

des composants 4.1 Création d’une nouvelle topologie A la suite, nous aller créer une nouvelle topologie

A la suite, nous aller créer une nouvelle topologie en « migrant » l’ensemble des composants (sauf Query) vers notre serveur d’application. Pour cela exécutez le script suivant depuis la console PowerShell de SharePoint (source) :

#Identification des rôles serveur $wfeserv = Get-SPEnterpriseSearchServiceInstance -Identity "<web server name>" $appserv = Get-SPEnterpriseSearchServiceInstance -Identity "<application server name>"

#Démarrage d'une nouvelle instance Search sur l'application server Start-SPEnterpriseSearchServiceInstance -Identity $appserv

### PATIENTEZ 2-3 MINUTES ###

#Création d'une nouvelle topologie de recherche $ssa = Get-SPEnterpriseSearchServiceApplication $newTopology = New-SPEnterpriseSearchTopology -SearchApplication $ssa

#Assignation des rôles sur les serveurs adéquats New-SPEnterpriseSearchAdminComponent -SearchTopology $newTopology -SearchServiceInstance $appserv New-SPEnterpriseSearchCrawlComponent -SearchTopology $newTopology -SearchServiceInstance $appserv New-SPEnterpriseSearchContentProcessingComponent -SearchTopology $newTopology - SearchServiceInstance $appserv New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchTopology $newTopology - SearchServiceInstance $appserv New-SPEnterpriseSearchIndexComponent -SearchTopology $newTopology -SearchServiceInstance $appserv New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $newTopology - SearchServiceInstance $wfeserv

#Activation de la nouvelle topologie (étape un peu longue) Set-SPEnterpriseSearchTopology -Identity $newTopology

#Vérification du statut des composants Get-SPEnterpriseSearchTopology -SearchApplication $ssa Get-SPEnterpriseSearchStatus -SearchApplication $ssa -Text

Vous pouvez également vérifier la migration des composants en retournant sur la console Search :

des composants en retournant sur la console Search : Important : pensez à supprimer les topologies

Important : pensez à supprimer les topologies inactives de Search :

Get-SPEnterpriseSearchServiceApplication | Get-SPEnterpriseSearchTopology |? {$ "Inactive"} |% { Remove-SPEnterpriseSearchTopology -Identity $_ -Confirm:$false};

State

-eq

11

4.2 Ajout d’un composant sur un nouveau serveur Dans le cas où vous souhaiteriez ajouter

4.2Ajout d’un composant sur un nouveau serveur

Dans le cas où vous souhaiteriez ajouter un composant de Search sur un nouveau serveur, il vous sera nécessaire de « cloner » la topologie existante pour ensuite la modifier et l’appliquer sur ce dernier (source et scripts de modification personnalisés ici) :

#Clonage de la topologie $new_host = "<new server>" $ssa = Get-SPEnterpriseSearchServiceApplication $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa -Active $clone = New-SPEnterpriseSearchTopology -SearchApplication $ssa -Clone SearchTopology $active

#Ajout du composant souhaité (le composant peut être modifié) New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $clone - SearchServiceInstance $new_host

#Mise à jour de la topologie Set-SPEnterpriseSearchTopology -Identity $clone

4.3Suppression d’un composant sur un serveur

#Clonage de la topologie $ssa = Get-SPEnterpriseSearchServiceApplication $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa -Active $clone = New-SPEnterpriseSearchTopology -SearchApplication $ssa -Clone SearchTopology $active

#Récupération de l'ID du composant à supprimer (tâches manuelle) Get-SPEnterpriseSearchComponent -SearchTopology $clone $compo_id = "<Component ID>"

#Suppression du composant Remove-SPEnterpriseSearchComponent -Identity $compo_id -SearchTopology $clone

#Mise à jour de la topologie Set-SPEnterpriseSearchTopology -Identity $clone

4.4Déplacement de l’index

Pour déplacer l’index, il vous faudra cloner la topologie à l’aide des points précédents. Un excellent script est toutefois disponible ici. Il vous faudra également modifier les droits sur le dossier contenant l’index. Pour cela rajouter le groupe WSS_WPG avec les droits « Full control » sur le dossier. Dans le cas contraire, le composant Index apparaitra dans un état critique.

12

5. Préparation des données

5.1Création d’une liste

Pour créer une liste dont le contenu pourra être indexé :

Pour créer une liste dont le contenu pourra être indexé :  Depuis le sous-site, cliquez

Depuis le sous-site, cliquez sur Site Contents (à gauche)> Add an App

cliquez sur Site Contents (à gauche)> Add an App  Et sélectionnez Custom List : 

Et sélectionnez Custom List :

Add an App  Et sélectionnez Custom List :  Remplissez votre liste avec les informations

Remplissez votre liste avec les informations de votre choix. Notez que les colonnes sur lesquelles vous souhaitez pouvoir établir des « filtres » devront être créées au point suivant.

5.2Ajout de « Sites columns »

Contrairement aux Regular columns, les Sites columns voient leurs données automatiquement transformées en Managed property lors de l’exécution d’un Crawl. De ce fait, il est possible d’effectuer un filtrage avancé sur ce type de colonne. Notez qu’elles sont à créer depuis les paramètres du sous-site et non de la liste. Pour créer une Sites columns :

Allez dans Site settings de votre sous-site > Sites columns

de la liste. Pour créer une Sites columns :  Allez dans Site settings de votre

13

Cliquez sur Create

 Cliquez sur Create o Renseignez son nom o Indiquez son groupe d’appartenance (il convient de

o

Renseignez son nom

o

Indiquez son groupe d’appartenance (il convient de créer votre propre groupe)

Maintenant que votre Sites columns est créée, il convient de la rajouter dans votre liste existante. Pour cela :

Allez dans les paramètres de votre liste > Add from existing site columns

de votre liste > Add from existing site columns  Sélectionnez votre colonne et ajoutez-là :

Sélectionnez votre colonne et ajoutez-là :

columns  Sélectionnez votre colonne et ajoutez-là :  Grâce à cette manipulation, un mappage entre

Grâce à cette manipulation, un mappage entre votre Sites columns et sa Crawled Property sera automatiquement créé lors du prochain Crawl, donnant lieu à une Managed Property. Vous pourrez vérifier cela allant dans Search administration > Search schema.

lieu à une Managed Property . Vous pourrez vérifier cela allant dans Search administration > Search

14

5.3Mappage de champs

5.3 Mappage de champs Etant donné que vous avez utilisé des Sites columns , aucun mappage

Etant donné que vous avez utilisé des Sites columns, aucun mappage manuel n’est nécessaire. Toutefois, il est possible de créer un « mappage » manuel. Pour cela :

Allez dans Search schema > New managed property

Indiquez le nom du champ et son type

Ajoutez un « mappage » pour lier votre propriété à un champ de votre liste > Add a Mapping

Recherchez ensuite le nom du champ et validez

Note : Vous trouverez ici excellente explication concernant les « crawled and managed items ».

5.4Result source

Les Results sources sont d’une certaine façon le remplaçant des Scopes. Pour les utiliser, allez dans Manage result sources et construisez vos requêtes à partir des Managed property créées dans les points précédents.

Dans Property Filter, recherchez la Property name créé aux points 5.1 ou 5.2. A partir de là, choisissez la méthode de filtrage de votre choix. Il est également possible de vérifier le fonctionnement du filtre en direct.

15

méthode de filtrage de votre choix. Il est également possible de vérifier le fonctionnement du filtre

6. Configuration de la recherche

6. Configuration de la recherche A ce stade , vous devez disposer d’une liste dont les

A ce stade, vous devez disposer d’une liste dont les Sites columns ont été mappées. Il faut maintenant spécifier à Search les sites que vous souhaitez indexer.

6.1Source de contenu

Pour commencer, précisez quelles seront vos sources de contenu :

Allez dans Content Sources > Local SharePoint sites et supprimez les sites pré-renseignés

Revenez au menu précédent et cliquez sur New Content Source

Renseignez l’URL des collections de sites à indexer. En règle générale, il convient de saisir une seule URL par Content Sources:

il convient de saisir une seule URL par Content Sources :  Indiquez également le type

Indiquez également le type Crawl souhaité :

:  Indiquez également le type Crawl souhaité : Pour lister les « Content crawl »

Pour lister les « Content crawl » :

$ssa = Get-SPEnterpriseSearchServiceApplication Get-SPEnterpriseSearchCrawlContentSource -SearchApplication $ssa

16

6.2Site de recherche

6.2.1 Activation des fonctionnalités requises

de recherche 6.2.1 Activation des fonctionnalités requises Pour créer un site de recherche basé sur Search

Pour créer un site de recherche basé sur Search, il nécessaire d’activer certaines fonctionnalités :

Au niveau de la WebApp, activez Enterprise Web Application features

de la WebApp , activez Enterprise Web Application features  Au niveau de la collection, activez

Au niveau de la collection, activez Server Publishing Infrastructure :

o Site settings > Site collection features

6.2.2 Création d’un site de recherche

Une fois les composants requis activés, créez un sous-site en utilisant le modèle Search Enterprise. Vous pouvez suivre pour cela les indications du point 4.3 de mon tuto sur SharePoint :

Search Enterprise . Vous pouvez suivre pour cela les indications du point 4.3 de mon tuto

17

Search Enterprise . Vous pouvez suivre pour cela les indications du point 4.3 de mon tuto

7. Configuration des crawls

7.1Fréquence du « crawl » continu

des crawls 7.1 Fréquence du « crawl » continu Pour modifier la fréquence d’indexation du crawl

Pour modifier la fréquence d’indexation du crawl continu, exécutez la commande suivante (minutes) :

$ssa = Get-SPEnterpriseSearchServiceApplication $ssa.SetProperty("ContinuousCrawlInterval",<n>)

7.2Full « crawl »

Dans les cas suivants, un « full crawl » est nécessaire (source) :

Application d’un Service pack ou d’un Cumulative Update pour SharePoint

Ajout d’un mappage de métadonnées (« refinements »)

Détection des changements de droits sur un partage

Ajout, modification ou suppression de « crawl rules »

Création d’un « server name mapping »

7.3Incremental « crawl »

Dans les cas suivants, un « incremental crawl » est nécessaire (source) :

Ajout d’un nouveau document ou item dans une librairie

Edition du contenu d’un document

Suppression d’un document

Changement des permissions d’un item

Modification des propriétés d’un document (colonnes)

18

8. Suivi des performances

8.1Ressources utilisées

8. Suivi des performances 8.1 Ressources utilisées Pour informations vous remarquerez que ces deux services consomment

Pour informations vous remarquerez que ces deux services consomment à eux seuls 2 Go de RAM durant une tâche de « crawl ». Quant au service Component, c’est lui le plus gourmand en CPU.

au service Component , c’est lui le plus gourmand en CPU. 8.2 Rapport de Crawl Le

8.2Rapport de Crawl

Le tableau ci-présente le résumé d’un « crawl » :

Le tableau ci- présente le résumé d’un « crawl » : Et pour terminer, le temps
Le tableau ci- présente le résumé d’un « crawl » : Et pour terminer, le temps

Et pour terminer, le temps de latence des requêtes :

» : Et pour terminer, le temps de latence des requêtes : N’hésitez pas à m’envoyer
» : Et pour terminer, le temps de latence des requêtes : N’hésitez pas à m’envoyer

N’hésitez pas à m’envoyer vos commentaires ou retours à l’adresse suivante :

m.decrevoisier A-R-0-B-A-5 outlook . com

Soyez-en d’ores et déjà remercié

19