SlideShare une entreprise Scribd logo
L’industrialisation
autour de
Zimbra
Jeudi 9 mars 2017
dans le monde
de l’Open Source.
2
L’industrialisation autour de Zimbra
dans le monde de l’Open Source
Soliman Hindy
soliman.hindy@cloud-temple.com
Version 1.0, 2017-03-09
Problématique
OS Orchestration
Historiser le
code
Questions / réponses
Migration
d’une
plateforme
3 1 – Industrialisation : la problématique
Comment s’assurer que les serveurs sont conformes aux spécifications ?
Comment répondre aux besoins professionnels autour de la messagerie ?
4 2 – Préparation de l’OS
Stockage / PartitionnementPhysique / virtuel
OS
Monitoring
Sécurité
Système
d’exploitation
5 3 – Installation serveur Zimbra : implications
# ./install.sh
Exécution du script
Installation
des
dépendances
Conformité
DNS,
/etc/hosts, etc
Exécution des
commandes de
post installation
Tuner
l’installation
6 4 – Personnalisation de l’installation
Skins
Zimlets
Logos
Certificats
SSL
SSO
Reporting
Supervision
7 Le futur c’est quoi ?
?
?
?
?
?
?
?
Comment m’assurer
d’avoir une plateforme
facile à faire évoluer ?
Comment maintenir ?
Comment modifier
l’infrastructure sans casser
l’existant ?
Comment assurer la
conformité avec les
spécifications ?
Améliorer le processus existant ?
8 5 – Outils d’orchestration
Environnement
s hétérogènes
Gérer des
déploiement
s
Fiabiliser les
processus
Automatiser
son travail
9 5 – Outils d’orchestration
# cat /root/bin/toto.sh
zmtlsctl both
zmzimletctl install /tmp/com_zimbra_date.zip
zmlocalconfig -e ldap_url="ldap://master:389
ldap://slave:389"
postconf -e smtpd_tls_protocols='!SSLv2,!SSLv3’
zmcontrol restart
# sh /root/bin/toto.sh
Installation
initiale : pas
pour les
modifications
Faire des
comparaisons,
appliquer les
différences
Script
shell
10 5 – Outils d’orchestration
# for i in serveur1 serveur2 … serveurN
do
ssh $i zmzimletctl install /tmp/toto.zip
ssh $i zmprov fc zimlet
ssh $i zmprov fc all
ssh $i zmprov gqu $(zmhostname) > /tmp/gqu.txt
ssh $i zmcontrol restart
done
Boucle for
SSH
11 5 – Outils d’orchestration
# cat /root/response.txt | ./install.sh
Fichier de
réponse
./install.sh
12 5 – Outils d’orchestration
Valeur par
défaut
./install.sh
# ./install.sh [-r <dir> -l <file> -a <file> -u -s -c type -x -h]
[defaultsfile]
13 6 – Un exemple : puppet
Un serveur maître et des serveurs esclaves
Découpage par modules dans /etc/puppet/modules :
- System
- Monitoring
- Zimbra
- Security
Un serveur
maître
Des serveurs
esclaves
Des modules
Ruby
14 6 – Un exemple : Puppet
Chaque module possède trois dossiers :
- files
- manifests
- templates
Définition de
module
Fichiers
Recettes
Des modèles
15 7 –Puppet : installation
RHEL
Ubuntu Server
CentOS
# apt-get install puppet
# apt-get install puppetmaster
# yum install puppet
# yum install puppetmaster
16 6 – Un exemple : Puppet
package { 'openssh': ensure => present, }
file { '/opt/zimbra/conf/store.sh':
ensure => file,
mode => '0755',
owner => 'zimbra',
group => 'zimbra',
source => "puppet:///modules/zimbra87/store.sh"
}
Exemple :
manifest
Couche
d’abstraction
17 6 – Un exemple : Puppet
$packages = ["sysstat","pax","sqlite3","unzip","libaio1”,
"libperl5.18"]
package { $packages: ensure => installed }
file {'/root/zcs-
8.7.4_GA_1730.UBUNTU16_64.20170227060845.tgz':
ensure => file,
mode => '0644',
source => "puppet:///modules/zimbra87/zcs-
8.7.4_GA_1730.UBUNTU16_64.20170227060845.tgz"
}
Exemple :
manifest
18 6 – Un exemple : Puppet
# cat /etc/puppet/modules/system/template/hosts.erb
127.0.0.1 localhost
<%=@ipaddress_eth0 %>
<%=@hostname%>.<%=@domain_name %>
<%=@hostname%>
# cat /etc/hosts
127.0.0.1 localhost
10.96.1.42 zstore42.domaine.fr zstore42
Exemple :
template
Utilisation de
variables
19 6 – Un exemple : Puppet
node /^zstored+.domaine.fr/ {
include system::generic
include monitoring::snmpd
include monitoring::nrpe
include zimbra87::ruby
include system::zimbra87
include zimbra87::store
include loghost::zimbrastore87
}
Définition des
serveurs
20 6 – Un exemple : Puppet
# puppet agent –t --noop
# puppet agent -t
Exécution de
l’agent
21 7 – Versionning : git
Historique des
modifications
Modules
22 Versionning : git
# git status
# git add /etc/puppet/modules/zimbra87
# git commit −m ’first commit'
# git push
# git status
# git log
Quelques
commandes
git
23 8 – Notre Github : https://github.com/cloud-temple
Contribuer à l’Open Source
Forker le code
24 9 – Migration d’une plateforme Zimbra
Une
plateforme
source, version
N
Module
puppet en
version N
Plateforme
destination en
N+1
Module
puppet en
version N+1
25
node zstore43.domaine.fr {
include system::generic
include monitoring::snmpd
include monitoring::nrpe
include zimbra874::ruby
include system::zimbra874
include zimbra874::store
include loghost::zimbrastore874
}
Définition des
serveurs
Une nouvelle
classe
874
9 – Migration d’une plateforme Zimbra
26 10 – Tableau comparatif outils orchestration
Nom Licence Langage Agent ? Communautaire Entreprise
Puppet Apache License Ruby Oui Oui Oui
Ansible GPL3 Python Non Oui Oui
Chef Apache License Ruby Oui Oui Oui
Saltstack Apache License Python Non Oui Oui
Choix du
langage
Documentatio
n
27 10 – Quelques ressources
J’ai encore
2/3 questions ?
puppet : https://docs.puppet.com/puppet/
git : https://git-scm.com/doc
Github Cloud Temple : https://github.com/cloud-temple
28 10 – Questions / Réponses
J’ai encore
2/3 questions ?
Thanks For Watching

