Gestion d'infrastructure avec Salt

SALT3 days

Objectives

Salt est un environnement d'exécution distribué et asynchrone, qui se positionne comme le couteau suisse de la gestion d'infrastructure. Développé conjointement par la société SaltStack et la communauté Salt, il est complètement libre et refuse les modèles de type open-core. Qu'il s'agisse d'exécuter une commande sur plusieurs machines, de définir puis appliquer une configuration système, de récolter les mesures faites par des sondes, de lancer des machines virtuelles ou de gérer un "cloud" : Salt a une solution.
La rapidité d'exécution de Salt, sa facilité d'accès, sa versatilité et son extensibilité en font un outil efficace, mais qui demande du temps pour être pleinement maîtrisé.
La formation proposée ici comporte une large part de travaux pratiques. Elle a pour but de faciliter une mise en oeuvre rapide de Salt et de permettre de choisir pour quelles tâches il sera utilisé.


Audience

La formation proposée ici se déroule sur trois jours et s'adresse à des auditeurs administrateurs système ou informaticiens, ayant une connaissance préalable de la gestion d'infrastructure.


Prerequisites

Expérience pratique et régulière de l'administration système sous Unix ou Windows (3 mois minimum), connaissance des principes de la virtualisation et du cloud.


program

Introduction à Salt

  • Les bases

    Rappels sur la gestion d'infrastructure et de l'administration système.
  • Les défis

    Tour d'horizon des problèmes classiques et des défis actuels.
  • Présentation de Salt

    Présentation historique de Salt.
  • Usages de Salt

    Salt comme couteau suisse universel de la gestion d'infrastructure.

Architecture globale de Salt

  • Exécution locale ou distante

    Accès par ssh, définition de master / minion, principe de targeting, utilisation sur Unix et Windows.
  • Déploiement de fichiers

    Mise à disposition de fichiers, utilisation de moteurs de templates pour produire des fichiers et utilisation de git ou Mercurial pour gérer les fichiers à déployer.
  • Bus de message asynchrone

    Production, consommation et transmission d'événements (reactor, peer, syndic).
  • Configuration

    Définition et application d'états (states).
  • Variables

    Stockage des données sur les esclaves (grains), sur le maître (pillars) et données globales (mine).
  • Extensibilité

    Utilisation de modules et de composants (formulas), reversement de données produites (returners).

Exécution de commandes

  • Ciblage

    targeting
  • Local

    salt-call
  • Distant sans agent

    salt-ssh
  • Distant via agent

    salt-minion
  • Multi-système

    distributions Unix et Windows

Gestion de configuration

  • Définir des états

    Le format YAML, modules et templates
  • Utiliser des variables

    grains, pillars, mine
  • Utiliser des logiciels de gestion de versions distribués (DVCS)

    Utilisation de git ou Mercurial avec Salt
  • Structurer la description de son infrastructure

    Organiser ses fichiers sls et ses pillars

Utilisation de "cloud" publics ou privés

  • salt-cloud

    Utiliser les fournisseurs de cloud publics avec salt-cloud et y déployer son infrastructure.

Gestion de machines virtuelles

  • salt-virt

    Déployer des hyperviseurs (libvirt) avec Salt, configurer le réseau, concevoir les images de machines virtuelles.

Extensibilité, intégration

  • modules

    Écrire et déployer ses propres modules.
  • states

    Écrire et déployer ses propres states.
  • Composants partagés

    Principe et utilisation des formulas
  • Architecture et urbanisme avec Salt

    Utiliser Salt pour urbaniser un système d'information.
  • Vers le Test-Driven-Infrastructure (TDI)

    Comment utiliser Salt dans un objectif de documentation et de développement de son infrastructure piloté par les tests.


Customization

Cette formation peut être adaptée afin de répondre au mieux à vos besoins. Par exemple, il est possible d'orienter la mise en pratique vers les particularités de votre infrastructure ou vers l'extension de Salt via le développement de modules. Logilab dispose aujourd'hui d'une palette très large de modules pédagogiques permettant la personnalisation de ses formations.
L'adaptation des cours en intra-entreprise ne pose aucun problème ; cette opération est cependant plus difficile pour les cours en inter-entreprises. N'hésitez pas à demander conseil à notre service commercial.


Terms

Des sessions en inter-entreprises sont organisées régulièrement dans nos locaux à Paris et Toulouse. Il est possible d'organiser, à votre demande, une ou plusieurs sessions en intra-entreprise (sur site) n'importe où en France ou en Europe.
Chaque participant à la formation dispose d'un exemplaire personnel du support de cours et du manuel d'exercices.

Durée

3 jours soit 21h heures.

Langue

Au choix, française ou anglaise

Intervenant

Tous les intervenants animant cette formation bénéficient de compétences pédagogiques reconnues. D'autre part, ils participent activement au développement de Salt et maintiennent au quotidien l'infrastructure de Logilab ou de nos clients.

Travaux pratiques

Cette formation accorde une place prépondérante aux travaux pratiques qui permettent, tout au long du cours, de mettre en œuvre et assimiler les concepts théoriques.

Inter-entreprises

  • groupes de 4 personnes minimum et 8 personnes maximum
  • lundi-mercredi ou mardi-jeudi 9h-12h15, 13h30-17h00
  • Paris ou Toulouse
  • déjeuner inclus

Intra-entreprise

  • groupes de 10 personnes maximum
  • 3 journées