SlideShare a Scribd company logo
Adding Salt to your Debian systems 
julien.cristau@logilab.fr
What is salt? 
●Remote execution framework 
● Set of tools built around that framework, 
including config management
Why salt? 
●Written in python 
●Using yaml for state description 
●Great documentation 
● Big and growing community 
● Fast-moving
Why not salt? 
● Young and fast-moving 
●Written in python 
●Rolls its own crypto
Terminology 
●Master, minions 
●Grain 
● Pillar 
● State 
● Top file 
●Highstate
Adding a minion 
● Install salt-minion 
http://debian.saltstack.com/ 
● Tell it where the master is 
echo master: salt.logilab.fr > 
/etc/salt/minion.d/master.conf 
● Check and accept the key on the master 
salt-key -a mynewminion
Remote execution 
$ salt '*' test.ping 
$ salt 'db*' cmd.run pg_lsclusters 
$ salt -G 'oscodename:jessie' grains.item  
kernelrelease
Config management 
● Using yaml (by default) to describe desired 
system state 
● Templating with jinja 
● Grains/pillars/... available for targetting and in 
template context
Top file (2) 
/srv/salt/top.sls 
base: 
'*': 
- common 
'role:webserver': 
- match: grain 
- apache
SLS files 
/srv/salt/common.sls 
basepkgs: 
pkg.install: 
- pkgs: 
- vim 
- less 
- debsums
SLS files (continued) 
/srv/salt/apache/init.sls 
apache2: 
- pkg.installed 
- service.running: 
- require: 
- pkg: apache2 
- watch: 
{% for vhost in pillar['vhosts'] %} 
- file: /etc/apache2/sites-available/{{ vhost }} 
{% endfor %}
Other nice things 
● Integration with cloud and virtualization APIs 
with salt-cloud and salt-virt 
● Provisioning, pre-approval of minion keys 
● Automatic highstate on boot or on a schedule

More Related Content

What's hot

Salt Stack - Subhankar Sengupta
Salt Stack - Subhankar SenguptaSalt Stack - Subhankar Sengupta
Salt Stack - Subhankar Sengupta
DevOpsBangalore
 
Mongo db program_installation_guide
Mongo db program_installation_guideMongo db program_installation_guide
Mongo db program_installation_guidePhilip Zhong
 
Gerenciando múltiplas versões do PostgreSQL com pgvm
Gerenciando múltiplas versões do PostgreSQL com pgvmGerenciando múltiplas versões do PostgreSQL com pgvm
Gerenciando múltiplas versões do PostgreSQL com pgvm
Dickson S. Guedes
 
Moving to Git
Moving to GitMoving to Git
Moving to GitTim Moore
 
High availability for puppet - 2016
High availability for puppet - 2016High availability for puppet - 2016
High availability for puppet - 2016
Zack Smith
 
10 Basic Sysadmin Commands for Developers & Operators
10 Basic Sysadmin Commands for Developers & Operators10 Basic Sysadmin Commands for Developers & Operators
10 Basic Sysadmin Commands for Developers & Operators
Rosemary Wang
 

What's hot (6)

Salt Stack - Subhankar Sengupta
Salt Stack - Subhankar SenguptaSalt Stack - Subhankar Sengupta
Salt Stack - Subhankar Sengupta
 
Mongo db program_installation_guide
Mongo db program_installation_guideMongo db program_installation_guide
Mongo db program_installation_guide
 
Gerenciando múltiplas versões do PostgreSQL com pgvm
Gerenciando múltiplas versões do PostgreSQL com pgvmGerenciando múltiplas versões do PostgreSQL com pgvm
Gerenciando múltiplas versões do PostgreSQL com pgvm
 
Moving to Git
Moving to GitMoving to Git
Moving to Git
 
High availability for puppet - 2016
High availability for puppet - 2016High availability for puppet - 2016
High availability for puppet - 2016
 
10 Basic Sysadmin Commands for Developers & Operators
10 Basic Sysadmin Commands for Developers & Operators10 Basic Sysadmin Commands for Developers & Operators
10 Basic Sysadmin Commands for Developers & Operators
 

Viewers also liked

