MOSS.... et moi....

Christian Hougardy (SharePoint Server MVP)

June 2008 - Posts

Gouvernance SharePoint et gestion

A côté des outils professionnels de gestion et de gouvernance édités par Microsoft et dont je parlerai plus dans un autre post, il existe une série d’outils gratuits que l’on peut trouver sur Codeplex et qui aident les responsables IT à gérer leur ferme. Ces outils, à en juger par le nombre de téléchargement sur le site, sont encore peu connu, alors que bien souvent, ils peuvent vous sauver la mise ou vous donner des informations précieuses sur l’état de votre (vos) ferme(s)

 

En voici quelques uns, parmi les plus utiles, à mon avis bien sûr :

1.Microsoft IT Site Delete Capture LE 1.0

Cette feature permet de faire un snapshot d’un site lorsqu’il est effacé et en sauvegarde le contenu dans un directory.

Vous savez qu’il n’est pas possible, sauf à avoir un DBA de classe, de restaurer un site effacé, cela ne se fait qu’au niveau de la collection de sites.

L’outil va, dès lors, utiliser deux méthodes différences en fonction qu’il s’agit d’une collection de sites ou d’un site. Il s’agira de SPSiteCollection Backup et de SPExportSettings.

Vous me direz qu’il s’agit de commandes « Stsadm » et vous aurez bien raison, le truc était ici de créer un snapshot pour faciliter le backup-restore.

 

2.MSIT Site Life Cycle Management

Un peu comme le précédent, l’outil MSIT SLCM va vous aider à réaliser un backup puis un delete des sites qui ne sont plus utilisés. L’outil, en plus, notifiera automatiquement le processus à l’administrateur du site en question.

 

3.MSIT SharePoint Reporting Framework v2.1.0

Il s’agit ici d’un outil précieux qui va faire usage de SQL pour générer des rapports contenant des informations récoltées sur une ou plusieurs fermes.

Ces informations sont, entre autres :

-          URL des sites

-          Site Admin

-          Poubelle (espace disque utilisé)

-          Bande passante utilisée par site

-          Taille des sites

-          Taille des quotas…

On voit ici tout le parti que l’on peut tirer de ce genre d’outils.

 

4.TweakSP Central Admin Extensions

Il s’agit ici d’un outil qui ajoute des fonctions à la console d’administration.

Ces fonctions, qui existent déjà mais sont disséminées sont, par exemple, la taille des db, la hiérarchie, les fichiers de log etc…

 

Comme vous pouvez le voir, sans devoir dépenser une fortune en licences, il est déjà possible de disposer d’outils mis au point par Microsoft, souvent pendant la période de beta de SP d’ailleurs, qui donneront déjà des informations importantes sur la santé de votre solution.

 

Je vous laisse découvrir les autres

Gouvernance et notions de performance au sein des systèmes d’information

Souvent, lors de présentations que je donne, j’aborde la notion de performance de la plateforme SharePoint en termes de SLA (Service Level Agreement ou accord de niveau de service).

Cette notion n’est pas nouvelle mais, transposée aux systèmes informatiques, elle ouvre de nouveaux horizons.

Quel est l’objectif du SLA, pour un IT, au sein de l’organisation qui l’emploie ?

Il s’agit de garantir la disponibilité du système informatique et remédier aux périodes d’indisponibilité en fonction de l’investissement que l’organisation est prête à faire en matière de hardware et de personne.

Ainsi, on parlera de SLA à 90 %, 99 % jusqu’à, ce qui est considéré comme ce qu’il se fait de mieux, 99.99999 %

Néanmoins, et surtout pour des raisons financières, garantir un SLA de 99.999 % est déjà une obligation fort contraignante, comme nous allons le voir.

Plantons tout d’abord le décor, en précisant quels sont les termes utilisés, outre SLA en matière de disponibilité de système informatique :

·         Temps de réponse (response time)

·         La robustesse (robustness)

·         La capacité à monter en charge (scalability)

·         Disponibilité (availability)

On parle d’architecture à haute disponibilité à partir d’un SLA de 99.99%

Pour chiffrer cette disponibilité, il est nécessaire de déterminer les bons paramètres :

·         L’uptime : c’est la période de temps ou le système fonctionne correctement, depuis son démarrage ou son redémarrage

·         Le MTBF (mean time between failures) : c’est le temps moyen entre deux interruptions de service.  Ce MTBF ne prend pas en compte les pannes récurrentes dues, par exemple, aux défauts de fabrication du hardware ou à son usure.

