ajout de tronc-commun

This commit is contained in:
2013-01-08 17:43:49 +01:00
parent 3569c00af1
commit 88fadde274
11 changed files with 815 additions and 715 deletions

View File

@ -0,0 +1,157 @@
\section{Personnalisation du serveur à l'aide de Creole}
\begin{frame}{Plan}
\small \tableofcontents[currentsection, hideothersubsections]
\end{frame}
\begin{frame}
\frametitle{Création de patch}
\begin{itemize}
\item Génération normal : /usr/share/eole/creole/distrib => /etc
\item Génération avec patch : /usr/share/eole/creole/distrib + /usr/share/eole/creole/patch => /var/lib/creole => /etc
\item Créer un patch :
\begin{itemize}
\item copie du fichier original /usr/share/eole/creole/distrib => /usr/share/eole/creole/modif ;
\item modification du fichier dans /usr/share/eole/creole/modif ;
\item exécution "gen\_patch" ;
\item reconfiguration.
\end{itemize}
\item Désactiver un patch : supprimer le fichier dans /usr/share/eole/creole/patch.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Pratique}
\begin{itemize}
\item ClamAV à le paramètre suivant : LogFileMaxSize 2M ;
\item il faut la valeur 10M.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Ajout de dictionnaires locaux}
\begin{itemize}
\item Permet d'ajouter des spécificités ou de nouveau template ;
\item les dictionnaires locaux sont dans /usr/share/eole/creole/dicos/local/ ;
\item les templates locaux sont dans /usr/share/eole/creole/distrib/ ;
\item un dictionnaire est un fichier XML Creole ;
\item un template utilise le langage de template Creole.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Syntaxe XML Creole}
\begin{itemize}
\item Entête XML : <?xml version="1.0" encoding="utf-8"?> ;
\item Première balise <creole></creole>
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Syntaxe XML Creole : conteneur}
\begin{itemize}
\item master : <files>, slave <containers><container name='\ldots' id='\ldots' groupe='\ldots'> ;
\item fichier template : <file name="\ldots" \ldots/> :
\begin{itemize}
\item name (obligatoire) : nom du fichier template ;
\item source : si le nom de fichier source est différent de la destination ;
\item mode, owner, group : droits sur fichier appliquer au fichier ;
\item mkdir : création du répertoire de destination si nécessaire.
\end{itemize}
\item service : <service method='service|upstart|apache'>\ldots</service> ;
\item package : <package>\ldots</package>.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Syntaxe XML Creole : variable}
\begin{itemize}
\item Ensemble de famille et séparateur : <variables></variables> ;
\begin{itemize}
\item Famille de variables : <family name='' [mode=''] [hidden='']></family> :
\begin{itemize}
\item Les variables <variable name='' type='' description='' [multi='True'] [hidden='True']/> :
\item Les variables <variable name='' type='' description='' [multi='True'] [hidden='True']><value> ... </value></variable> :
\end{itemize}
\item Les séparateurs <separator></separator> :
\begin{itemize}
\item name : nom de variable en dessous du séparateur ;
\item description affiché à l'intérieur de la balise.
\end{itemize}
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Syntaxe XML Creole : contrainte}
\begin{itemize}
\item Le contraintes : <constraints></constraints> : pour tester/remplir/grouper/conditionner des variables ;
\begin{itemize}
\item calcul automatique avec fonction personnalisé : <fill><param></param>...</fill> ;
\item calcul automatique non modifiable <auto></auto> ;
\item choix de réponse <check name='valid\_enum' target='var'><param>...</param></check> ;
\item cacher des variables suivant des contraintes <condition name='hidden\_if\_in|hidden\_if\_not\_in' source='var'>...</condition> :
\begin{itemize}
\item valeur de la variable testé : <param>...</param> ;
\item affecte <target type='family|filelist'>nom</target> :
\end{itemize}
\item Lien entre variable : <group master='var'>...</group> :
\begin{itemize}
\item si le maître à une valeur, les autres aussi ;
\item si le maître est multi-évalué, les autres aussi ;
\item les esclaves : <slave></slave>.
\end{itemize}
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Syntaxe XML Creole : aide}
\begin{itemize}
\item Afficher de l'aide dans l'interface : <help></help>.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Pratique}
\begin{itemize}
\item Installer le paquet ircd-irc2 ;
\item ajouter un service ;
\item dans la famille "services" ajouter la variable "activate\_ircd" ayant pour valeur possible "oui" et "non" ;
\item tester gen\_config.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Langague de template Creole}
\begin{itemize}
\item Variable Creole préfixé par \begin{semiverbatim}\%\%\end{semiverbatim}
\item Test : \begin{semiverbatim}\%if EXPRESSION code if \%else code else \%end if\end{semiverbatim}
\item Test existance : \begin{semiverbatim}\%if \%\%is\_defined('variable') code if \%end if\end{semiverbatim}
\item Boucle : \begin{semiverbatim}\%for \%\%i in EXPRESSION hello \%\%i \%end for\end{semiverbatim}
\item Boucle pour variable multi évolué avec esclave : \begin{semiverbatim}\%for \%\%var in \%\%variablemaitre\end{semiverbatim}\begin{semiverbatim}\%\%var, \%\%var.esclave1, \%\%var.esclave2\end{semiverbatim}\begin{semiverbatim}\%end if\end{semiverbatim}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Pratique 1}
\begin{itemize}
\item Installer phpldapadmin ;
\item créer un dicos pour demander l'activation ou non (variable "activate\_phpldapadmin") ;
\item si oui, activer une nouvelle famille "phpldapadmin" ;
\item demander l'adresse IP (phpldapadmin\_host) et le nom du serveur (phpldapadmin\_name) ;
\item copier les templates /etc/phpldapadmin/config.php et /etc/phpldapadmin/apache.conf dans /usr/share/eole/creole/distrib/ ;
\item le template config.php sera renommé en phpldapadmin.php ;
\item si le nom n'est pas spécifié, le serveur : "Serveur LDAP" ;
\item supprimer la configuration du TLS dans phpldapadmin ;
\item tester sans reconfigurer : /usr/share/creole/creolecat.py -o config.php /usr/share/eole/creole/distrib/phpldapadmin.php
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Pratique 2}
\begin{itemize}
\item Ajouter la possibilité d'activer ou non le TLS ;
\item possibilité d'ajouter plusieurs serveurs.
\end{itemize}
\end{frame}