Interactive exploration of complex relational data sets in a web - SemWeb.Pro...
Interactive exploration of complex relational data sets in a web - SemWeb.Pro...Interactive exploration of complex relational data sets in a web - SemWeb.Pro...
Interactive exploration of complex relational data sets in a web - SemWeb.Pro...
Logilab
 
Employee engagement
Employee engagementEmployee engagement
Employee engagement
Nick Bettes Consulting
 
Photography Effects
Photography EffectsPhotography Effects
Photography EffectsAxel Millán
 
Functions & Closures in Scala
Functions & Closures in ScalaFunctions & Closures in Scala
Functions & Closures in Scala
Neelkanth Sachdeva
 
Creating a business plan
Creating a business planCreating a business plan
Creating a business plan
Nick Bettes Consulting
 
Business systemisation - brief overview
Business systemisation - brief overviewBusiness systemisation - brief overview
Business systemisation - brief overview
Nick Bettes Consulting
 
Photography Effects - .Plàstica
Photography Effects - .PlàsticaPhotography Effects - .Plàstica
Photography Effects - .PlàsticaAxel Millán
 
Open Legislative Data Conference 2014
Open Legislative Data Conference 2014Open Legislative Data Conference 2014
Open Legislative Data Conference 2014
Logilab
 
Managing working capital
Managing working capitalManaging working capital
Managing working capital
Nick Bettes Consulting
 
Euroscipy SemNews 2011
Euroscipy SemNews 2011Euroscipy SemNews 2011
Euroscipy SemNews 2011
Logilab
 
Migration of a computation cluster to Debian
Migration of a computation cluster to DebianMigration of a computation cluster to Debian
Migration of a computation cluster to Debian
Logilab
 
Marketing - pricing
Marketing - pricingMarketing - pricing
Marketing - pricing
Nick Bettes Consulting
 
Team Developpement with Mercurial - april 2011
Team Developpement with Mercurial - april 2011Team Developpement with Mercurial - april 2011
Team Developpement with Mercurial - april 2011
Logilab
 
BRAINOMICS A management system for exploring and merging heterogeneous brain ...
BRAINOMICS A management system for exploring and merging heterogeneous brain ...BRAINOMICS A management system for exploring and merging heterogeneous brain ...
BRAINOMICS A management system for exploring and merging heterogeneous brain ...
Logilab
 
Key performance indicators
Key performance indicatorsKey performance indicators
Key performance indicators
Nick Bettes Consulting
 
Planning for success
Planning for successPlanning for success
Planning for success
Nick Bettes Consulting
 
Managing your sales pipeline
Managing your sales pipelineManaging your sales pipeline
Managing your sales pipeline
Nick Bettes Consulting
 
Présentation Logilab
Présentation LogilabPrésentation Logilab
Présentation Logilab
Logilab
 

Viewers also liked (18)

Interactive exploration of complex relational data sets in a web - SemWeb.Pro...
Interactive exploration of complex relational data sets in a web - SemWeb.Pro...Interactive exploration of complex relational data sets in a web - SemWeb.Pro...
Interactive exploration of complex relational data sets in a web - SemWeb.Pro...
 
Employee engagement
Employee engagementEmployee engagement
Employee engagement
 
Photography Effects
Photography EffectsPhotography Effects
Photography Effects
 
Functions & Closures in Scala
Functions & Closures in ScalaFunctions & Closures in Scala
Functions & Closures in Scala
 
Creating a business plan
Creating a business planCreating a business plan
Creating a business plan
 
Business systemisation - brief overview
Business systemisation - brief overviewBusiness systemisation - brief overview
Business systemisation - brief overview
 
Photography Effects - .Plàstica
Photography Effects - .PlàsticaPhotography Effects - .Plàstica
Photography Effects - .Plàstica
 
Open Legislative Data Conference 2014
Open Legislative Data Conference 2014Open Legislative Data Conference 2014
Open Legislative Data Conference 2014
 
Managing working capital
Managing working capitalManaging working capital
Managing working capital
 
Euroscipy SemNews 2011
Euroscipy SemNews 2011Euroscipy SemNews 2011
Euroscipy SemNews 2011
 
