Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Un peu de sel dans votre infra

Boris Feld
October 16, 2014

Un peu de sel dans votre infra

Présentation de SaltStack à Paris.Py 5ème édition

Boris Feld

October 16, 2014
Tweet

More Decks by Boris Feld

Other Decks in Programming

Transcript

  1. Toute ressemblance avec des personnes ou des situations existantes ou

    ayant existé ne saurait être que préméditée.
  2. Des besoins… • Comment configurer facilement, rapidement et efficacement :

    • De plus en plus de machines • Des stacks de plus en plus compliqués • Des infrastructures toujours plus hétérogènes
  3. Des problèmes… • Tu as bien installé les dépendances à

    jour ? • Pourquoi il y a une machine en 32 bits et une autre en 64 bits ? • Y’a un problème sur la prod, tu as l’ancienne config du nginx ? • Y’a un problème sur quelques machines, tu pourrais vérifier la version de libxml sur les 200 serveurs ? • Y’a une nouvelle faille zero-day tu peux patcher rapidement ?
  4. SaltStack • Serveur RPC de nouvelle génération. • Outil de

    gestion de configuration de nouvelle génération. • En python. • Populaire, maintenu et avec une communauté active. • Support multi-os.
  5. HeartBleed 23:59 <Big_Boss> Y’a une nouvelle faille zero-day tu peux

    patcher rapidement ? $> salt '*' pkg.install openssl refresh=True 00:00 <SuperOps> Done, bonne nuit.
  6. ShellShock 23:59 <Big_Boss> Y’a une nouvelle faille zero-day tu peux

    patcher rapidement ? $> salt '*' pkg.install bash refresh=True 00:00 <SuperOps> Done, bonne nuit.
  7. Check 15:28 <noob_dev> Y’a un problème depuis le dernier déploiement,

    tu pourrais vérifier la version de libxml sur les 200 serveurs ?
  8. Check 15:28 <noob_dev> Y’a un problème depuis le dernier déploiement,

    tu pourrais vérifier la version de libxml sur les 200 serveurs ?
  9. Check 15:28 <noob_dev> Y’a un problème depuis le dernier déploiement,

    tu pourrais vérifier la version de libxml sur les 200 serveurs ? $> salt '*' pkg.version libxml 15:29 <SuperOps> C’est pas la même version, faut préciser les dépendances bande de noobs.
  10. Configuration management nginx: pkg: - installed service.running: - enabled: True

    - require: - pkg: nginx - watch: - file: nginx_config ! nginx_config: file.managed: - name: /etc/nginx/nginx.conf - source: salt://nginx/nginx.conf - template: jinja
  11. Python power ! • Outil entièrement écrit en Python. •

    56437 lignes de python. • Code simple d’accès. • Facile d’écrire des modules et states custom. • Et de contribuer…
  12. Module builtin def chgrp(path, group): ''' Change the group of

    a file ! path path to the file or directory ! group group owner ''' path = os.path.expanduser(path) ! user = get_user(path) return chown(path, user, group)
  13. More ? Salt-Cloud Power web1: provider: ec2 image: ami-7e2da54e size:

    m3.medium minion: roles: [web] ! web2: provider: ec2 image: ami-7e2da54e size: m3.medium minion: cheese: [web] ! db1: provider: ec2 image: ami-7e2da54e size: m3.xlarge minion: cheese: [db, redis]