View File

@ -0,0 +1,73 @@
\section{Zéphir}
\begin{frame}{Plan}
\small \tableofcontents[currentsection, hideothersubsections]
\end{frame}
\begin{frame}
\frametitle{Personnalisation d'un serveur}
\begin{itemize}
\item Liste des fichiers sauvegardés :
\begin{itemize}
\item dictionnaires additionnels
\item fichier appartenant aux dictionnaires additionnels
\item fichier spécifique (exemple généré par EAD)
\item les patches
\item les paquets additionnels
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Pratique}
\begin{itemize}
\item Ajouter les fichiers personnalisés dans l'application Zéphir pour Scribe2 ;
\item ajouter la dépendance pour les paquets ;
\item envoyer la configuration.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Variante}
\begin{itemize}
\item Variante : configuration identique applicable à plusieurs serveurs
\item Par défaut chaque module est dans la variante "standard"
\item Création des templates, patchs et dicos éventuels
\item Déplacement dans /etc/eole/patch/variante et /etc/eole/dicos/variante
\item Fichiers ou paquets pas référencés : /usr/share/zephir/zephir\_conf/fichiers\_variante
\item Dans /usr/share/zephir/scripts : ./creation\_variante
\item Mettre à jour une variante : ./maj\_variante
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Pratique}
\begin{itemize}
\item Créer une variante ;
\item mettre Scribe2 dans la variante ;
\item enregistrer Scribe2 dans Zéphir.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Exécuter un script}
\begin{itemize}
\item Exécution sur un serveur ou un groupe de serveurs ;
\item les scripts doivent être dans /usr/share/zephir/scripts/ ;
\item ils doivent avoir l'extension .zephir ;
\item ne pas spécifier l'extension lors de l'exécuxion ;
\item fonctionseole.init\_proc : permet de vérifier si l'action est bloqué ;
\item fonctionseole.zephir(<etat>, <message>, <type>) : log envoyer au Zéphir ;
\item les scripts sont lancés en tant que uucp, si besoin utiliser sudo\_script('monscript.zephir').
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Pratique}
\begin{itemize}
\item Créer un script personnalisé permettant un supprimer un fichier dont le nom est en paramètre.
\end{itemize}
\end{frame}
\end{document}