Migration of a computation cluster to Debian
Migration of a computation cluster to DebianMigration of a computation cluster to Debian
Migration of a computation cluster to Debian
 
Marketing - pricing
Marketing - pricingMarketing - pricing
Marketing - pricing
 
Team Developpement with Mercurial - april 2011
Team Developpement with Mercurial - april 2011Team Developpement with Mercurial - april 2011
Team Developpement with Mercurial - april 2011
 
BRAINOMICS A management system for exploring and merging heterogeneous brain ...
BRAINOMICS A management system for exploring and merging heterogeneous brain ...BRAINOMICS A management system for exploring and merging heterogeneous brain ...
BRAINOMICS A management system for exploring and merging heterogeneous brain ...
 
Key performance indicators
Key performance indicatorsKey performance indicators
Key performance indicators
 
Planning for success
Planning for successPlanning for success
Planning for success
 
Managing your sales pipeline
Managing your sales pipelineManaging your sales pipeline
Managing your sales pipeline
 
Présentation Logilab
Présentation LogilabPrésentation Logilab
Présentation Logilab
 

Similar to Debconf14 : Putting some salt in your Debian systems -- Julien Cristau

SaltStack Configuration Management
SaltStack Configuration ManagementSaltStack Configuration Management
SaltStack Configuration Management
Nathan Sickler
 
Deployment with capistrano
Deployment with capistranoDeployment with capistrano
Deployment with capistrano
sagar junnarkar
 
A3Sec Advanced Deployment System
A3Sec Advanced Deployment SystemA3Sec Advanced Deployment System
A3Sec Advanced Deployment Systema3sec
 
Snort
SnortSnort
Snort
bala150985
 
Creating a Mature Puppet System
Creating a Mature Puppet SystemCreating a Mature Puppet System
Creating a Mature Puppet System
Puppet
 
Creating a mature puppet system
Creating a mature puppet systemCreating a mature puppet system
Creating a mature puppet systemrkhatibi
 
Configuration Management and Salt
Configuration Management and SaltConfiguration Management and Salt
Configuration Management and Salt
55020
 
Branching Strategies For Git and Subversion
Branching Strategies For Git and SubversionBranching Strategies For Git and Subversion
Branching Strategies For Git and Subversion
Elian, I.
 
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios CoreNagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios
 
You're doing it wrong! Git it right!
You're doing it wrong! Git it right!You're doing it wrong! Git it right!
You're doing it wrong! Git it right!
Cory Webb
 
Testing Salt States (part 1)
Testing Salt States (part 1)Testing Salt States (part 1)
Testing Salt States (part 1)jasondenning
 
Introduction to SaltStack
Introduction to SaltStackIntroduction to SaltStack
Introduction to SaltStack
Aymen EL Amri
 
Meetup - An introduction to Salt
Meetup - An introduction to SaltMeetup - An introduction to Salt
Meetup - An introduction to Salt
Richard Woudenberg
 
Postgresql 9.0 HA at LOADAYS 2012
Postgresql 9.0 HA at LOADAYS 2012Postgresql 9.0 HA at LOADAYS 2012
Postgresql 9.0 HA at LOADAYS 2012Julien Pivotto
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
John Ombagi
 
Capistrano && SystemD
Capistrano && SystemDCapistrano && SystemD
Capistrano && SystemD
Aleksandr Simonov
 
Capistrano and SystemD
Capistrano and SystemDCapistrano and SystemD
Capistrano and SystemD
Amoniac OÜ
 
The Automation Factory
The Automation FactoryThe Automation Factory
The Automation Factory
Nathan Milford
 
Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia
Distro Recipes 2013: Retrofitting Init: systemd migration in MageiaDistro Recipes 2013: Retrofitting Init: systemd migration in Mageia
Distro Recipes 2013: Retrofitting Init: systemd migration in MageiaAnne Nicolas
 
GitOps with Gitkube
GitOps with GitkubeGitOps with Gitkube
GitOps with Gitkube
Tirumarai Selvan
 

Similar to Debconf14 : Putting some salt in your Debian systems -- Julien Cristau (20)