Contenu connexe

Tendances

L'innovation pour les PME, un concept à ré-innover
L'innovation pour les PME, un concept à ré-innover L'innovation pour les PME, un concept à ré-innover
L'innovation pour les PME, un concept à ré-innover
IgniteStrasbourg
 
Rapport administration systèmes et supervision réseaux tp4 diabang master1 tr
Rapport administration systèmes et supervision réseaux tp4 diabang master1 trRapport administration systèmes et supervision réseaux tp4 diabang master1 tr
Rapport administration systèmes et supervision réseaux tp4 diabang master1 tr
Cheikh Tidiane DIABANG
 
Prez FreeBSD jail
Prez FreeBSD jailPrez FreeBSD jail
Prez FreeBSD jail
Loïc Tosser
 
Mysql Apche PHP sous linux
Mysql Apche PHP sous linuxMysql Apche PHP sous linux
Mysql Apche PHP sous linux
Khalid ALLILI
 
Exposé open embedded
Exposé open embeddedExposé open embedded
Exposé open embedded
Ayoub Rouzi
 
Rapport installation round cube centos 7
Rapport installation round cube centos 7Rapport installation round cube centos 7
Rapport installation round cube centos 7
Mame Cheikh Ibra Niang
 
Rapport DVWA: File Upload
Rapport DVWA: File UploadRapport DVWA: File Upload
Rapport DVWA: File Upload
Ayoub Rouzi
 
Rapport Kernel Linux - Configuration – Compilation & installation
Rapport Kernel Linux - Configuration –  Compilation & installationRapport Kernel Linux - Configuration –  Compilation & installation
Rapport Kernel Linux - Configuration – Compilation & installation
Ayoub Rouzi
 
Sécuriser un serveur web
Sécuriser un serveur webSécuriser un serveur web
Sécuriser un serveur web
Taoufik JABBARI
 
Docker en production et la sécurité … _
Docker en production   et la sécurité …  _Docker en production   et la sécurité …  _
Docker en production et la sécurité … _
Jean-Marc Meessen
 
Activer les connexions à distance my sql
Activer les connexions à distance my sqlActiver les connexions à distance my sql
Activer les connexions à distance my sql
Ennakhli Said
 
Kernel Linux - Configuration de Wyse - TP wyse x30
Kernel Linux - Configuration de Wyse - TP wyse x30Kernel Linux - Configuration de Wyse - TP wyse x30
Kernel Linux - Configuration de Wyse - TP wyse x30
Ayoub Rouzi
 
Odoo installation et configuration avancée
Odoo installation et configuration avancéeOdoo installation et configuration avancée
Odoo installation et configuration avancée
Yasine LAKHDARI
 
Linux_best_practices
Linux_best_practicesLinux_best_practices
Linux_best_practices
TinarivosoaAbaniaina
 
Serveur Zabbix
Serveur ZabbixServeur Zabbix
Serveur Zabbix
Damien Morisseau
 
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTourDéployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Pierre Fay
 
Tuto sauvegardes sous windows 10
Tuto sauvegardes sous windows 10Tuto sauvegardes sous windows 10
Tuto sauvegardes sous windows 10
Retraité de ETA SA Grenchen
 

Tendances (20)

L'innovation pour les PME, un concept à ré-innover
L'innovation pour les PME, un concept à ré-innover L'innovation pour les PME, un concept à ré-innover
L'innovation pour les PME, un concept à ré-innover
 
Rapport administration systèmes et supervision réseaux tp4 diabang master1 tr
Rapport administration systèmes et supervision réseaux tp4 diabang master1 trRapport administration systèmes et supervision réseaux tp4 diabang master1 tr
Rapport administration systèmes et supervision réseaux tp4 diabang master1 tr
 
Prez FreeBSD jail
Prez FreeBSD jailPrez FreeBSD jail
Prez FreeBSD jail
 
Mysql Apche PHP sous linux
Mysql Apche PHP sous linuxMysql Apche PHP sous linux
Mysql Apche PHP sous linux
 
Exposé open embedded
Exposé open embeddedExposé open embedded
Exposé open embedded
 
Rapport installation round cube centos 7
Rapport installation round cube centos 7Rapport installation round cube centos 7
Rapport installation round cube centos 7
 
Rapport DVWA: File Upload
Rapport DVWA: File UploadRapport DVWA: File Upload
Rapport DVWA: File Upload
 
Snort implementation
Snort implementationSnort implementation
Snort implementation
 
Rapport Kernel Linux - Configuration – Compilation & installation
Rapport Kernel Linux - Configuration –  Compilation & installationRapport Kernel Linux - Configuration –  Compilation & installation
Rapport Kernel Linux - Configuration – Compilation & installation
 
Nagios twil
Nagios twilNagios twil
Nagios twil
 
Sécuriser un serveur web
Sécuriser un serveur webSécuriser un serveur web
Sécuriser un serveur web
 
Docker en production et la sécurité … _
Docker en production   et la sécurité …  _Docker en production   et la sécurité …  _
Docker en production et la sécurité … _
 
