Upload
beatrice-berry
View
14
Download
0
Embed Size (px)
DESCRIPTION
Présentation des technologies de management. Philippe Freddi Entreprise Architecte -- PFFC [email protected]. Division Plateforme & Ecosystème. Agenda. Intégrer des outils d’administration dans son application Outils de surveillance et d’optimisation Journalisation des événements - PowerPoint PPT Presentation
Citation preview
Présentation des technologies de
management
Présentation des technologies de
managementPhilippe FreddiEntreprise Architecte -- [email protected]
Division Plateforme & Ecosystème
Division Plateforme & Ecosystème
AgendaAgenda
Intégrer des outils d’administration dans son applicationOutils de surveillance et d’optimisation
Journalisation des événementsCompteur de performances
Outils d’administrationStratégie de groupes et modèles d’administrationWindows Management Instrumentation (WMI)Microsoft Management Console 3.0 (MMC)WS-ManagementWindows PowerShell
Quelle technologie implémenter dans mon application?
Division Plateforme & Ecosystème
Dynamic Systems Initiative DSIDynamic Systems Initiative DSI
Les systèmes d’administration sont complexes
Quelles applications ne fonctionnent pas?Quelles sont les dépendances?Comment le firewall est-il configuré?Quelles sont les exigences de sécurité?Quelles versions?Quelle est la stratégie de sauvegarde?Quel devrait être la valeur de ce paramètre?Que faut-il tracer?Comment l’installer?
L’administration est devenue complexe à maintenirL’automatisation est difficile
Division Plateforme & Ecosystème
Dynamic Systems InitiativeDynamic Systems Initiative
Introduire la connaissance dans des modèles de logiciels (SDML/SML)
Architecture applicative, DataCenter, Stratégies IT
Utiliser la connaissance tout au long du cycle de vie
Conception, Développement, Déploiement, Opérations
Vision à long terme
Logiciels qui utilisent des modèles pour administrer des systèmes IT
VS 2005, Operations Manager 2007, Configuration Manager 2007, Longhorn Server
Division Plateforme & Ecosystème
Que signifie DFO?Que signifie DFO?
Design for OperationsConcevoir et développer des logiciels dans l’esprit de la vision DSIConcevoir des logiciels qui peuvent être déployésConcevoir des logiciels qui peuvent être administrésPrendre soin de l’administration
Division Plateforme & Ecosystème
La problématiqueLa problématique
Les développeurs développent dans leur tour d’ivoireL’application prime sur l’administrationLes applications ne peuvent pas être configurées ou surveillées avec des outils de gestion proactive par une équipe d’administrateurPAS DE PARTAGE DE CONNAISSANCESeul les développeurs peuvent dépannerPas de retour vers les développeurs des bugs
Développement Test Production
Division Plateforme & Ecosystème
Concevoir une application qui peut être administréeConcevoir une application qui peut être administrée
Modèle Health“Qu’est-ce qui ne fonctionne pas et qu’est-ce qui est mauvais?”Comment détecter que quelque chose ne fonctionne pas?Comment corriger le problème
En utilisant des outils standardsJournal des événementsCompteur de performancesWMI PowerShell…
Outils de modélisationVisual Studio 2005 Team EditionMMD (Microsoft Management Designer)
Division Plateforme & Ecosystème
JournauxJournaux
Enregistre des informations sur le déroulement d’un programme dans un fichier de type logPeut enregistrer le message dans le journal ApplicationPeut enregistrer le message dans un journal personnalisé
Division Plateforme & Ecosystème
Ordinateur
Architecture des fichiers journauxArchitecture des fichiers journaux
ApplicationMessage
Observateurd’événement
Lecture
JournalApplication
ouPersonnalisé
Logiciel de management
Division Plateforme & Ecosystème
Ecrire un simple événement dans le journal des événementsEcrire un simple événement dans le journal des événements
Enregistrer la source de l’événement
Ecrire l’événement
if(!EventLog.SourceExists(“Source”)){
EventLog.CreateEventSource(“Source”,”Log”);}
if(EventLog.SourceExists(“Source”)){
EventLog myEventLog = new EventLog();myEventLog.Source=“Source”;
myEventLog.WriteEntry(“Event Message”,EventLogEntryType.Information, 1000, 45);
myEventLog.dispose();}
Division Plateforme & Ecosystème
Evénement Windows 6.0Evénement Windows 6.0
Qu’est-ce Windows Eventing 6.0?Journalisation des informations d’événements vers le journal d’événement dans un nouvelle approche pour Longhorn ServerPermet aux administrateurs et aux outils de gestion de savoir ce qui se passe
Pourquoi utiliser Windows Eventing 6.0?Amélioration des performances et de la fiabilitéStructure d’événement déclarativeAbonnementAPI unifiée pour les événements et le traçagePeut être poussé sur un ordinateur centralBénéfice pour les administrateurs
Un format plus facile à gérerBénéfice pour les développeurs
Des événements plus richeAinsi qu’une amélioration sur les possibilités de traçage
Division Plateforme & Ecosystème
Architecture de Windows Eventing 6.0Architecture de Windows Eventing 6.0
Event Metadata
ChannelConfiguration
Events
ProviderMetadata
Event logConfiguration
Repository
LOG
Canal
Outil de gestion
Gestionnaired’événement
EventManifest
Division Plateforme & Ecosystème
Organigramme de décisionOrganigramme de décisionDébut
Développer un modèle de
gestion
WindowsServer
Longhorn?Utiliser
Windows Eventing 6.0
UtiliserNT Eventing
Créer le manifeste
Selon le modèleHealth
WriteInstaller
Créer la source del’événement
Fin
EvénementLocalisé
Créer la file de message
Installer leManifeste
EvénementLocalisé
OuiNon
Division Plateforme & Ecosystème
Avantages pour Avantages pour
Le développeur
Mise en œuvre aiséeValeur ajoutée à l’applicationCoût d’implémentation basCoût de conception plus élevé (Modèle Health)
L’administrateur
Capitalise son expérienceS’intègre tel quel dans des applications (MOM)Améliore la satisfaction face au produit
Division Plateforme & Ecosystème
Evénements
http://msdn2.microsoft.com/en-us/library/e6t4tk09.aspxhttp://msdn2.microsoft.com/en-us/library/aa363652.aspxhttp://msdn2.microsoft.com/en-us/library/aa385780.aspx
Evénements
http://msdn2.microsoft.com/en-us/library/e6t4tk09.aspxhttp://msdn2.microsoft.com/en-us/library/aa363652.aspxhttp://msdn2.microsoft.com/en-us/library/aa385780.aspx
Division Plateforme & Ecosystème
Compteur de performancesCompteur de performances
Permet de récupérer à un instant T valeur prédéfinie puis régulièrement selon le delta définitOutil d’administration idéal pour trouver des goulets d’étranglements et des pertes de performanceLes valeurs retournées sont des valeurs objectives
Division Plateforme & Ecosystème
Avantages pour Avantages pour
Le développeur
Mise en œuvre aiséeValeur ajoutée à l’applicationCoût d’implémentation basCoût de conception plus élevé (Modèle Health)
L’administrateur
Capitalise son expérienceAméliore la satisfaction face au produitPermet de prévoir la chargePermet d’améliorer les performances du système
Division Plateforme & Ecosystème
Compteurs de performance
http://msdn2.microsoft.com/en-us/library/ms979204.aspx
Compteurs de performance
http://msdn2.microsoft.com/en-us/library/ms979204.aspx
Division Plateforme & Ecosystème
Stratégies de groupesStratégies de groupes
S’applique à l’utilisateur et/ou l’ordinateurSe compose de 3 éléments
Déploiement d’applications au format *.MSIRestriction des droits utilisateursModèles d’administration
Modifie des clés du registreLa stratégie de groupe ne peut être supplantéeLa stratégie de groupe est facile à mettre en place et les modifications s’appliquent automatiquement
Division Plateforme & Ecosystème
Architecture d’une stratégie de groupeArchitecture d’une stratégie de groupe
Groupe
Domaine
Unitéd’organisation
Utilisateur
Ordinateur
InetOrgPerson
Se pose sur S’applique à
Site AD
Division Plateforme & Ecosystème
Modèles d’administrationModèles d’administration
Est un élément d’une stratégie de groupePermet de définir des valeurs pour des paramètres du registre pour une application qui ne changeront pasUtilise un format XML (admx)Admx Migratorhttp://technet2.microsoft.com/windowsserver/en/technologies/featured/gp/default.mspx
Division Plateforme & Ecosystème
Avantages pour Avantages pour
Le développeur
Mise en œuvre aiséeValeur ajoutée à l’applicationCoût d’implémentation basCoût de conception plus élevé (Modèle Health)
L’administrateur
Capitalise son expérienceAméliore la satisfaction face au produitFacilite l’administration centralisée du produitOutil de gestion fondamental de Windows
Division Plateforme & Ecosystème
Windows Management instrumentation (WMI)Windows Management instrumentation (WMI)
Qu’est-ce ?Expose des données de configuration ou d’administration
Pourquoi utiliser WMI?WMI expose des objets matériels et logicielsPermet de modifier des valeurs par scriptPermet une administration distantePermet l’impersonalisationEst un standard
Division Plateforme & Ecosystème
WMI
http://msdn2.microsoft.com/en-us/library/aa394582.aspx
WMI
http://msdn2.microsoft.com/en-us/library/aa394582.aspx
Division Plateforme & Ecosystème
Microsoft Management Console 3.0Microsoft Management Console 3.0
Qu’est-ce que Microsoft Management Console 3.0?
C’est un outil d’administration graphique unifié
Pourquoi utiliser MMC 3.0?Pour déveloper des consoles d’administrationMême technologie que WindowsExpérience de d’administration consistente pour les administrateursCoût de développement réduit (Version 3.0)
Code managéMoins de code à écrire
Division Plateforme & Ecosystème
MMC 3.0
http://msdn2.microsoft.com/en-us/library/bb267809.aspx http://msdn2.microsoft.com/en-us/library/ms692759.aspx
MMC 3.0
http://msdn2.microsoft.com/en-us/library/bb267809.aspx http://msdn2.microsoft.com/en-us/library/ms692759.aspx
Division Plateforme & Ecosystème
WS-ManagementWS-Management
Qu’est-ce que WS-Management?Une spécification standard pour accéder à des données d’administrationImplémentée een tant qu’API dans Windows
Pourquoi utiliser WS-Management?Plateforme neutre pour accéder à des données provenant de WMIAdministration distanteSécure
Division Plateforme & Ecosystème
WS-management
http://msdn2.microsoft.com/en-us/library/ms951267.aspx http://msdn2.microsoft.com/en-us/library/bb245673.aspx
WS-management
http://msdn2.microsoft.com/en-us/library/ms951267.aspx http://msdn2.microsoft.com/en-us/library/bb245673.aspx
Division Plateforme & Ecosystème
PowerShellPowerShell
Qu’est-ce que c’est?Langage de ScriptingInvite de commandeInterface graphique (outil tiers)3 éléments (cmdlet, snapin, provider)
Que retourne-t-il?La réponse est encapsulée dans un objet
ExtensibilitéChaque application peut être pilotée grâce à un Snapin PowerShell
Domaine de prédilectionWindows Longhorn Server Core Edition
Division Plateforme & Ecosystème
Point de vue de l’administrateurdébutant à avancé!
http://powershell-scripting.com/index.php?option=com_content&task=view&id=126&Itemid=71
Point de vue de l’administrateurdébutant à avancé!
http://powershell-scripting.com/index.php?option=com_content&task=view&id=126&Itemid=71
Division Plateforme & Ecosystème
Windows PowerShell SnapinWindows PowerShell Snapin
EnregistreCmdLetsProviders
Etend le ShellPSSnapin
Enregistre les cmdlets et les providers dans l’assemblée
CustomPSSnapinEnregistre des cmdlets et des providers spécifiques
Division Plateforme & Ecosystème
Exemple de SnapinExemple de Snapin[RunInstaller(true)] public class GetProcPSSnapIn01 : PSSnapIn {
public GetProcPSSnapIn01() : base() { } public override string Name {
get { return "GetProcPSSnapIn01"; } }public override string Vendor {
get { return "Microsoft"; } } public override string VendorResource {
get { return "GetProcPSSnapIn01,Microsoft"; } } public override string Description {
get { return "This is a PowerShell snap-in that includes the get-proc cmdlet."; } } public override string DescriptionResource {
get { return "GetProcPSSnapIn01,This is a PowerShell snap-in that includes the get-proc cmdlet."; }
} }
Division Plateforme & Ecosystème
Install SnapinInstall Snapin
Développer une librairie de classeEnregistrer le snapin
Installutil <snapin.dll>
Controler l’enregistrement dans PowerShellGet-PSSnapin –registered
Ajouter le snapin au ShellAdd-PSSnapin <SnapinName>
Enregistrer la configuration de la consoleExport-console CustomShell
Charger la console avec la configurationPowerShell.exe –PSConsoleFile CustomShell.psc1
Division Plateforme & Ecosystème
Etapes pour développer un CmdLetEtapes pour développer un CmdLet1. Dériver de PSCmdLet2. Ajouter les attributs au CmdLet3. Surcharger la méthode d’exécution4. Ajouter des paramètres5. Développer6. Installer7. Tester
Division Plateforme & Ecosystème
Snapin http://msdn2.microsoft.com/en-us/library/ms714450.aspx
Snapin http://msdn2.microsoft.com/en-us/library/ms714450.aspx
Division Plateforme & Ecosystème
Scénario finalScénario final
PowerShellWMI
MMC SnapinWindows ou Web FormWS-ManagementScript
Journal des événementsCompteur de performances
ADMX
Stratégiede groupes
Outils de surveillanceMoniteur de performance
Division Plateforme & Ecosystème
Technologies de managementTechnologies de management
TechnologieCoût de
conception
Coût de développeme
nt
Valeur ajoutée
Devrait être requis pour une applicatio
n
Journal des événements Faible Faible Elevée Toujours
Compteur de performances Faible Faible Moyenn
e Dépend
Stratégies de groupes Faible Faible Elevée Dépend*
WMI Elevé Elevé Elevée Dépend**
PowerShell Snapin Moyen Faible Elevée Toujours
MMC- Snapin Moyen Dépend Elevée Dépend*
WS-Management Moyen Moyen Dépend Dépend*
Gestion intégrée dans l’application Faible Faible Dépend Dépend
**** Oui si l’application s’y prête** Peut être remplacé par un Snapin PowerShell*** Non si l’application ne peut pas interagir avec des outils de surveillance
Division Plateforme & Ecosystème
Résumé
• Ajouter des technologies de surveillance standard à vos applications permet une meilleure gestion de celles-ci par les administrateurs
Division Plateforme & Ecosystème
Call to action
• Dynamique System initiative• http://www.microsoft.com/business/dsi/default.mspx
• Faire les exemples des démos• Voir les liens