SaltStack Configuration Management
SaltStack Configuration ManagementSaltStack Configuration Management
SaltStack Configuration Management
 
Deployment with capistrano
Deployment with capistranoDeployment with capistrano
Deployment with capistrano
 
A3Sec Advanced Deployment System
A3Sec Advanced Deployment SystemA3Sec Advanced Deployment System
A3Sec Advanced Deployment System
 
Snort
SnortSnort
Snort
 
Creating a Mature Puppet System
Creating a Mature Puppet SystemCreating a Mature Puppet System
Creating a Mature Puppet System
 
Creating a mature puppet system
Creating a mature puppet systemCreating a mature puppet system
Creating a mature puppet system
 
Configuration Management and Salt
Configuration Management and SaltConfiguration Management and Salt
Configuration Management and Salt
 
Branching Strategies For Git and Subversion
Branching Strategies For Git and SubversionBranching Strategies For Git and Subversion
Branching Strategies For Git and Subversion
 
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios CoreNagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
 
You're doing it wrong! Git it right!
You're doing it wrong! Git it right!You're doing it wrong! Git it right!
You're doing it wrong! Git it right!
 
Testing Salt States (part 1)
Testing Salt States (part 1)Testing Salt States (part 1)
Testing Salt States (part 1)
 
Introduction to SaltStack
Introduction to SaltStackIntroduction to SaltStack
Introduction to SaltStack
 
Meetup - An introduction to Salt
Meetup - An introduction to SaltMeetup - An introduction to Salt
Meetup - An introduction to Salt
 
Postgresql 9.0 HA at LOADAYS 2012
Postgresql 9.0 HA at LOADAYS 2012Postgresql 9.0 HA at LOADAYS 2012
Postgresql 9.0 HA at LOADAYS 2012
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Capistrano && SystemD
Capistrano && SystemDCapistrano && SystemD
Capistrano && SystemD
 
Capistrano and SystemD
Capistrano and SystemDCapistrano and SystemD
Capistrano and SystemD
 
The Automation Factory
The Automation FactoryThe Automation Factory
The Automation Factory
 
Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia
Distro Recipes 2013: Retrofitting Init: systemd migration in MageiaDistro Recipes 2013: Retrofitting Init: systemd migration in Mageia
Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia
 
GitOps with Gitkube
GitOps with GitkubeGitOps with Gitkube
GitOps with Gitkube
 

More from Logilab

Testinfra pyconfr 2017
Testinfra pyconfr 2017Testinfra pyconfr 2017
Testinfra pyconfr 2017
Logilab
 
Open Source & Open Data : les bienfaits des communs
Open Source & Open Data : les bienfaits des communsOpen Source & Open Data : les bienfaits des communs
Open Source & Open Data : les bienfaits des communs
Logilab
 
Salon Open Data
Salon Open DataSalon Open Data
Salon Open Data
Logilab
 
Pydata Paris Python for manufacturing musical instruments
Pydata Paris Python for manufacturing musical instrumentsPydata Paris Python for manufacturing musical instruments
Pydata Paris Python for manufacturing musical instruments
Logilab
 
Système d'archivage électronique mutualisé
Système d'archivage électronique mutualiséSystème d'archivage électronique mutualisé
Système d'archivage électronique mutualisé
Logilab
 
Utiliser salt pour tester son infrastructure sur open stack ou docker
Utiliser salt pour tester son infrastructure sur open stack ou dockerUtiliser salt pour tester son infrastructure sur open stack ou docker
Utiliser salt pour tester son infrastructure sur open stack ou docker
Logilab
 
Importer des données en Python avec CubicWeb 3.21
Importer des données en Python avec CubicWeb 3.21Importer des données en Python avec CubicWeb 3.21
Importer des données en Python avec CubicWeb 3.21
Logilab
 
Simulagora au service d'un grand défi industriel
Simulagora au service d'un grand défi industrielSimulagora au service d'un grand défi industriel
Simulagora au service d'un grand défi industriel
Logilab
 
Simulagora - Salon du Bourget
Simulagora - Salon du BourgetSimulagora - Salon du Bourget
Simulagora - Salon du Bourget
Logilab
 
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Logilab
 