Ze cloud data-aspectize
Ze cloud   data-aspectizeZe cloud   data-aspectize
Ze cloud data-aspectize
 
Activer les connexions à distance my sql
Activer les connexions à distance my sqlActiver les connexions à distance my sql
Activer les connexions à distance my sql
 
Kernel Linux - Configuration de Wyse - TP wyse x30
Kernel Linux - Configuration de Wyse - TP wyse x30Kernel Linux - Configuration de Wyse - TP wyse x30
Kernel Linux - Configuration de Wyse - TP wyse x30
 
Odoo installation et configuration avancée
Odoo installation et configuration avancéeOdoo installation et configuration avancée
Odoo installation et configuration avancée
 
Linux_best_practices
Linux_best_practicesLinux_best_practices
Linux_best_practices
 
Serveur Zabbix
Serveur ZabbixServeur Zabbix
Serveur Zabbix
 
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTourDéployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
 
Tuto sauvegardes sous windows 10
Tuto sauvegardes sous windows 10Tuto sauvegardes sous windows 10
Tuto sauvegardes sous windows 10
 

En vedette

Deisy camila montenegro chaux
Deisy camila montenegro chauxDeisy camila montenegro chaux
Deisy camila montenegro chaux
Camilaqueen
 
PROXEMICS
PROXEMICSPROXEMICS
PROXEMICS
pradip shinde
 
Evaluation of Land Suitability for Stone Pine (Pinus pinea) plantation in Leb...
Evaluation of Land Suitability for Stone Pine (Pinus pinea) plantation in Leb...Evaluation of Land Suitability for Stone Pine (Pinus pinea) plantation in Leb...
Evaluation of Land Suitability for Stone Pine (Pinus pinea) plantation in Leb...
IJEAB
 
Maldonado, marquez, lucero presentacion final
Maldonado, marquez, lucero presentacion finalMaldonado, marquez, lucero presentacion final
Maldonado, marquez, lucero presentacion final
orgalys lucero
 
Apresentação go express março2017
Apresentação go express março2017Apresentação go express março2017
Apresentação go express março2017
Leonor Bravo
 
Top 4 Travel Destinations for 2017
Top 4 Travel Destinations for 2017Top 4 Travel Destinations for 2017
Top 4 Travel Destinations for 2017
Muhib Zaman
 
OBIS, the Ocean Biogeographic Information System, as a data sharing platform ...
OBIS, the Ocean Biogeographic Information System, as a data sharing platform ...OBIS, the Ocean Biogeographic Information System, as a data sharing platform ...
OBIS, the Ocean Biogeographic Information System, as a data sharing platform ...
UNESCO-IOC/IODE Ocean Biogeographic Information System
 
Effect of plant growth promoting rhizobacterial (PGPR) inoculation on growth ...
Effect of plant growth promoting rhizobacterial (PGPR) inoculation on growth ...Effect of plant growth promoting rhizobacterial (PGPR) inoculation on growth ...
Effect of plant growth promoting rhizobacterial (PGPR) inoculation on growth ...
IJEAB
 
Contenidos para certificados de profesionalidad y formación profesional
Contenidos para certificados de profesionalidad y formación profesionalContenidos para certificados de profesionalidad y formación profesional
Contenidos para certificados de profesionalidad y formación profesional
Veronica Sanchez
 
Regulation of Seed Germination and the Role of Aquaporins under Abiotic Stress
Regulation of Seed Germination and the Role of Aquaporins under Abiotic StressRegulation of Seed Germination and the Role of Aquaporins under Abiotic Stress
Regulation of Seed Germination and the Role of Aquaporins under Abiotic Stress
IJEAB
 
Integrated Weed Management Effect on Weeds and Seed Cotton Yield
Integrated Weed Management Effect on Weeds and Seed Cotton YieldIntegrated Weed Management Effect on Weeds and Seed Cotton Yield
Integrated Weed Management Effect on Weeds and Seed Cotton Yield
IJEAB
 
Sales and distribution - FMCG
Sales and distribution - FMCGSales and distribution - FMCG
Sales and distribution - FMCG
Abhishek Mishra
 
How to-write-a-summary
How to-write-a-summaryHow to-write-a-summary
How to-write-a-summary
pilarpsegundo
 
Environmental Changes and Effects on a Population of Smooth Newt Lissotriton ...
Environmental Changes and Effects on a Population of Smooth Newt Lissotriton ...Environmental Changes and Effects on a Population of Smooth Newt Lissotriton ...
Environmental Changes and Effects on a Population of Smooth Newt Lissotriton ...
IJEAB
 
Los virus
Los virus Los virus
Los virus
Daniela Marin
 
GRAFITE E INSTALAÇÃO
GRAFITE  E INSTALAÇÃOGRAFITE  E INSTALAÇÃO
GRAFITE E INSTALAÇÃO
Cristiane Seibt
 
Sept 2017 static routing and packet forwarding
Sept 2017    static routing and packet forwardingSept 2017    static routing and packet forwarding
Sept 2017 static routing and packet forwarding
shahin raj
 
Como crear un videojuego
Como crear un videojuegoComo crear un videojuego
Como crear un videojuego
angief31
 
NPM 450-Fully Automatic PMCC-ASTM D 93
NPM 450-Fully Automatic PMCC-ASTM D 93NPM 450-Fully Automatic PMCC-ASTM D 93
NPM 450-Fully Automatic PMCC-ASTM D 93
Prasanth Anandan
 

En vedette (19)

Deisy camila montenegro chaux
Deisy camila montenegro chauxDeisy camila montenegro chaux
Deisy camila montenegro chaux
 
PROXEMICS
PROXEMICSPROXEMICS
PROXEMICS
 