·         L’AFR (annualized Failure Rate) qui représente le nombre de composants à changer chaque année

·         Le dowtime qui représente la période de temps ou le service n’est pas assuré

·         Le MTTR (mean time to repair) représente le temps moyen nécessaire à la réparation et à la restauration du service

·         L’AST (agreed service time) qui est, en fait, l’accord que vous avez avec l’organisation au sujet des exigences de continuité de service.

 

Il existe plusieurs méthodes pour calculer le temps de disponibilité (D), celle que j’utilise est celle-ci

D = clip_image002

 

L’organisation calculera plutôt de cette façon :

D = clip_image004

Une troisième façon de calculer sera

D = clip_image006

 

Comment améliorer notre SLA ?

En améliorant le MTBF par exemple. Ceci peut être fait en assurant la redondance du hardware (router, firewall, carte réseau…), la redondance du l’infrastructure logicielle (Network Load Balancing, SQL clustering…)

Il est possible de réduire le MTTR en assurant la formation des équipes chargées de la maintenance, tant logicielle que hardware, en définissant des procédures claires et détaillées et en utilisant des procédures de monitoring (ce point particulier fera l’objet d’un article détaillé dans le futur proche)

 

A titre d’exemple, vous trouverez dans le tableau ci-dessus les temps d’indisponibilité réels en fonction du pourcentage de SLA

Downtime

Disponibilité

En sec. Par an

En min par an

En heures par an

En jours par an

90 %

3 155 760

52 596

877

37

98 %

631 152

10 519

175

7

99 %

315 576

5 260

88

4

99.8 %

63 115

1 052

18

 

99.9 %

30 558

526

9

 

99.99 %

3 156

53

 

 

99.999%

316

5

 

 

99.9999 %

32

 

 

 

99.99999 %

3

 

 

 

 

 

Ainsi donc, pour répondre à un SLA de 99.999 %, cela veut dire que votre système ne pourra pas être indisponible pendant plus de 5 minutes par an. Ce SLA est plus communément utiliser et porte le nom de « Règle de 5 neufs ».

Plus le pourcentage de SLA sera haut, plus l’effort en termes humains et de matériel sera élevé.

A vos calculatrices…

La gouvernance SharePoint, suite et fin

5.    Education et formation

Parce que l’adoption de SharePoint par les utilisateurs est le secret de la réussite, l’éducation et la formation sont deux des outils qui vont permettre d’accéder à cette réussite.

Il ne s’agit pas ici, uniquement, de montrer et d’expliquer comment SharePoint fonctionne mais également d’aider les utilisateurs à créer des solutions pour les problèmes réels qu’ils rencontrent quotidiennement dans leur travail.

 

Education et formation

Points

Que faire ?

Pourquoi le faire ?

Formations de départ

·         Acquérir ou créer un modèle de formation pour les utilisateurs finaux ainsi que les ressources pour donner cette formation

·         Acquérir ou créer un modèle de formation ainsi que les ressources nécessaires pour le helpdesk

·         Créer un guide qui reprend toutes les prescriptions en matière de gestion en application au sein de l’organisation pour pouvoir s’y conformer

·         Acquérir ou créer un modèle de formation pour les développeurs

·         Créer un guide pour les développeurs qui reprenne toutes les prescriptions en vigueur dans l’organisation en matière de développement

Former les utilisateurs, tant à SharePoint, qu’aux différentes prescriptions en vigueur au sein de l’organisation est l’étape proactive la plus importante pour assurer la cohérence et la gestion de la plateforme SharePoint au sein de l’organisation.

Non seulement faut il connaître ce que SharePoint permet de faire mais également ce qu’il est permis de faire au sein de l’organisation 

Développement de Communautés

·         Créer des forums de discussion online ou chacun pourra aider ses pairs et poser ses questions

·         Créer des opportunités de formation en environnement formel ou informel (pendant le déjeuner, en salle de classe…)

Certains échanges ne se font pas de façon optimale dans un cadre formel.  Placer les utilisateurs dans les meilleures conditions pour communiquer sur leurs problèmes et attentes et montrer aux autres utilisateurs ce qu’ils ont déjà réalisé avec la plateforme peut se faire de multiples façons : déjeuner, pause café…

Formation permanente

·         Prévoir des formations régulières qui permettront de mettre en évidence ce qui a été appris par un groupe auprès d’autres groupes de l’organisation

