Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

394 views

Published on



Salt allows scalable infrastructure management, including provisioning new systems and managing them over their lifetime. In this talk I'll show how it makes managing Debian systems easier.

Published in: Software
  • Be the first to comment

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

  1. 1. Adding Salt to your Debian systems julien.cristau@logilab.fr
  2. 2. What is salt? ●Remote execution framework ● Set of tools built around that framework, including config management
  3. 3. Why salt? ●Written in python ●Using yaml for state description ●Great documentation ● Big and growing community ● Fast-moving
  4. 4. Why not salt? ● Young and fast-moving ●Written in python ●Rolls its own crypto
  5. 5. Terminology ●Master, minions ●Grain ● Pillar ● State ● Top file ●Highstate
  6. 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. 7. Remote execution $ salt '*' test.ping $ salt 'db*' cmd.run pg_lsclusters $ salt -G 'oscodename:jessie' grains.item kernelrelease
  8. 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. 9. Top file (2) /srv/salt/top.sls base: '*': - common 'role:webserver': - match: grain - apache
  10. 10. SLS files /srv/salt/common.sls basepkgs: pkg.install: - pkgs: - vim - less - debsums
  11. 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. 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

×