Study of the dynamic behavior of a pump with Code_ASTER on Simulagora
Study of the dynamic behavior of a pump with Code_ASTER on SimulagoraStudy of the dynamic behavior of a pump with Code_ASTER on Simulagora
Study of the dynamic behavior of a pump with Code_ASTER on Simulagora
Logilab
 
Initialiser des conteneurs Docker à partir de configurations Salt construites...
Initialiser des conteneurs Docker à partir de configurations Salt construites...Initialiser des conteneurs Docker à partir de configurations Salt construites...
Initialiser des conteneurs Docker à partir de configurations Salt construites...
Logilab
 
Battle Opendata - Logilab - Cubicweb
Battle Opendata - Logilab - CubicwebBattle Opendata - Logilab - Cubicweb
Battle Opendata - Logilab - Cubicweb
Logilab
 
Simulagora (Euroscipy2014 - Logilab)
Simulagora (Euroscipy2014 - Logilab)Simulagora (Euroscipy2014 - Logilab)
Simulagora (Euroscipy2014 - Logilab)
Logilab
 
PAFI (Euroscipy2014 - Logilab)
PAFI (Euroscipy2014 - Logilab)PAFI (Euroscipy2014 - Logilab)
PAFI (Euroscipy2014 - Logilab)
Logilab
 
Pylint : 10 ans, état des lieux
Pylint : 10 ans, état des lieuxPylint : 10 ans, état des lieux
Pylint : 10 ans, état des lieux
Logilab
 
Présentation sur le stand à l'OpenWorldForum 2013
Présentation sur le stand à l'OpenWorldForum 2013Présentation sur le stand à l'OpenWorldForum 2013
Présentation sur le stand à l'OpenWorldForum 2013
Logilab
 
Cubicweb lauréat Dataconnexions 2013
Cubicweb lauréat Dataconnexions 2013Cubicweb lauréat Dataconnexions 2013
Cubicweb lauréat Dataconnexions 2013
Logilab
 
OSDC 2012 mercurial evolve talk
OSDC 2012 mercurial evolve talk OSDC 2012 mercurial evolve talk
OSDC 2012 mercurial evolve talk
Logilab
 
Historique évolutif avec Mercurial - Pyconfr 2012
Historique évolutif avec Mercurial - Pyconfr 2012Historique évolutif avec Mercurial - Pyconfr 2012
Historique évolutif avec Mercurial - Pyconfr 2012
Logilab
 

More from Logilab (20)

Testinfra pyconfr 2017
Testinfra pyconfr 2017Testinfra pyconfr 2017
Testinfra pyconfr 2017
 
Open Source & Open Data : les bienfaits des communs
Open Source & Open Data : les bienfaits des communsOpen Source & Open Data : les bienfaits des communs
Open Source & Open Data : les bienfaits des communs
 
Salon Open Data
Salon Open DataSalon Open Data
Salon Open Data
 
Pydata Paris Python for manufacturing musical instruments
Pydata Paris Python for manufacturing musical instrumentsPydata Paris Python for manufacturing musical instruments
Pydata Paris Python for manufacturing musical instruments
 
Système d'archivage électronique mutualisé
Système d'archivage électronique mutualiséSystème d'archivage électronique mutualisé
Système d'archivage électronique mutualisé
 
Utiliser salt pour tester son infrastructure sur open stack ou docker
Utiliser salt pour tester son infrastructure sur open stack ou dockerUtiliser salt pour tester son infrastructure sur open stack ou docker
Utiliser salt pour tester son infrastructure sur open stack ou docker
 
Importer des données en Python avec CubicWeb 3.21
Importer des données en Python avec CubicWeb 3.21Importer des données en Python avec CubicWeb 3.21
Importer des données en Python avec CubicWeb 3.21
 
Simulagora au service d'un grand défi industriel
Simulagora au service d'un grand défi industrielSimulagora au service d'un grand défi industriel
Simulagora au service d'un grand défi industriel
 
Simulagora - Salon du Bourget
Simulagora - Salon du BourgetSimulagora - Salon du Bourget
Simulagora - Salon du Bourget
 
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
 
