Analyse des d´ ependances pour le d´ eploiement autonome Projet : Safe AUtonomic Network Administration (SAUNA) Meriem Belguidoum Antoine Beugnard Fabien Dagnat D´ epartement d’Informatique ENST Bretagne Journ´ ees des Doctorants 2005
Analyse des dependances pour le deploiementautonome
Projet : Safe AUtonomic Network Administration (SAUNA)
Meriem Belguidoum Antoine Beugnard Fabien Dagnat
Departement d’InformatiqueENST Bretagne
Journees des Doctorants 2005
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
ContexteObjectifs
Contexte
OS
CPUDiskSizeRAM....
processeur
Environnement
Materiels processeur
Disk ....
OS ....Logiciels
Installation
Composant
Analyse des dépendances
LanguageMode graphiqueDoc en ligne
....
KO OK
Pourquoi?
Utilisateur
Mise à jour
2
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
ContexteObjectifs
Objectifs
Etudier les differents types de dependances liees audeploiement.
La prise en compte de l’evolution du systeme (besoind’autonomie)
La verification et la validation du deploiement (besoin d’unmodele formel).
3
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
ContexteObjectifs
1 Le deploiement
2 Les dependances d’installation
3 Conclusion et perspectives
4
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
Le monde du deploiementModelisation
1 Le deploiement
2 Les dependances d’installation
3 Conclusion et perspectives
5
Le monde du deploiement
Ressources Mecanismes
Proprietes Politiques
... ...
... ...
Machine Postfix Installation
Coherence Securisee
Deploiement
Monde Reel vs Monde Formel
Monde Reel
Entite a deployer
Site de deploiement
Mecanisme de
deploiement
Monde Formel
Description abstraite
de dependence
Description abstraite
de contexte
Raisonnement
Monde Reel vs Monde Formel
Monde Reel
Entite a deployer
Site de deploiement
Mecanisme de
deploiement
Monde Formel
Description abstraite
de dependence
Description abstraite
de contexte
Raisonnement
Monde Reel vs Monde Formel
Monde Reel
Entite a deployer
Site de deploiement
Mecanisme de
deploiement
Monde Formel
Description abstraite
de dependence
Description abstraite
de contexte
Raisonnement
Monde Reel vs Monde Formel
Monde Reel
Entite a deployer
Site de deploiement
Mecanisme de
deploiement
Monde Formel
Description abstraite
de dependence
Description abstraite
de contexte
Raisonnement
Monde Reel vs Monde Formel
Monde Reel
Entite a deployer
Site de deploiement
Mecanisme de
deploiement
Monde Formel
Description abstraite
de dependence
Description abstraite
de contexte
Raisonnement
Monde Reel vs Monde Formel
Monde Reel
Entite a deployer
Site de deploiement
Mecanisme de
deploiement
Monde Formel
Description abstraite
de dependence
Description abstraite
de contexte
Raisonnement
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
Le monde du deploiementModelisation
Modelisation du deploiement
Ressource
entité deployable Site de déploiement
Activité déploiement
possède+*
ContraintesPropriétés
*
possède
effectuée dans
Politique
Descripteur
* *
*
utiliseeffectuée sur
possède
possède+
DépendanceRègles de déploiement
utilise
Utilise
Contexte
Possède
Utilise
possède
Created with Poseidon for UML Community Edition. Not for Commercial Use.
8
Ressource
entité deployable Site de déploiement
Activité déploiement
possède+*
ContraintesPropriétés
*
possède
effectuée dans
Politique
Descripteur
* *
*
utiliseeffectuée sur
possède
possède+
DépendanceRègles de déploiement
utilise
Utilise
Contexte
Possède
Utilise
possède
Created with Poseidon for UML Community Edition. Not for Commercial Use.
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
1 Le deploiement
2 Les dependances d’installation
3 Conclusion et perspectives
10
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Pourquoi l’etude des dependances ?
Permettre le deploiement automatique.
Verifier la compatibilite d’un composant avec :
son environnement.les differents composants.
Assurer la coherence :
intra-composant.inter-composants.
Detecter les situations d’interblocage lies au deploiement descomposants.
11
Exemple du serveur de messagerie
postfixsize ≥ 1380
¬SM∧ lib
pmail ∨ MUA
Amavis AV
MTA
fetchmailsize ≥ 852
¬ poclient ∧ lib
ServeurPop
MTA
Popclient
procmailfetchmail ∨ MTA
¬ Smanager ∧ lib
size ≥ 248
Spam ∧ Sanitizer AntiSpam
MDA
Sylpheedsize ≥ 1508
¬ SylpheedDoc ∧ lib
MDA
spell-Dict Check
MUA
MTA MDA MUA AV AntiSpam
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les predicats
true
[v ≥ V ]
S
¬P
P1 ∧ P2
P1 ∨ P2
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les predicats
true
[v ≥ V ]
S
¬P
P1 ∧ P2
P1 ∨ P2
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les predicats
true
[v ≥ V ]
S
¬P
P1 ∧ P2
P1 ∨ P2
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les predicats
true
[v ≥ V ]
S
¬P
P1 ∧ P2
P1 ∨ P2
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les predicats
true
[v ≥ V ]
S
¬P
P1 ∧ P2
P1 ∨ P2
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les predicats
true
[v ≥ V ]
S
¬P
P1 ∧ P2
P1 ∨ P2
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les dependances
D1 • D2
?D
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les dependances
D1 • D2
?D
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Les predicats et les dependances
Les dependances
D1 • D2
?D
postfixsize ≥ 1380
Amavis
¬sendmail ∧ lib
procmail ∨ MUA
D1 :
D2 : MTA
AV-MTA
13
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Le principe de l’installation
Mise à jourcontexte
non oui
⇒ (S, I)
composantDependances du Contexte
(D) Ctx(E , SD, SI )
InstallabiliteCtx ` D
Fin
Installation
Ctx ` D
14
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Le principe de l’installation
Mise à jourcontexte
ouinon
⇒ (S, I)
composantDependances du Contexte
(D) Ctx(E , SD, SI )
Installation
Ctx ` D
InstallabiliteCtx ` D
Fin
14
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Le principe de l’installation
Mise à jourcontexte
ouinon
⇒ (S, I)
composantDependances du Contexte
(D) Ctx(E , SD, SI )
Installation
Ctx ` D
InstallabiliteCtx ` D
Fin
14
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Le principe de l’installation
Mise à jourcontexte
non oui
⇒ (S, I)
composantDependances du Contexte
(D) Ctx(E , SD, SI )
InstallabiliteCtx ` D
Fin
Installation
Ctx ` D
14
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Le principe de l’installation
Mise à jourcontexte
non oui
composantDependances du Contexte
(D) Ctx(E , SD, SI )
InstallabiliteCtx ` D
Fin
Installation
Ctx ` D⇒ (S, I)
14
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
L’interet de l’etude des dependancesFormalisation des dependances d’installationLe principe de l’installation
Le principe de l’installation
non ouiMise à jourcontexte
composantDependances du Contexte
(D) Ctx(E , SD, SI )
InstallabiliteCtx ` D
Fin
Installation
Ctx ` D⇒ (S, I)
14
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
1 Le deploiement
2 Les dependances d’installation
3 Conclusion et perspectives
15
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
Conclusion
Caracterisation des dependances d’installation des composants
Traitement de l’installation avec la distinction entre :
Les dependances obligatoires, optionnelles et negatives.l’installabilite et l’installation effective des services.
Preuve formelle d’installabilite et d’installation.
16
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
Perspectives
Gestion de l’assemblage de composants.
Gestion de l’evolution du systeme.
Prouver les systemes de deduction proposes.
Integrer la notion de proprietes non-fonctionnelles.
Etudier les autres activites de deploiement.
17
IntroductionLe deploiement
Les dependances d’installationConclusion et perspectives
Questions
Merci de m’avoir ecoute
18