Evaluation of Land Suitability for Stone Pine (Pinus pinea) plantation in Leb...
Evaluation of Land Suitability for Stone Pine (Pinus pinea) plantation in Leb...Evaluation of Land Suitability for Stone Pine (Pinus pinea) plantation in Leb...
Evaluation of Land Suitability for Stone Pine (Pinus pinea) plantation in Leb...
 
Maldonado, marquez, lucero presentacion final
Maldonado, marquez, lucero presentacion finalMaldonado, marquez, lucero presentacion final
Maldonado, marquez, lucero presentacion final
 
Apresentação go express março2017
Apresentação go express março2017Apresentação go express março2017
Apresentação go express março2017
 
Top 4 Travel Destinations for 2017
Top 4 Travel Destinations for 2017Top 4 Travel Destinations for 2017
Top 4 Travel Destinations for 2017
 
OBIS, the Ocean Biogeographic Information System, as a data sharing platform ...
OBIS, the Ocean Biogeographic Information System, as a data sharing platform ...OBIS, the Ocean Biogeographic Information System, as a data sharing platform ...
OBIS, the Ocean Biogeographic Information System, as a data sharing platform ...
 
Effect of plant growth promoting rhizobacterial (PGPR) inoculation on growth ...
Effect of plant growth promoting rhizobacterial (PGPR) inoculation on growth ...Effect of plant growth promoting rhizobacterial (PGPR) inoculation on growth ...
Effect of plant growth promoting rhizobacterial (PGPR) inoculation on growth ...
 
Contenidos para certificados de profesionalidad y formación profesional
Contenidos para certificados de profesionalidad y formación profesionalContenidos para certificados de profesionalidad y formación profesional
Contenidos para certificados de profesionalidad y formación profesional
 
Regulation of Seed Germination and the Role of Aquaporins under Abiotic Stress
Regulation of Seed Germination and the Role of Aquaporins under Abiotic StressRegulation of Seed Germination and the Role of Aquaporins under Abiotic Stress
Regulation of Seed Germination and the Role of Aquaporins under Abiotic Stress
 
Integrated Weed Management Effect on Weeds and Seed Cotton Yield
Integrated Weed Management Effect on Weeds and Seed Cotton YieldIntegrated Weed Management Effect on Weeds and Seed Cotton Yield
Integrated Weed Management Effect on Weeds and Seed Cotton Yield
 
Sales and distribution - FMCG
Sales and distribution - FMCGSales and distribution - FMCG
Sales and distribution - FMCG
 
How to-write-a-summary
How to-write-a-summaryHow to-write-a-summary
How to-write-a-summary
 
Environmental Changes and Effects on a Population of Smooth Newt Lissotriton ...
Environmental Changes and Effects on a Population of Smooth Newt Lissotriton ...Environmental Changes and Effects on a Population of Smooth Newt Lissotriton ...
Environmental Changes and Effects on a Population of Smooth Newt Lissotriton ...
 
Los virus
Los virus Los virus
Los virus
 
GRAFITE E INSTALAÇÃO
GRAFITE  E INSTALAÇÃOGRAFITE  E INSTALAÇÃO
GRAFITE E INSTALAÇÃO
 
Sept 2017 static routing and packet forwarding
Sept 2017    static routing and packet forwardingSept 2017    static routing and packet forwarding
Sept 2017 static routing and packet forwarding
 
Como crear un videojuego
Como crear un videojuegoComo crear un videojuego
Como crear un videojuego
 
NPM 450-Fully Automatic PMCC-ASTM D 93
NPM 450-Fully Automatic PMCC-ASTM D 93NPM 450-Fully Automatic PMCC-ASTM D 93
NPM 450-Fully Automatic PMCC-ASTM D 93
 

Similaire à 20170222 zimbra et-l'industrialisation-v2

OpenNMS
OpenNMSOpenNMS
Rapport systéme embarqué busybox
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Rapport systéme embarqué busybox
Ayoub Rouzi
 
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
[DRAFT] Utiliser VmWare pour l'installation d'un AlfrescoPASCAL Jean Marie
 
Installation Et Configuration De Monkey Spider
Installation Et Configuration De Monkey SpiderInstallation Et Configuration De Monkey Spider
Installation Et Configuration De Monkey Spider
Mohamed Ben Bouzid
 
Rapport openembedded
Rapport openembeddedRapport openembedded
Rapport openembedded
Ayoub Rouzi
 
Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm
 
Install arch ultrabook full luks ssd
Install arch ultrabook full luks ssdInstall arch ultrabook full luks ssd
Install arch ultrabook full luks ssd
Anthony Le Goff
 
PostgreSQL sous linux
PostgreSQL sous linuxPostgreSQL sous linux
PostgreSQL sous linux
Khalid ALLILI
 
Boot
BootBoot
Premiers pas avec snort
Premiers pas avec snortPremiers pas avec snort
Premiers pas avec snort
Fathi Ben Nasr
 
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOps@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Olivier DASINI
 
Expozimbra
ExpozimbraExpozimbra
Expozimbra
nicolastireur
 
Linux Scripting
Linux Scripting Linux Scripting
Linux Scripting
Open Source School
 
systemd red hat linux examen Ex200 rh124
systemd red hat linux examen Ex200 rh124systemd red hat linux examen Ex200 rh124
systemd red hat linux examen Ex200 rh124
loffyhacker
 
Sécuriser votre système GNU/Linux
Sécuriser votre système GNU/LinuxSécuriser votre système GNU/Linux
Sécuriser votre système GNU/Linux
Asher256
 
Mise en place de Nagios3 pas à pas
Mise en place de Nagios3 pas à pas Mise en place de Nagios3 pas à pas
Mise en place de Nagios3 pas à pas
yassine87
 
PostgreSQL sous linux
PostgreSQL sous linuxPostgreSQL sous linux
PostgreSQL sous linux
Khalid ALLILI
 