Study of the dynamic behavior of a pump with Code_ASTER on Simulagora
Study of the dynamic behavior of a pump with Code_ASTER on SimulagoraStudy of the dynamic behavior of a pump with Code_ASTER on Simulagora
Study of the dynamic behavior of a pump with Code_ASTER on Simulagora
 
Initialiser des conteneurs Docker à partir de configurations Salt construites...
Initialiser des conteneurs Docker à partir de configurations Salt construites...Initialiser des conteneurs Docker à partir de configurations Salt construites...
Initialiser des conteneurs Docker à partir de configurations Salt construites...
 
Battle Opendata - Logilab - Cubicweb
Battle Opendata - Logilab - CubicwebBattle Opendata - Logilab - Cubicweb
Battle Opendata - Logilab - Cubicweb
 
Simulagora (Euroscipy2014 - Logilab)
Simulagora (Euroscipy2014 - Logilab)Simulagora (Euroscipy2014 - Logilab)
Simulagora (Euroscipy2014 - Logilab)
 
PAFI (Euroscipy2014 - Logilab)
PAFI (Euroscipy2014 - Logilab)PAFI (Euroscipy2014 - Logilab)
PAFI (Euroscipy2014 - Logilab)
 
Pylint : 10 ans, état des lieux
Pylint : 10 ans, état des lieuxPylint : 10 ans, état des lieux
Pylint : 10 ans, état des lieux
 
Présentation sur le stand à l'OpenWorldForum 2013
Présentation sur le stand à l'OpenWorldForum 2013Présentation sur le stand à l'OpenWorldForum 2013
Présentation sur le stand à l'OpenWorldForum 2013
 
Cubicweb lauréat Dataconnexions 2013
Cubicweb lauréat Dataconnexions 2013Cubicweb lauréat Dataconnexions 2013
Cubicweb lauréat Dataconnexions 2013
 
OSDC 2012 mercurial evolve talk
OSDC 2012 mercurial evolve talk OSDC 2012 mercurial evolve talk
OSDC 2012 mercurial evolve talk
 
Historique évolutif avec Mercurial - Pyconfr 2012
Historique évolutif avec Mercurial - Pyconfr 2012Historique évolutif avec Mercurial - Pyconfr 2012
Historique évolutif avec Mercurial - Pyconfr 2012
 

Recently uploaded

Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 

Recently uploaded (20)

Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 

Debconf14 : Putting some salt in your Debian systems -- Julien Cristau

  • 1. Adding Salt to your Debian systems julien.cristau@logilab.fr
  • 2. What is salt? ●Remote execution framework ● Set of tools built around that framework, including config management
  • 3. Why salt? ●Written in python ●Using yaml for state description ●Great documentation ● Big and growing community ● Fast-moving
  • 4. Why not salt? ● Young and fast-moving ●Written in python ●Rolls its own crypto
  • 5. Terminology ●Master, minions ●Grain ● Pillar ● State ● Top file ●Highstate
  • 6. Adding a minion ● Install salt-minion http://debian.saltstack.com/ ● Tell it where the master is echo master: salt.logilab.fr > /etc/salt/minion.d/master.conf ● Check and accept the key on the master salt-key -a mynewminion
  • 7. Remote execution $ salt '*' test.ping $ salt 'db*' cmd.run pg_lsclusters $ salt -G 'oscodename:jessie' grains.item kernelrelease
  • 8. Config management ● Using yaml (by default) to describe desired system state ● Templating with jinja ● Grains/pillars/... available for targetting and in template context
  • 9. Top file (2) /srv/salt/top.sls base: '*': - common 'role:webserver': - match: grain - apache
  • 10. SLS files /srv/salt/common.sls basepkgs: pkg.install: - pkgs: - vim - less - debsums
  • 11. SLS files (continued) /srv/salt/apache/init.sls apache2: - pkg.installed - service.running: - require: - pkg: apache2 - watch: {% for vhost in pillar['vhosts'] %} - file: /etc/apache2/sites-available/{{ vhost }} {% endfor %}
  • 12. Other nice things ● Integration with cloud and virtualization APIs with salt-cloud and salt-virt ● Provisioning, pre-approval of minion keys ● Automatic highstate on boot or on a schedule