Utilisation des composants Guillaume PHILIPPON. Sommaire Fonctionnement des composants Comprendre le fonctionnement d’un composant Les bonnes pratiques.

Slides:



Advertisements
Présentations similaires
Samba contrôleur de domaine
Advertisements

« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
Open Days 2006 Le Web 2.0 demain: produits, technologies, outils.
Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 9 Patrick Reuter.
1 Bases de donn é es relationnelles. 2 Introduction au mod è le relationnel les donn é es sont repr é sent é es par des tables, sans pr é juger de la.
Programmation Web Les JSP.
PHP S ÉANCE 2 PHP avancé 03:32:44 PWB L3 Mioage 1.
TP 3-4 BD21.
Sécurité Informatique
CPI/BTS 2 Programmation Web Introduction au PHP
Le langage PHP 5.
Administration de SharePoint
Module 2 : Configuration de l'environnement Windows 2000.
Conception et réalisation d’un banc de test pour
La Programmation CGI Principe Général Traitement des informations
Tester un fichierManipuler un fichierManipuler un répertoire Les données disponibles Les fichiers On peut obtenir sur un fichier toutes les informations.
JavaScript.
GESTION DES UTILISATEURS ET DES GROUPES
4-5/2/2009Quattor : Gestion des Utilisateurs - G. Philippon/M. Jouvin4-5/2/2009Quattor : Gestion des Utilisateurs - G. Philippon/M. Jouvin Quattor : Gestion.
13 juin Le mécanisme de templates de Sympa.
Finder => Application => Utilitaires => Terminal Editor:pico Touches –Finder=>Applic.=> Utili. => Touches –~: Alt+N –|: Shift+Alt+N –[: Shift+ Alt+5 –{:
Serveur HTTP. Responsable : Yohan VALETTE Objectifs : Créer un intranet sécurisé pour nos utilisateurs (pour la mise en commun de connaissances, par exemple).
AFPA CRETEIL 14-1 Windows NT Environnement des utilisateurs Chapitre 14.
Module : Pages Web Dynamiques (Production Électronique Avancée)
Quattor : Opérations Courantes - G. Philippon/M. Jouvin4-5/2/2009Quattor : Opérations Courantes - G. Philippon Opérations courantes.
Citrix ® Presentation Server 4.0 : Administration Module 9 : Déploiement d'applications.
CPI/BTS 2 Programmation Web Fonctions & Includes Prog Web CPI/BTS2 – M. Dravet – 02/11/2003 Dernière modification: 02/11/2003.
Chaîne de requêteCookieSession Sauvegarder un état via l'url Sauvegarder l'état La technique consiste à passer des informations via l'URL sous la forme:
Op é rateurs ensemblistes Module 4. 2 La clause GROUP BY La clause GROUP BY est nécessaire dès que l'on utilise des fonctions de calculs statistiques.
Variables : notion Une variable permet de stocker/manipuler une donnée dans un programme avec un nom explicite Caractériser par son type (entier, flottant,...)
JI Les systèmes d’autorisation et d’authentification dans AMI Fabian Lambert.
6 ans d’utilisation de l’ordinateur avec mes élèves. Présentation : Marc André (instituteur en cinquième primaire à l’école libre de Moustier s/Sambre)
Création d’un site WEB 1 – Un site WEB c’est quoi ? 2 – Questions à se poser avant la construction d’un site WEB 3 – Principes de fonctionnement d’un site.
Sortir de MAUI – quelles options ? HTCondor dans un CREAM-CE Guillaume Philippon.
Présentation de JobBoard Isabelle Schlesser, directrice de l’ADEM Nicolas Henckes, secrétaire général de l’UEL.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 10 Support de cours rédigé par Bernard COFFIN Université.
FACTORY systemes Module 3 Section 1 Page 3-3 Le dictionnaire de variables FORMATION INTOUCH 7.0.
Opérations courantes Guillaume PHILIPPON. Sommaire Mise à jour des QWG Gestion des utilisateurs Ajout/Suppression d’un programme Préparation des « OS.
L E RNU ET DISPOSITIONS D ’ UTILISATION PAR LES SECTORIELS REPUBLIQUE DU SENEGAL Un Peuple – Un But – Une Foi  PRESIDENCE DE LA REPUBLIQUE.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Session “Site Administrator” Pierre Girard.
GPA – 19 novembre Groupe de pilotage des applications 21 janvier 2010 F. Rougerie – Onema / DCIE.
Logiciel de gestion comptable. Introduction Notre mission à été de finaliser et valider une application de gestion des fiches des paies en cours de développement.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 1 Support de cours rédigé par Bernard COFFIN Université.
INTRANET.SANTEFRANCAIS.CA ANTOINE DÉSILETS Coordonnateur au réseautage et Agent de communication Formation sur l’utilisation de l’Intranet 1.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 6 Support de cours rédigé par Bernard COFFIN Université.
FACTORY systemes Module 5 Page 5-1 Les outils clients Wonderware FORMATION InSQL 7.0.
Projet Personnel (Epreuve 6) Projet réalisé dans le cadre de mon épreuve E6 au sein de mon alternance au conseil départemental du val de marne Arnaud PICANO.
Les méthodes de tests Les grands principes pour réaliser des tests efficaces.
Atelier d’échange d’expériences et de capitalisation sur des projets d’électrification rurale en cours Schémas organisationnels Mardi 10 décembre 2002.
Chapitre 6 Déploiement et gestion des logiciels à l'aide d'une stratégie de groupe Module S44.
Abes agence bibliographique de l’enseignement supérieur Comment installer le fichier de scripts ?
Développement des templates Quattor de gLite à EMI Guillaume PHILIPPON.
Du panier à la commande client Créer un panier Identification Validation de la commande Paiement Formulaire de création de compte Etats de la commande.
1 Comprendre l’adressage IP L’adressage IP Munies de leurs adresses IP, les stations peuvent communiquer… …mais ces adresses.
Présentation du fonctionnement des « Dossiers partagés » dans la version de la Rentrée Scolaire 2012 Alexis OLLIER 11 juin 2012.
Mission Hygiène et Sécurité Académie de Rouen 1 ART R ARRET GENERAL SUIVANTE.
SOLUTION ONLINE DE GESTION POUR LES SPECIALISTES DU TOURISME SUR MESURE
Samba contrôleur de domaine Linux – Ubuntu Samba
Informatique 1A Langage C 6 ème séance 1. Objectifs de la séance 6  Allocation dynamique de mémoire  Application à la création de tableaux 2.
Informatique 2A Langage C 3 ème séance.
Cours de Langage C Les structures
Introduction Depuis le début des sites web les urls sont utilisé pour la navigation. Avec l’arrivée des bases de données, les urls ont prit de l’importance.
Mise en place d’un cloud publique et privé Guillaume PHILIPPON.
INSCRIPTIONS SPORTIVES
FACTORY systemes Module 9 Section 1 Page 9-3 La sécurité d’une application FORMATION INTOUCH 7.0.
TÂCHES D’ADMINISTRATION DE LA NAGIOSBOX BIOMED LE 24 Mai 2011, Christine Leroy,
Colloque LCG France14-15 mars SURVEILLANCE ET GESTION D’INCIDENTS Cécile Barbier (LAPP)
Persistance des données O.Legrand. Persistance developer.android.com/guide/topics/data/data-storage.htmll Plusieurs moyens sur le mobile: –Système de.
Transcription de la présentation:

Utilisation des composants Guillaume PHILIPPON

Sommaire Fonctionnement des composants Comprendre le fonctionnement d’un composant Les bonnes pratiques pour l’utilisation d’un composant Installer un nouveau composant Comment gérer un service qui n’a pas de composant spécifique

Fonctionnement d’un composant Les composants se découpe en deux parties – Les templates PAN – Un programme perl qui tourne sur la machine Les templates PAN définissent le « schéma » des composants – Permet de valider que la configuration est « correct » avant le déploiement

Comprendre le fonctionnement d’un composant Pour chaque composant, il existe une « man page » Le prefix d’un composant est toujours ‘/software/component/name’ Toute la configuration d’un composant se « charge » en incluant le template component/name/config Ne pas hésiter à regarder si le composant est déjà utiliser

Comprendre un schéma Les schémas se lisent toujours de bas en haut – L’operateur ‘:’ défini une valeur obligatoire – L’opérateur ‘?’ défini une valeur optionnel – L’opérateur ‘[]’ défini une list() PAN – L’opérateur ‘{}’ défini une nlist() PAN declaration template components/ntpd/schema; include { 'quattor/schema' }; type ntpd_clientnet_type = { "net" : type_ip "mask" : type_ip }; type component_ntpd_type = { include structure_component "servers" ? type_hostname[] "clientnetworks" ? ntpd_clientnet_type[] }; bind "/software/components/ntpd" = component_ntpd_type;

Bonnes pratiques d’utilisation d’un composant Toujours inclure la configuration de base d’un composant avant de l’utiliser – S’assurer que le schema est bien « charger » […] ‘/software/component/ntpd/servers’=list(‘ntp.example.org’); # Renvoi une erreur si le composant ntp n’a pas été chargé avant l’utilisation […] include { ‘component/ntpd/config’ }; # Charge la configuration si cela n’a pas été fait ‘/software/component/ntpd/servers’=list(‘ntp.example.org’); […]

Bonnes pratiques d’utilisation d’un composant Ne pas hésiter à créer de nouveaux templates – Généralement dans cfg/site/services/name Object template box.example.org; […] # Ne peux pas être utiliser par un autre profile ‘/software/component/ntpd/servers’ = list(‘ntpd.example.org’); […] Object template box.example.org; […] include { ‘services/ntpd/config’ }; […] template services/ntpd/config; […] # Peut être inclus par n’importe quel profile ‘/software/component/ntpd/servers’=list(‘ntp.example.org’); […] Object template box2.example.org; […] include { ‘services/ntpd/config’ }; […]

Bonnes pratiques d’utilisation d’un composant Préférer l’utilisation de variable aux déclarations direct [...] # La valeur ne peux pas être redéfini par le profile ‘/software/component/ntpd/servers’=list(‘ntp.example.org’); […] variable NTPD_SERVERS ?= list(‘ntp.example.org’); # Permet de redéfinir la valeur "/software/components/ntpd/servers" = NTP_SERVERS; Object template box.example.org; variable NTPD_SERVERS ?= list(‘ntp2.example.org’); include {‘services/ntpd/config’}; # Le serveur ntp2.example.org est configuré Object template box.example.org; Include {‘services/ntpd/config’}; # le serveur ntp.example.org est configuré

Bonnes pratiques d’utilisation des composants Regrouper les configurations d’un même service dans un même repertoire template services/mail/config; Variable SPAM_ASSASSIN_ENABLE ?= true; Include { ‘services/mail/postfix’ }; Include { ‘services/mail/amavis-new’ }; Include { if (SPAM_ASSASSIN_ENABLE) { ‘services/mail/spam-assassin’; } else { null; } ;

Installer un nouveau composant Une liste des composants existant est disponible – Les sources des composants sont disponible sur le SVN de sourceforge – runk runk Des RPMs sont créer tout les soirs – repo01.in2p3.fr:8081/nexus/content/repositories/rele ases/

Installer un nouveau composant Directement a partir de SCDB – Il existe un script utils/misc/updateComponent – Construit le RPM ($COMP_DIR/core/ncm-smartd/work/RPMS/noarch/ncm- smartd noarch.rpm) – Installe le composant dans $SCDB_DIR/cfg/site/name/component Svn co /path/to/ SCDB_DIR=/path/to/scdb COMP_DIR=/path/to/component-sourceforge/ncm-component cd $SCDB_DIR; Utils/misc/updateComponent –comp-dir $SCDB_DIR/cfg/site/name –source $COMP_DIR/core smartd

Gérer un service qui n’a pas de composant dédié Filecopy, le composant « magique » – Permet d’écrire le contenu d’une variable dans un fichier – Permet des actions après modification du fichier A utiliser avec précaution – Ne valide pas les donné en entré (pas de schéma associé au contenu du fichier)

Gérer un service qui n’a pas de composant Par exemple, un service foo qui a comme fichier de configuration /etc/foo.cfg variable contents = <<EOF Ceci est le contenu de mon fichier EOF include { ‘components/filecopy/config’ }; prefix ‘/software/components/filecopy/services/{/etc/foo.cfg}’; ‘config’=contents; ‘owner’=‘root:root’; ‘perms’=‘0755’; ‘restart’=’service foo restart’;

Gérer le démarrage automatique d’une application Le composant chkconfig permet de gérer le démarrage automatique d’une application au boot de la machine include { 'components/chkconfig/config' }; "/software/components/chkconfig/service/cups/startstop" = true; "/software/components/chkconfig/service/cups/on" = ‘’; include { 'components/chkconfig/config' }; "/software/components/chkconfig/service/cups/off" = ‘2345’;

En cas de soucis