06 02 opérations de sauvegarde
06 02 opérations de sauvegarde06 02 opérations de sauvegarde
06 02 opérations de sauvegardeNoël
 
Chiffrer et sécuriser MariaDB
Chiffrer et sécuriser MariaDBChiffrer et sécuriser MariaDB
Chiffrer et sécuriser MariaDB
Christophe Villeneuve
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5
Mame Cheikh Ibra Niang
 

Similaire à 20170222 zimbra et-l'industrialisation-v2 (20)

OpenNMS
OpenNMSOpenNMS
OpenNMS
 
Rapport systéme embarqué busybox
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Rapport systéme embarqué busybox
 
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
[DRAFT] Utiliser VmWare pour l'installation d'un Alfresco
 
Installation Et Configuration De Monkey Spider
Installation Et Configuration De Monkey SpiderInstallation Et Configuration De Monkey Spider
Installation Et Configuration De Monkey Spider
 
Rapport openembedded
Rapport openembeddedRapport openembedded
Rapport openembedded
 
Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et Administration
 
Install arch ultrabook full luks ssd
Install arch ultrabook full luks ssdInstall arch ultrabook full luks ssd
Install arch ultrabook full luks ssd
 
PostgreSQL sous linux
PostgreSQL sous linuxPostgreSQL sous linux
PostgreSQL sous linux
 
Boot
BootBoot
Boot
 
Premiers pas avec snort
Premiers pas avec snortPremiers pas avec snort
Premiers pas avec snort
 
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOps@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
 
Expozimbra
ExpozimbraExpozimbra
Expozimbra
 
Linux Scripting
Linux Scripting Linux Scripting
Linux Scripting
 
systemd red hat linux examen Ex200 rh124
systemd red hat linux examen Ex200 rh124systemd red hat linux examen Ex200 rh124
systemd red hat linux examen Ex200 rh124
 
Sécuriser votre système GNU/Linux
Sécuriser votre système GNU/LinuxSécuriser votre système GNU/Linux
Sécuriser votre système GNU/Linux
 
Mise en place de Nagios3 pas à pas
Mise en place de Nagios3 pas à pas Mise en place de Nagios3 pas à pas
Mise en place de Nagios3 pas à pas
 
PostgreSQL sous linux
PostgreSQL sous linuxPostgreSQL sous linux
PostgreSQL sous linux
 
06 02 opérations de sauvegarde
06 02 opérations de sauvegarde06 02 opérations de sauvegarde
06 02 opérations de sauvegarde
 
Chiffrer et sécuriser MariaDB
Chiffrer et sécuriser MariaDBChiffrer et sécuriser MariaDB
Chiffrer et sécuriser MariaDB
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5
 

Dernier

JTC 2024 - Approche collective de la santé
JTC 2024 - Approche collective de la santéJTC 2024 - Approche collective de la santé
JTC 2024 - Approche collective de la santé
Institut de l'Elevage - Idele
 
05-La génétique, un levier majeur pour les enjeux à venir
05-La génétique, un levier majeur pour les enjeux à venir05-La génétique, un levier majeur pour les enjeux à venir
05-La génétique, un levier majeur pour les enjeux à venir
Institut de l'Elevage - Idele
 
JTC 2024 - Pour une traite de qualité, mieux comprendre l’interface trayon-ma...
JTC 2024 - Pour une traite de qualité, mieux comprendre l’interface trayon-ma...JTC 2024 - Pour une traite de qualité, mieux comprendre l’interface trayon-ma...
JTC 2024 - Pour une traite de qualité, mieux comprendre l’interface trayon-ma...
Institut de l'Elevage - Idele
 
BeeBOP diaporama webinaire : Et si l’IA permettait de compléter l’observatio...
BeeBOP diaporama webinaire : Et si l’IA permettait de compléter l’observatio...BeeBOP diaporama webinaire : Et si l’IA permettait de compléter l’observatio...
BeeBOP diaporama webinaire : Et si l’IA permettait de compléter l’observatio...
Institut de l'Elevage - Idele
 
RAPPORT DE STAGE sur CHANTIER BTP (by BR Engineering ) (1) (1).pdf
RAPPORT DE STAGE  sur CHANTIER  BTP (by BR Engineering ) (1) (1).pdfRAPPORT DE STAGE  sur CHANTIER  BTP (by BR Engineering ) (1) (1).pdf
RAPPORT DE STAGE sur CHANTIER BTP (by BR Engineering ) (1) (1).pdf
fatima413951
 
Reconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la fermeReconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la ferme
Institut de l'Elevage - Idele
 
2024 03 27 JTC actualités C Perrot (idele).pdf
2024 03 27 JTC actualités C Perrot (idele).pdf2024 03 27 JTC actualités C Perrot (idele).pdf
2024 03 27 JTC actualités C Perrot (idele).pdf
idelewebmestre
 
Accompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermièreAccompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermière
Institut de l'Elevage - Idele
 
JTC 2024 - Atelier APaChe-Pâturage des arbres par les chèvres
JTC 2024 - Atelier APaChe-Pâturage des arbres par les chèvresJTC 2024 - Atelier APaChe-Pâturage des arbres par les chèvres
JTC 2024 - Atelier APaChe-Pâturage des arbres par les chèvres
Institut de l'Elevage - Idele
 
JTC 2024 - Actualités sur le bien-être animal
JTC 2024 - Actualités sur le bien-être animalJTC 2024 - Actualités sur le bien-être animal
JTC 2024 - Actualités sur le bien-être animal
Institut de l'Elevage - Idele
 
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Institut de l'Elevage - Idele
 
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivoresCOUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
Institut de l'Elevage - Idele
 
JTC_2024_TC Bâtiment et bien-être estival.pdf
JTC_2024_TC Bâtiment et bien-être estival.pdfJTC_2024_TC Bâtiment et bien-être estival.pdf
JTC_2024_TC Bâtiment et bien-être estival.pdf
idelewebmestre
 
Accompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de productionAccompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de production
Institut de l'Elevage - Idele
 

Dernier (14)

JTC 2024 - Approche collective de la santé
JTC 2024 - Approche collective de la santéJTC 2024 - Approche collective de la santé
JTC 2024 - Approche collective de la santé
 
05-La génétique, un levier majeur pour les enjeux à venir
05-La génétique, un levier majeur pour les enjeux à venir05-La génétique, un levier majeur pour les enjeux à venir
05-La génétique, un levier majeur pour les enjeux à venir
 
JTC 2024 - Pour une traite de qualité, mieux comprendre l’interface trayon-ma...
JTC 2024 - Pour une traite de qualité, mieux comprendre l’interface trayon-ma...JTC 2024 - Pour une traite de qualité, mieux comprendre l’interface trayon-ma...
JTC 2024 - Pour une traite de qualité, mieux comprendre l’interface trayon-ma...
 
BeeBOP diaporama webinaire : Et si l’IA permettait de compléter l’observatio...
BeeBOP diaporama webinaire : Et si l’IA permettait de compléter l’observatio...BeeBOP diaporama webinaire : Et si l’IA permettait de compléter l’observatio...
BeeBOP diaporama webinaire : Et si l’IA permettait de compléter l’observatio...
 
RAPPORT DE STAGE sur CHANTIER BTP (by BR Engineering ) (1) (1).pdf
RAPPORT DE STAGE  sur CHANTIER  BTP (by BR Engineering ) (1) (1).pdfRAPPORT DE STAGE  sur CHANTIER  BTP (by BR Engineering ) (1) (1).pdf
RAPPORT DE STAGE sur CHANTIER BTP (by BR Engineering ) (1) (1).pdf
 
Reconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la fermeReconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la ferme
 
2024 03 27 JTC actualités C Perrot (idele).pdf
2024 03 27 JTC actualités C Perrot (idele).pdf2024 03 27 JTC actualités C Perrot (idele).pdf
2024 03 27 JTC actualités C Perrot (idele).pdf
 
Accompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermièreAccompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermière
 
JTC 2024 - Atelier APaChe-Pâturage des arbres par les chèvres
JTC 2024 - Atelier APaChe-Pâturage des arbres par les chèvresJTC 2024 - Atelier APaChe-Pâturage des arbres par les chèvres
JTC 2024 - Atelier APaChe-Pâturage des arbres par les chèvres
 
JTC 2024 - Actualités sur le bien-être animal
JTC 2024 - Actualités sur le bien-être animalJTC 2024 - Actualités sur le bien-être animal
JTC 2024 - Actualités sur le bien-être animal
 
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
 
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivoresCOUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
 
JTC_2024_TC Bâtiment et bien-être estival.pdf
JTC_2024_TC Bâtiment et bien-être estival.pdfJTC_2024_TC Bâtiment et bien-être estival.pdf
JTC_2024_TC Bâtiment et bien-être estival.pdf
 
Accompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de productionAccompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de production
 