·         Réaliser régulièrement un audit de la plateforme pour découvrir quelles sont les possibilités qui ne sont pas ou mal utilisées.

Définir de façon formelle votre intention d’auditer régulièrement la solution implémentée d’un point de vue de l’utilisateur permet de remarquer quels sont les manquements et de déterminer quelles sont les formations supplémentaires nécessaires.

Cela donne également le sentiment aux utilisateurs qu’on ne les abandonne pas.

 

 

6.      Navigation, Taxonomie et moteur de recherche

Ce dernier chapitre de notre plan de gouvernance aborde les points relatifs à la façon de trouver l’information, à savoir la navigation, la taxonomie et le moteur de recherche. Ces trois points sont réellement importants pour le taux d’adoption dans le long terme de la plateforme SharePoint car ils sont les outils de base qui vont permettre à l’utilisateur de trouver l’information qu’il cherche quand il ne sait pas ou elle est sauvegardée.

 

Navigation, Taxonomie et Moteur de recherche

Points

Que faire ?

Pourquoi  le faire ?

Répertoire des sites

·         Définir la structure des répertoires de sites en y incluant tous les groupes importants ainsi que les associations

·         Développer une stratégie de liaison entre les différents types de sites tels que site d’entreprise, de pole, de département, d’équipe, etc.

Définir comment les sites vont être organisés est la démarche par laquelle il sera donné aux utilisateurs de retrouver l’information dont ils ont besoin. Développer une stratégie de liaison entre les différents types de sites devient une nécessité quand un seul répertoire devient trop important pour être encore géré de façon optimale en une seule entité.

Types de contenu

·         Définir les types de contenu de base (core content types) au sein de l’organisation

·         Définir des champs clé pour établir un lien entre les documents et les systèmes opérationnels

La consistance mène à une plus grande aisance pour retrouver l’information.  Cette consistance est encouragée par la promotion de l’utilisation de types de contenu standards

Fourchettes de recherche

·         Créer des sources de contenu pour les différents sites ou est stockée l’information au sein de l’organisation

·         Promouvoir l’utilisation du BDC (Business Data Catalog) pour permettre la recherche d’information métier.

Le moteur de recherche est un outil prodigieusement riche qui est essentiel pour trouver de l’information au sein de l’organisation.

Au plus il y a du contenu disponible à l’indexation, au plus il sera aisé, pour les utilisateurs, de trouver l’information dont ils ont besoin.

Relevance de la recherche

·         Déterminer qui sera responsable de la définition des critères de recherche de base

·         Mettre au point des systèmes qui permettent d’éliminer le « bruit » lors de la recherche de fichiers, de mots clé ou de synonymes.

Bien que le moteur de recherche disponible dans SharePoint Server 2007 se soit beaucoup amélioré par rapport à ses versions précédentes, il n’en reste pas moins vrai qu’une plus grande efficacité peut être atteinte en réglant de façon très fine ce moteur.

 

 

 

La définition du succès

 

La gouvernance de la plateforme SharePoint est un point sur lequel l’administrateur d’une ferme ne peut plus faire l’impasse.

C’est en développant un plan de gouvernance minimum, qui met clairement en évidence les processus et les communique de façon la plus large possible, qu’il sera possible d’avoir un taux d’adoption de la plateforme élevé tout en maintenant un niveau de contrôle approprié sans entraver l’utilisation journalière de la technologie SharePoint par les utilisateurs finaux.

 

 

La gouvernance SharePoint, suite ....et pas encore fin...

2.       Développement et configuration

 La technologie SharePoint a rendu plus floue la limite entre ce qui est développement et ce qui est configuration. Il est vrai que la discussion de savoir si SharePoint est une plateforme collaborative ou une plateforme de développement est loin d’être terminée, avec ses farouches opposants et militants.Ce chapitre va couvrir ces deux parties, tant du point de vue de la configuration que du développement, parties essentielles du plan de gouvernance, permettant que les solutions qui sont implémentées soient cohérentes. 

 

