Planifier des solutions en mode bac à sable (SharePoint Server 2010)

 

S’applique à : SharePoint Foundation 2010, SharePoint Server 2010

Dernière rubrique modifiée : 2016-11-30

Les solutions en bac à sable dans Microsoft SharePoint Server 2010 restreignent l’accès aux ressources réseau et locales, ce qui renforce la sécurité et la stabilité. Vous pouvez utiliser des solutions en bac à sable pour équilibrer la charge des solutions, pour des solutions qui n’ont pas été entièrement testées et pour déployer des solutions utilisateur dans un environnement hébergé. Étant donné que les solutions en bac à sable s’exécutent dans un processus de travail spécifique, elles ne peuvent pas accéder aux ressources appartenant aux autres solutions et elles disposent d’un accès limité aux ressources locales et réseau.

Lorsque vous envisagez des solutions en bac à sable, déterminez avant tout si leur utilisation est opportune. Vous devez déterminer si votre critère principal est la performance ou la sécurité. Une batterie de serveurs qui utilise des solutions en bac à sable génère davantage de processus de travail et de proxy qu’une batterie de serveurs qui n’en utilise pas. Le recours à des solutions en bac à sable facilite l’isolation des processus, ce qui améliore la sécurité de votre batterie de serveurs.

Pour plus d’informations sur les solutions en bac à sable, voir Vue d’ensemble de solutions en bac à sable (SharePoint Server 2010) et Solutions en bac à sable (https://go.microsoft.com/fwlink/?linkid=220257&clcid=0x40C) (éventuellement en anglais).

Dans cet article :

  • Déterminer quand utiliser des solutions en bac à sable

  • Envisager d’équilibrer la charge du code des solutions en bac à sable

  • Déterminer où déployer les solutions en bac à sable

  • Déterminer qui peut déployer les solutions en bac à sable

  • Déterminer les collections de sites qui exécuteront des solutions en bac à sable

  • Planifier l’utilisation des quotas pour les solutions en bac à sable

  • Planifier des couches de service de solutions en bac à sable

  • Planifier la gouvernance des solutions en bac à sable

Déterminer quand utiliser des solutions en bac à sable

L’utilisation de solutions en bac à sable est appropriée dans les scénarios où vous souhaitez répartir la charge des solutions sur plusieurs serveurs ou rendre possible l’exécution d’un code qui n’a pas été entièrement testé ou que votre organisation ne prend pas en charge. Les solutions en bac à sable peuvent, dans le cadre d’un processus de déploiement adapté, jouer un rôle précieux pour les développeurs au sein de votre organisation, de leur environnement de test à une solution en bac à sable dans l’environnement de production. Les solutions en bac à sable peuvent ultérieurement se voir attribuer le statut de confiance totale par un administrateur de batterie qui les juge sûres pour un déploiement complet.

Il est particulièrement approprié d’utiliser les solutions en bac à sable dans les scénarios suivants :

  • Lorsque vous souhaitez répartir la charge des solutions sur plusieurs serveurs SharePoint Server.

  • Lorsqu’une organisation souhaite exécuter du code pour les employés sur un site SharePoint Server de production et que ce code n’a pas été rigoureusement révisé et testé.

  • Lorsqu’un fournisseur d’hébergement Internet souhaite que les propriétaires de sites SharePoint Server hébergés puissent télécharger et exécuter du code personnalisé.

Lorsque vous utilisez des solutions en bac à sable, vous devez démarrer le service de solutions en bac à sable sur chaque serveur sur lequel vous souhaitez exécuter ces solutions.

Envisager d’équilibrer la charge du code des solutions en bac à sable

Vous disposez de deux schémas d’équilibrage de charge pour les solutions en bac à sable. Suivant le schéma d’équilibrage de charge, Microsoft SharePoint Server 2010 détermine le serveur sur lequel exécuter la solution. Dans le cas de l’équilibrage de charge local, la solution s’exécute sur le serveur qui a reçu la demande. Si vous optez pour l’équilibrage de charge distant, le serveur sur lequel s’exécute la solution est sélectionné en fonction de critères d’affinité avec celle-ci et la solution en bac à sable est exécutée sur un serveur sur lequel elle est déjà chargée et sur lequel elle a déjà été exécutée. Cette option permet de traiter plus rapidement la demande liée à la solution. Dans les deux cas, chaque serveur appelé à héberger des solutions en bac à sable doit exécuter le service de solutions en bac à sable.

Le choix du type d’équilibrage de charge que vous opérez détermine le modèle utilisé par la totalité de la batterie de serveurs SharePoint Server. Vous ne pouvez pas utiliser une combinaison d’équilibrage de charge local et distant, mais, au contraire, vous devez décider d’implémenter l’un ou l’autre type d’équilibrage. Lorsque vous choisissez le mode à implémenter, tenez compte des éléments suivants :

  • Le mode local requiert moins d’administration, mais son évolutivité est limitée par les ressources du serveur local.

  • Le mode distant est plus évolutif que le mode local. Toutefois, il suppose l’exécution de tâches d’administration sur davantage de serveurs.

Le modèle d’équilibrage de charge distant offre de meilleures performances dans le cadre d’une batterie de serveurs SharePoint Server disposant de plusieurs serveurs pour l’exécution des solutions en bac à sable. Si vous utilisez des solutions en bac à sable dans le cadre d’un processus de développement et que vous souhaitez les limiter au serveur à partir duquel elles sont appelées, utilisez le mode d’équilibrage de charge local.

Pour plus d’informations, voir Vue d’ensemble de solutions en bac à sable (SharePoint Server 2010).

Déterminer où déployer les solutions en bac à sable

Les solutions en bac à sable sont déployées à la racine d’une collection de sites. Tout administrateur de collection de sites peut déployer une solution en bac à sable. Lorsqu’elle est déployée dans une collection de sites, la solution en bac à sable peut être utilisée n’importe où dans cette collection de sites.

Vous pouvez décider d’exécuter les solutions en bac à sable sur des serveurs spécifiques de votre batterie SharePoint Server ou sur tous les serveurs. Pour activer des solutions en bac à sable sur un serveur, vous devez activer le service de solutions en bac à sable. Ce service doit être activé sur chaque serveur sur lequel vous souhaitez exécuter des solutions en bac à sable.

Déterminer qui peut déployer les solutions en bac à sable

Lorsque vous planifiez les rôles d’utilisateur impliqués dans le déploiement des solutions en bac à sable, vous devez déterminer qui sera autorisé à déployer les solutions et qui sera autorisé à les administrer. Les membres du groupe d’administrateurs de collections de sites peuvent déployer des solutions en bac à sable.

Vous devez être membre du groupe d’administrateurs de batterie pour effectuer les tâches d’administration telles que l’activation ou la désactivation du service de solutions en bac à sable, le blocage ou le déblocage d’une solution et l’ajustement ou la redéfinition de quotas et des modèles de quota.

Notes

Il ne suffit pas d’être propriétaire de collection de sites. Pour déployer et activer une solution en bac à sable, vous devez être administrateur de collection de sites pour la collection de sites dans laquelle vous déployez la solution en bac à sable.

Étant donné que les administrateurs de batterie peuvent convertir les solutions en bac à sable en solutions entièrement fiables pouvant être déployées n’importe où dans la batterie de serveurs, vous devez veiller à limiter l’appartenance au groupe d’administrateurs de batterie aux utilisateurs appropriés. Vous devez agir avec la même prudence pour ajouter des utilisateurs au groupe d’administrateurs de collections de sites si la sécurité des solutions en bac à sable en cours de déploiement est en jeu.

Déterminer les collections de sites qui exécuteront des solutions en bac à sable à l’aide de quotas

Vous pouvez activer ou désactiver les solutions en bac à sable sur des collections de sites spécifiques en ajustant leurs quotas. Si vous définissez le quota des solutions en bac à sable sur 0 sur une collection de sites spécifique, les solutions en bac à sable ne s’exécuteront pas sur cette collection de sites. Ainsi, vous pouvez affiner l’utilisation des solutions en bac à sable dans votre batterie de serveurs.

Pour déterminer les emplacements auxquels déployer les solutions en bac à sable, vous devez prendre en compte les éléments suivants :

  • les serveurs qui exécuteront le service de solutions en bac à sable ;

  • les collections de sites qui pourront exécuter les solutions en bac à sable.

Si vous activez les solutions en bac à sable sur certaines collections de sites, vous devez les désactiver sur les autres collections de sites en définissant sur celles-ci les quotas sur 0.

Planifier l’utilisation des quotas pour les solutions en bac à sable

L’utilisation des ressources par les solutions en bac à sable fait l’objet d’une surveillance basée sur les quotas par défaut, qui sont surveillés par collection de sites. Si une solution en bac à sable dépasse le total cumulé des points de ressources, toutes les solutions en bac à sable dans cette collection de sites sont désactivées pour le reste de la journée. Ainsi, les administrateurs peuvent déterminer qu’une solution en bac à sable particulière sollicite de façon excessive les ressources partagées ou, dans certains cas, qu’il est nécessaire d’accroître le quota associé à une collection de sites qui contient une solution en bac à sable gourmande en ressources.

Les points de ressources sont accumulés pour une collection de sites entière lorsque des solutions en bac à sable s’exécutent. Lorsque vous affichez les mesures des ressources dans un quota, vous voyez le nombre de ressources par point ; il s’agit du nombre de fois qu’une ressource particulière peut être utilisée jusqu’à ce qu’un point de ressource spécifique soit comptabilisé. Lorsque l’utilisation des ressources atteint la limite spécifiée par la propriété ResourcePerPoint, la collection de sites comptabilise un point de ressource. Si le nombre cumulé des points de ressources dépasse le quota défini pour une collection de sites, toutes les solutions en bac à sable dans cette dernière sont désactivées pour le reste de la journée.

Les limites de point de ressource par défaut sont satisfaisantes dans la plupart des scénarios. Toutefois, vous pouvez ajuster des limites de point de ressource spécifiques pour autoriser leur augmentation lorsque cela est approprié. Pour plus d’informations sur l’ajustement de limites de point de ressource spécifiques, voir Configurer des points de ressources pour les solutions en bac à sable (sandbox) (SharePoint Server 2010).

Lorsque vous planifiez des quotas pour une solution en bac à sable, vous devez analyser les questions suivantes :

  • Ajusterez-vous des ressources par point pour des catégories de mesures de ressource ?

    Vous pouvez définir les limites de ressource pour toutes les solutions en bac à sable. Dans certains scénarios, il peut s’avérer approprié de limiter une ressource spécifique susceptible d’être mal consommée ou surconsommée, telle que les cycles processeur sur un serveur dont le processeur est déjà très sollicité. Vous pouvez ajuster les limites de ressource pour restreindre les solutions en bac à sable susceptibles de surutiliser des ressources. Vous devez examiner la liste des ressources surveillées par les quotas de solutions en bac à sable et déterminer si vous devez effectuer des ajustements.

  • Ajusterez-vous des limites absolues pour des catégories de ressources ?

    Une limite absolue est la limite supérieure ou inférieure qu’une utilisation de ressource par demande peut atteindre avant que la demande ne soit arrêtée. Si une catégorie de ressources spécifique est surutilisée et qu’elle atteint la limite absolue, la solution en bac à sable est arrêtée. Vous devez évaluer les catégories de ressources pour déterminer si certaines d’entre elles doivent faire l’objet d’une augmentation ou d’une diminution de la limite absolue.

Pour obtenir une liste des mesures de ressources individuelles et connaître le seuil minimal, la limite absolue et les ressources par point pour chaque ressource, voir Limites de l’utilisation des ressources sur les solutions en bac à sable (sandbox) (https://go.microsoft.com/fwlink/?linkid=217149&clcid=0x40C). Pour plus d’informations sur la configuration de la limite absolue et des ressources par point pour des mesures de ressource spécifiques, voir Configurer des points de ressources pour les solutions en bac à sable (sandbox) (SharePoint Server 2010).

Planifier des couches de service de solutions en bac à sable

Sur la base du nombre moyen de ressources utilisées par les solutions en bac à sable, il est possible de les grouper en couches dans le service de solutions en bac à sable. Une couche dans le service de solutions en bac à sable contient un ou plusieurs processus de travail dans lesquels s’exécutent les solutions en bac à sable. Chaque solution en bac à sable s’exécute dans son propre domaine d’application, qui est réutilisé lorsque la solution est appelée. Par défaut, toutes les solutions s’exécutent dans le service de solutions en bac à sable dans une même couche. Vous pouvez configurer des couches et des processus de travail supplémentaires dans ce service afin de séparer les solutions à des fins de performances, de sécurité et de fiabilité. Les solutions en bac à sable sont automatiquement réparties en couches supplémentaires en fonction de leur utilisation des ressources. Pour plus d’informations sur les couches, voir Vue d’ensemble de solutions en bac à sable (SharePoint Server 2010) et Couches en bac à sable (https://go.microsoft.com/fwlink/?linkid=217145&clcid=0x40C) (éventuellement en anglais).

Vous pouvez configurer autant de couches que nécessaire, et autant de processus de travail, de connexions et de domaines d’application que vous le souhaitez. Toutefois, la création d’un nombre excessif de couches affecte les performances de votre serveur SharePoint Server. Lorsque vous envisagez de configurer le service de solutions en bac à sable, vous devez analyser les questions suivantes :

  • Combien de couches allez-vous créer ?

    La configuration de plusieurs couches vous permet de séparer les solutions en bac à sable au comportement normal des solutions en bac à sable au comportement anormal, qui tombent souvent en panne ou qui utilisent beaucoup de ressources. En exécutant des solutions en bac à sable dans des couches distinctes, vous réduisez l’impact des solutions en bac à sable au comportement anormal sur les solutions en bac à sable au comportement normal. Cela renforce la stabilité et la réactivité du système. En général, au maximum deux ou trois couches suffisent pour séparer les solutions en bac à sable.

  • Pour chaque couche, combien de processus de travail allez-vous définir ?

    Le nombre le plus élevé de solutions en bac à sable qui s’exécutent en même temps dans une couche spécifique peut être calculé à l’aide de la formule suivante :

    Nombre de processus de travail dans la couche × nombre maximal de connexions par processus = nombre le plus élevé de solutions en bac à sable s’exécutant simultanément dans une couche spécifique

    En configurant des couches pour exécuter davantage de processus de travail, vous pouvez exécuter davantage de solutions en bac à sable simultanément dans la batterie de serveurs. L’ajout de processus de travail peut augmenter le débit sur un serveur donné, mais uniquement jusqu’à un certain point. Étant donné que la charge liée aux processus de travail supplémentaires peut réduire le débit global d’un serveur, vous devez configurer moins de 20 processus de travail dans l’ensemble des couches sur un serveur spécifique.

  • Combien de connexions sont nécessaires par processus ?

    Le nombre maximal de connexions par processus doit toujours être inférieur ou égal au nombre de domaines d’application par processus. Si deux solutions en bac à sable s’exécutent dans le même processus en même temps et que l’une d’elles tombe en panne, l’autre tombe également en panne. Plus le nombre de connexions maximales par processus est élevé, plus le nombre de solutions en bac à sable pouvant s’exécuter dans le même processus en même temps est élevé ; par conséquent, la panne d’une solution en bac à sable est plus susceptible d’affecter les autres demandes en cours d’exécution. Il est généralement préférable d’avoir des nombres réduits de connexions par processus dans les couches où la propriété ResourceMaxValue est définie sur une valeur relativement élevée, situations dans lesquelles les solutions en bac à sable sont généralement moins fiables. Les solutions en bac à sable plus fiables s’exécutent dans des couches où la propriété ResourceMaxValue est définie sur une valeur relativement petite. En général, vous devez augmenter le nombre de connexions par processus pour augmenter le débit, ce qui réduit l’impact des autres solutions en bac à sable pouvant tomber en panne dans le même processus.

  • Combien de domaines d’application sont nécessaires par processus ?

    Une seule solution en bac à sable peut s’exécuter dans chaque domaine d’application à un moment donné. Par conséquent, les domaines d’application représentent le nombre de solutions en bac à sable pouvant être chargées en même temps. Vous devez envisager de configurer autant de domaines d’application qu’il existe de connexions par processus.

Pour plus d’informations sur la configuration des couches, voir Configurer les couches de service de solutions en mode bac à sable (sandbox) (SharePoint Server 2010).

Planifier la gouvernance des solutions en bac à sable

Pendant la phase de planification des solutions en bac à sable, vous devez vous pencher sur les processus à mettre à œuvre pour les questions liées à la gouvernance. Il s’agit notamment des questions suivantes :

  • À quel stade l’administrateur de batterie bloquera-t-il ou débloquera-t-il une solution en bac à sable ? L’identification de la stratégie d’administration pour le blocage et le déblocage des solutions en bac à sable permet d’éliminer toute confusion.

  • À quel stade transférerez-vous une solution en bac à sable vers le catalogue global en tant que solution entièrement approuvée ? Cette décision s’applique au code de solution élaboré par les développeurs de votre organisation. Vous devez établir une stratégie permettant de déterminer le niveau de test requis pour qu’une solution en bac à sable soit considérée comme pouvant être utilisée dans l’environnement de production de votre organisation.

  • Lorsque vous déterminerez les personnes habilitées à déployer des solutions en bac à sable, les ajouterez-vous au groupe des administrateurs de collections de sites ou établirez-vous une procédure permettant à un nombre limité d’administrateurs de collections de sites de déployer les solutions en bac à sable au nom de leurs utilisateurs ? Suivant les contraintes liées à la sécurité au sein de votre organisation, vous pouvez décider d’ajouter des personnes directement au groupe des administrateurs de collections de sites au lieu de les obliger à demander l’autorisation de déployer la solution en bac à sable.

See Also

Concepts

Vue d’ensemble de solutions en bac à sable (SharePoint Server 2010)
Administration des solutions en bac à sable (SharePoint Server 2010)

Other Resources

Centre de ressources des solutions en bac à sable (éventuellement en anglais)
Architecture des solutions en bac à sable (sandbox) (https://go.microsoft.com/fwlink/?linkid=177368&clcid=0x40C)
Solutions en mode bac à sable dans SharePoint 2010
Installation, désinstallation et mise à niveau des solutions en bac à sable (sandbox) dans SharePoint 2010