20170222 zimbra et-l'industrialisation-v2

  • 1. L’industrialisation autour de Zimbra Jeudi 9 mars 2017 dans le monde de l’Open Source.
  • 2. 2 L’industrialisation autour de Zimbra dans le monde de l’Open Source Soliman Hindy soliman.hindy@cloud-temple.com Version 1.0, 2017-03-09 Problématique OS Orchestration Historiser le code Questions / réponses Migration d’une plateforme
  • 3. 3 1 – Industrialisation : la problématique Comment s’assurer que les serveurs sont conformes aux spécifications ? Comment répondre aux besoins professionnels autour de la messagerie ?
  • 4. 4 2 – Préparation de l’OS Stockage / PartitionnementPhysique / virtuel OS Monitoring Sécurité Système d’exploitation
  • 5. 5 3 – Installation serveur Zimbra : implications # ./install.sh Exécution du script Installation des dépendances Conformité DNS, /etc/hosts, etc Exécution des commandes de post installation Tuner l’installation
  • 6. 6 4 – Personnalisation de l’installation Skins Zimlets Logos Certificats SSL SSO Reporting Supervision
  • 7. 7 Le futur c’est quoi ? ? ? ? ? ? ? ? Comment m’assurer d’avoir une plateforme facile à faire évoluer ? Comment maintenir ? Comment modifier l’infrastructure sans casser l’existant ? Comment assurer la conformité avec les spécifications ? Améliorer le processus existant ?
  • 8. 8 5 – Outils d’orchestration Environnement s hétérogènes Gérer des déploiement s Fiabiliser les processus Automatiser son travail
  • 9. 9 5 – Outils d’orchestration # cat /root/bin/toto.sh zmtlsctl both zmzimletctl install /tmp/com_zimbra_date.zip zmlocalconfig -e ldap_url="ldap://master:389 ldap://slave:389" postconf -e smtpd_tls_protocols='!SSLv2,!SSLv3’ zmcontrol restart # sh /root/bin/toto.sh Installation initiale : pas pour les modifications Faire des comparaisons, appliquer les différences Script shell
  • 10. 10 5 – Outils d’orchestration # for i in serveur1 serveur2 … serveurN do ssh $i zmzimletctl install /tmp/toto.zip ssh $i zmprov fc zimlet ssh $i zmprov fc all ssh $i zmprov gqu $(zmhostname) > /tmp/gqu.txt ssh $i zmcontrol restart done Boucle for SSH
  • 11. 11 5 – Outils d’orchestration # cat /root/response.txt | ./install.sh Fichier de réponse ./install.sh
  • 12. 12 5 – Outils d’orchestration Valeur par défaut ./install.sh # ./install.sh [-r <dir> -l <file> -a <file> -u -s -c type -x -h] [defaultsfile]
  • 13. 13 6 – Un exemple : puppet Un serveur maître et des serveurs esclaves Découpage par modules dans /etc/puppet/modules : - System - Monitoring - Zimbra - Security Un serveur maître Des serveurs esclaves Des modules Ruby
  • 14. 14 6 – Un exemple : Puppet Chaque module possède trois dossiers : - files - manifests - templates Définition de module Fichiers Recettes Des modèles
  • 15. 15 7 –Puppet : installation RHEL Ubuntu Server CentOS # apt-get install puppet # apt-get install puppetmaster # yum install puppet # yum install puppetmaster
  • 16. 16 6 – Un exemple : Puppet package { 'openssh': ensure => present, } file { '/opt/zimbra/conf/store.sh': ensure => file, mode => '0755', owner => 'zimbra', group => 'zimbra', source => "puppet:///modules/zimbra87/store.sh" } Exemple : manifest Couche d’abstraction
  • 17. 17 6 – Un exemple : Puppet $packages = ["sysstat","pax","sqlite3","unzip","libaio1”, "libperl5.18"] package { $packages: ensure => installed } file {'/root/zcs- 8.7.4_GA_1730.UBUNTU16_64.20170227060845.tgz': ensure => file, mode => '0644', source => "puppet:///modules/zimbra87/zcs- 8.7.4_GA_1730.UBUNTU16_64.20170227060845.tgz" } Exemple : manifest
  • 18. 18 6 – Un exemple : Puppet # cat /etc/puppet/modules/system/template/hosts.erb 127.0.0.1 localhost <%=@ipaddress_eth0 %> <%=@hostname%>.<%=@domain_name %> <%=@hostname%> # cat /etc/hosts 127.0.0.1 localhost 10.96.1.42 zstore42.domaine.fr zstore42 Exemple : template Utilisation de variables
  • 19. 19 6 – Un exemple : Puppet node /^zstored+.domaine.fr/ { include system::generic include monitoring::snmpd include monitoring::nrpe include zimbra87::ruby include system::zimbra87 include zimbra87::store include loghost::zimbrastore87 } Définition des serveurs
  • 20. 20 6 – Un exemple : Puppet # puppet agent –t --noop # puppet agent -t Exécution de l’agent
  • 21. 21 7 – Versionning : git Historique des modifications Modules
  • 22. 22 Versionning : git # git status # git add /etc/puppet/modules/zimbra87 # git commit −m ’first commit' # git push # git status # git log Quelques commandes git
  • 23. 23 8 – Notre Github : https://github.com/cloud-temple Contribuer à l’Open Source Forker le code
  • 24. 24 9 – Migration d’une plateforme Zimbra Une plateforme source, version N Module puppet en version N Plateforme destination en N+1 Module puppet en version N+1
  • 25. 25 node zstore43.domaine.fr { include system::generic include monitoring::snmpd include monitoring::nrpe include zimbra874::ruby include system::zimbra874 include zimbra874::store include loghost::zimbrastore874 } Définition des serveurs Une nouvelle classe 874 9 – Migration d’une plateforme Zimbra
  • 26. 26 10 – Tableau comparatif outils orchestration Nom Licence Langage Agent ? Communautaire Entreprise Puppet Apache License Ruby Oui Oui Oui Ansible GPL3 Python Non Oui Oui Chef Apache License Ruby Oui Oui Oui Saltstack Apache License Python Non Oui Oui Choix du langage Documentatio n
  • 27. 27 10 – Quelques ressources J’ai encore 2/3 questions ? puppet : https://docs.puppet.com/puppet/ git : https://git-scm.com/doc Github Cloud Temple : https://github.com/cloud-temple
  • 28. 28 10 – Questions / Réponses J’ai encore 2/3 questions ?

Notes de l'éditeur

  1. Bonjour à tous et merci d’être venu assister à cette conférence. Je suis Soliman Hindy et je fais parti de la société Cloud Temple, cela fait environ 10 ans que je travaille autour de la messagerie collaborative Zimbra. Nous avons divisé la séance en deux parties : Présentation sur 40 minutes Questions / réponses sur les 20 minutes restantes
  2. Plan proposé : Installation OS Installation Zimbra Outils d’orchestration Historiser le code Migration d’une plateforme Questions / réponses
  3. Durant cette présentation nous nous proposons d’évoquer le sujet de l’industrialisation de Zimbra dans le monde de l’OpenSource. Si l’on part du constat qu’installer un serveur Zimbra dans son coin sans personnalisation c’est simple mais qu’en est-il quand on doit maintenir plusieurs serveurs ? Comment assurer les mises à jour ? Comment faire évoluer son architecture ? Comment répondre aux besoins de stockage qui augmentent ? Comment s’assurer que les serveurs sont conformes aux spécifications ? Co mment répondre aux besoins professionnels autour de la messagerie ? Nous nous propons de répondre à ces différentes questions durant cette présentation.
  4. Que faut-il pour préparer un serveur Zimbra ? Avant de procéder à l’installation de Zimbra il est nécessaire d’installer un système d’exploitation : Serveur physique ou virtuel Stockage SAN / disques locaux Choix de la distribution L’installer Partitionnement Les bonnes pratiques de sécurité / journalisation Politique de mise à jour de sécurité Monitoring Sauvegarde
  5. Installer un serveur Zimbra c’est réaliser plusieurs opérations : Télécharger l’installeur Lire le fichier release notes Installer les dépendances Conformité des enregistrements DNS Conformité du fichier /etc/hosts Désactivation des firewalls et selinux Exécuter le script ./install.sh Exécution des commandes de post installation Tuner l’installation
  6. A l’étape précédente nous avons réalisé une installation Zimbra mono serveur mais sans aucune personnalisation de celle-ci. De ce fait il est nécessaire de passer à l’étape de personnalisation de notre installation. Parmis les opérations identifiables nous relevons celles-ci : Les skins Les logos Les zimlets L’intégration dans le SI : authentification, SSO, GAL scripts de synchro, reporting, supervision
  7. Finalement on vient de décrire une installation mono serveur et d’effectuer beaucoup d’opérations manuellement. Que se passe-t-il quand on effectue une mise à jour ? L’installeur va remettre pas mal de choses à zéro et il faudra alors reprendre les modifications que nous avons effectuées pour la personnalisation. C’est quelque peu dommage de refaire un travail déjà réalisé par le passé. Peut-on améliorer ce processus ? Peut-on s’assurer que des mises à jour futures nous permettront de garder chaque élément en place ? Comment maintenir ? Comment modifier l’infrastructure sans casser l’existant ? Comment faire évoluer mon architecture ? Comment s’assurer que c’est conforme aux spécifications ?
  8. Dans ce contexte il devient vite indispensable d’avoir un outil d’orchestration. Quelque part un outil d’orchestration a pour but de répondre aux différentes questions que nous nous sommes posés précédemment. Le rôle d’un outil d’orchestration c’est de permettre plusieurs choses : Gérer les déploiements systèmes et applicatifs Fiabiliser les processus Automatiser son travail Interagir sur des environnements hétérogènes
  9. Pour bien comprendre l’intérêt d’un outil d’orchestration on peut regarder comment on ferait sans. Une première piste serait l’utilisation d’un script shell : exécution des commandes en séquentiel. Les problèmes : Fonctionne que pour l’installation initiale mais pas dans le cas d’une modification Le besoin est donc d’avoir un outil capable de faire des comparaisons et appliquer la différence
  10. Une autre possibilité utiliser une boucle for et faire un SSH et exécuter des commandes à distance : Déployer des clés sur les serveurs Écrire à chaque fois les commandes ou en faire un script shell Contrôle d’erreur assez difficile On peut citer d’autres outils un peu plus évolués tels que : Fabric Parallel ssh
  11. Une autre possibilité serait de faire un fichier de réponse et d’envoyer le résultat de celui-ci dans le script d’installation. C’est possible mais cela prend du temps à concevoir. En effet, il est nécessaire de répondre à chaque question et dans le même ordre d’apparition. Généralement cela se fait par essais / erreur jusqu’à temps que l’installation se fasse en automatique.
  12. Il existe une option dans l’installeur qui permet de donner un fichier. Dans la pratique on se rend compte que ce fichier est à retravailler quoiqu’il arrive et ne gagne pas forcément de temps par rapport à la solution précédente.
  13. Dans les prochains slides nous allons parler d’un outil d’orchestration s’appelant puppet qui est écrit en langage ruby. Le principe de fonctionnement : il y a un serveur maître et des serveurs esclaves c’est-à-dire nos serveurs Zimbra. Tout se passe dans /etc/puppet. Un découpage a lieu par modules. Par exemple System Monitoring Zimbra Security
  14. Chaque module possède trois dossiers : files manifests templates Description des différents dossiers : Le dossier files permet de stocker des fichiers ainsi que des répertoires que l’on peut pousser vers le serveur cible Le dossier manifests permet de décrire des recettes qui vont venir s’appliquer sur nos serveurs Le dossier template va permettre de créer des modèles de fichiers qui permettent d’écrire qu’une seule fois un fichier de configuration par exemple
  15. Les serveurs Zimbra que nous installons sont compatibles avec RHEL / CentOS et Ubuntu Server. Puppet est aussi compatible avec ces différentes distributions Linux, et bien d’autres OS. Pour procéder à l’installation il faut distinguer l’installation du master et des serveurs esclaves.
  16. Nous présentons ici deux recettes : l’installation du package openssh Pousser un script shell sur le serveur distant Ici nous avons une couche d’abstraction intéressante qui nous permet de ne pas se poser la question si le package openssh doit être installé via le gestionnaire de package yum ou apt-get, c’est puppet qui va trouver tout seul.
  17. Installation des dépendances Zimbra et vérifier qu’elles sont présentes. Pousser l’archive tgz sur le serveur cible.
  18. Un exemple de template utilisant le langage erb qui signifie Embedded Ruby.
  19. Définition et intégration des serveurs esclaves, dits nodes, pour chaque classe et donc recettes le concernant.
  20. Exécution de l’agent tout à d’abord en mode test puis ensuite en condition réelle
  21. Depuis tout à l’heure nous parlons de puppet et on s’aperçoit que nous manipulons du code et qu’il serait plus qu’important d’en conserver un historique des modifications. Nous manipulons du ruby et par conséquent du code. Nous utilisons pour ce faire des outils de versionning tels que git. Git est un outil de versioning décentralisé qui est capable de garder une trace de toutes les modifications effectuées : par qui et quand. On peut bien sûr faire des diff entre une version A et une version B.
  22. Nous présentons ici quelques commandes git de bases qui permettent : connaître l’état du dépôt Ajouter des fichiers au dépôt Enregister les changemets dans le dépôt envoyer les modifications dans le dépôts connaître l’état du dépôt Voir les actions effectuées sur le dépôts
  23. Code source reversé à la communauté Forker le code Contribuer à l’OpenSource https://github.com/cloud-temple
  24. Définition et intégration des serveurs esclaves, dits nodes, pour chaque classe et donc recettes le concernant. Ici nous utilisons une nouvelle classe puppet qui est en rapport avec la nouvelle version que nous souhaitons déployer.
  25. Présentation de différents outils d’orchestration. Chaque outil a ses avantages et inconvénients. Il convient alors de trouver celui avec lequel vous allez être le plus à l’aise. Par exemple nous avons dans l’entreprise une culture autour du langage ruby cela a déjà orienté notre choix. La documentation présente semblait plus fournie sur puppet à l’époque où le choix a été réalisé.