Développement et configuration
Points Que faire ? Pourquoi le faire ?
Style maison ·         Créer les modèles qui vont déterminer à quoi les sites SharePoint vont ressembler·         Déterminer quels types de sites pourront être ou pas modifiés·         Déterminer quelles parties du modèle pourront être ou pas modifiées par l’utilisateur Utiliser un style maison ne va pas seulement donner l’impression que le site fait bien partie de l’organisation mais va également promouvoir une meilleure navigation ainsi qu’une meilleure organisation. Définir quelles zones pourront être changées ou pas créera la flexibilité nécessaire à l’adoption de la solution
Outils de customisation ·         Déterminer quels sont les outils de customisation qui pourront être utilisés (SharePoint Designer, etc.)·         Déterminer de façon claire et communiquer quelles sont les actions qui seront ou pas autorisées avec ces outils (comme par exemple, customiser un site, ce qu’on appelait à l’époque de SPS2003 unghoster un site) Probablement chaque pole de l’entreprise souhaitera apposer sa marque (logo, couleurs…) sur son site.Le challenge sera de contrôler les modifications qui sont apportées par les différents pôles pour faire en sorte que cela ne soit pas un obstacle à la maintenance des sites.
Modèles et définitions de site ·         Etablir des lignes de conduite claires en matière de développement de définition de sites·         Instaurer des politiques de déploiement  de ces définitions de sites telles que par exemple les  pré-requis pour une installation dans la GAC… Gérer les modèles (templates) et les définitions de site sont déjà un challenge dans une organisation de taille moyenne.Communiquer dès le début du projet les décisions qui sont prises en matière de gestion de ces templates et définitions de site, et le faire sans ambiguïté, permettra de gérer de façon optimale les remontées des différents groupes d’utilisateurs
Code source et « build control » ·         Déterminer s’il est nécessaire d’avoir un repository global pour tous les codes installés sur la plateforme (TFS, etc.…)·         Etablir les standards pour la création de composants, tant sur un serveur central que les lignes de conduite pour la création de logiciels·         Assurer que le code sera documenté, les avertissements pris en compte… Le Code Source est le cœur même des améliorations de SharePoint apportées à  votre organisationEtablir une liste stricte de ce qui peut être attendu et de règles au sujet du développement de code ne pourra que rendre le processus de maintenance plus aisé et conduira à un système beaucoup plus stable.
Support pour les bugs ·         Déterminer les responsabilités de chacun en matière de support Il est inévitable que des bugs soient trouvés dans le code et ce, parfois, longtemps après le déploiement.Savoir à qui s’adresser le cas échéant pour être certain que ces bugs soient corrigés est essentiel pour la survie à long terme de la plateforme SharePoint.
Développements standards ·         Etablir des règles claires déterminant quelles « Assemblies » pourront être installées dans le GAC et celles qui ne le pourront pas·         Etablir des règles au sujet de l’utilisation de l’attribut « AllowPartiallyTrustedCallers » La sécurité d’un site est déterminée par le code qui est autorisé à tourner sur ce site et avec quelles permissions.Les accès de sécurité du code .NET et les implications du déploiement dans le GAC sont important pour la maintenance d’un niveau de sécurité suffisant.
   


 

 3.       InfrastructureAlors que la plus grande partie des points d’infrastructure peuvent être considérés comme des détails d’implémentation, il en est pourtant qui auront un impact significatif sur la façon dont SharePoint sera déployé et quelles « features » seront disponibles.Les points d’infrastructure que j’énonce ci après sont suffisamment importants pour être inclus dans le plan de gouvernance parce qu’ils ont un impact sur la façon dont la plateforme sera utilisée. 

 

Infrastructure
Points Que faire ? Pourquoi le faire ?
Firewalls ·         Déterminer les règles qui vont régir les connexions, au départ des servers web, des web parts d’édition de contenu et de visualisation de flux RSS La bonne pratique veut qu’on n’autorise pas les serveurs à accéder directement au web.Donner la possibilité d’inclure du contenu venant d’un autre site au moyen d’une web part d’édition de contenu ou au travers d’un flux RSS peut créer une exposition à des attaques de style « cross site scripting ».Contrôler à quels sites extérieurs il est possible d’établir des liens est non seulement un point opérationnel mais également de sécurité.
Load Balancing ·         Décider et communiquer au sujet de la configuration du load balancing en matière de rémanence de session Les développeurs doivent savoir s’ils peuvent s’attendre à ce qu’une session simple soit transférée sur un autre serveur
Environnements ·         Déterminer quels environnements seront utilisés pour développer et pour tester les solutions dans SharePoint.·         Définir les critères de développement et de test pour chaque environnement. Communiquer les règles de déploiement tel que la nécessité pour un template de faire usage de la GAC  Définir les environnements de test et de développement aide les utilisateurs et les développeurs à savoir de quelles ressources ils peuvent disposer pour tester les modifications et les développements sans impacter l’environnement de production.