Introduction à Salt#

Introduction à Salt#

Présentation de Salt#

Its automation, infrastructure management, its data-driven orchestration,
remote execution, configuration management, and so much more.

-- saltproject.io

C’est de l’automatisation, de la gestion de l’infrastructure, de l’orchestration gérée par les données, le la gestion de configuration et bien plus encore.

Historique de Salt#

  • Début en février 2011

  • Première release (0.6.0) en mars 2011

  • Si on a un bus de communication asynchrone suffisamment rapide, tout devient possible et scalable. Salt a initialement été pensé pour ça

    • avec ZeroMQ (pub/sub + req/rep) au cœur de l’architecture de communication

  • Remplacement de Chef et Puppet (jugés trop complexes) - donc ajout de la gestion de configuration.

  • Suffisamment flexible pour que les modules / add-ons soient développés très rapidement.

    • Salt a « rattrapé » en quelques mois les écosystèmes de Chef et Puppet

  • Création de SaltStack Inc. en 2012, puis rachat par VMware en 2020.

  • Le projet libre se poursuit sur saltproject.io

Usages de Salt#

Salt: le couteau suisse universel de la gestion d’infrastructure :

  • exécution distante asynchrone

  • gestion de configuration centralisée

  • déploiement d’infrastructure à la demande

  • gestion de machines virtuelles

  • supervision et monitoring

  • gestion de cluster HPC (High Performance Computing)

Communauté et utilisateurs#

Bon nombre d’utilisateurs connus :

  • VMWare, LinkedIn, HP, Wikipedia, RackSpace, IBM…

  • Harvard University

  • Kubernetes de Google

Limitations#

  • accès centralisé à vos serveurs

    • qui a accès au serveur salt dispose d’un accès sans limite à toute l’infrastructure

      • problème de tous les gestionnaires centralisés

      • possibilités de brider (ACLs)

Organisation du projet logiciel#

Distributions#

SaltStack Inc. :

  • affichait une volonté de développer et publier tous ses projets sous licence libre (Apache),

  • ne souhaite pas adopter le principe du « opencore » (selon lequel certaines parties du code « avancées » sont propriétaires et payants),

Distributions : Fedora, Ubuntu, Debian, CentOS, ArchLinux, OS X, Microsoft Windows, Oracle Solaris, etc.

Le développement a lieu sur Github : https://github.com/saltstack/salt

Les projets périphériques de SaltStack Inc. sont ici : https://github.com/saltstack/

Métriques logiciel libres#

Projet en logiciel libre « vraiment très actif » (lors de l’écriture du support) :

  • plus de 2300 contributeurs

  • plus de 12 000 étoiles sur GitHub

  • plusieurs centaines de pull requests en attente

  • Selon OpenHub https://www.openhub.net/p/salt * « Very High Activity » * ~ 101 contributeurs en 2021 * ~ 500 000 lignes de code * 97% Python * ~ 130 commits par mois

Versions#

Sécurité#

  • Publication d’un certain nombre de CVE (Common Vulnerabilities and Exposures)

    • ce qui veut d’abord dire que la communauté est attentive à ces problèmes de sécurité

Support et documentation#

Support et documentation#

Médias#

Événements#