Vote

Saltstack est un outil de gestion de configuration de vos systèmes afin de la rendre pour facile à administrer.

Installation

Salt est un outil qui permet d’administrer autant de serveurs que possible en quelques ligne de commande sans aucune limite.
Il vous sera possible d’installer des paquets avec une seule commande, manager différents vhost, gérer vos utilisateurs,… depuis un seul serveur.

En utilisant Salt, nous utiliserons à minima 2 serveurs dont l’un est le master (Parent) et l’autre est un minion (Enfant).
L’installation s’effectue sur les système via les commandes suivantes :

Le minion connaît le master par son nom d’hôte ou son adresse IP afin d’intercepter ces requêtes.
Le master connaît le minion par son nom d’hôte.
Les minions peuvent aussi être identifiés par critère (système d’exploitation, regexp, …).

Adresse IP du master.

Adresse IP du 1er minion.


Configuration

On configure d’abord le minion avec l’adresse IP du master et on redémarre le service :

On configure ensuite l’interface du master avec l’adresse IP du master et on dé-commente la configuration file_roots :

On redémarre le service sur les différents serveurs :

La communication entre master et minion s’effectue à partir de clé md5.
On va donc lister les clés afin d’identifier notre minion puis valider sa clé:

Valider toutes les clés sans préciser le hostname_minion.


Utilisation

Salt est maintenant opérationnel et nous pouvons commencer à l’utiliser via la commande __salt_ :


Commandes utiles

Salt dispose de commandes adaptées à une majeure partie des actions que vous serez amener à effectuer sur vos différents serveurs.
L’avantage est de pouvoir exécuter nos actions sur tous vos serveurs minions en même temps.
Voici une liste non exhaustive de commandes utiles :


Fichier states

Salt est un véritable gestionnaire de configuration dès que l’on commence à définir des fichiers states qui vont être sont l’empreinte de vos serveurs minions.
Ces fichiers localisés dans le dossier /srv/salt/ sont au format YAML.

Par exemple, imaginons un système avec des serveurs minion sur lequel on veut installer Apache puis démarrer ce service :

ID du state.

Déclaration du module pkg.

Fonction installed du module pkg (remplaçable par pkg.installed).

Déclaration du module service.

Fonction running du module service.

Nous testons notre commande afin que les serveurs minion l’interprètent :

Le test indique qu’Apache n’est ni installé ni en service et nous pouvons relancer la commande sans faire de test :

Voici un autre exemple pour remplacer le paquet nano par __vim___ :

On va maintenant combiner nos 2 states apache et vim :

Enfin, nous aurions pu procéder par une mise à jour globale de la configuration de nos minions.
On va donc éditer le fichier principal top.sls situé dans le dossier des __pillars_ :

Cette configuration exécutera le state apache pour tous les minions et le state vim pour tous les minions dont le hostname ou ID commence par minionnew.
La fonction state.highstate va permettre de lire tous les states à appliquer dans /srv/salt/top.sls :


Catégories : DevopsTutoriaux

JN Community

Les Ressources, en particulier les tutoriaux, présupposent que l’Utilisateur qui décide de les mettre en œuvre dispose des connaissances, des compétences et de l’expérience nécessaire pour cette mise en œuvre. L’Utilisateur disposant d’une connaissance, compétence et/ou expérience limitée ou insuffisante doit absolument s’abstenir de mettre en œuvre les Ressources par lui-même. Jaguar Network décline toute responsabilité quant aux conséquences dommageables de la mise en œuvre des Ressources, notamment sur les infrastructures informatiques de l’Utilisateur, de ses commettants ou préposés ou de tout tiers. Il est précisé en tant que de besoin que toute intervention de Jaguar Network visant à réparer les dommages causés par la mise en œuvre des Ressources par un Utilisateur ne disposant pas des connaissances, compétences et/ou expériences suffisantes sera facturée et fera l’objet d’un devis préalable et d’un bon de commande aux conditions des contrats Jaguar Network en vigueur.

Articles similaires

Système

Les redirections sous Nginx

Vote En utilisant Nginx, vous pouvez avoir besoin de mettre en place des redirections. Ce tutoriel va vous guider sur la mise en place de ces redirections en configurant vos vhosts. Articles similaires

Sécurité

Protéger un fichier ou répertoire de la suppression sous Linux

En tant qu’administrateur, il peut être utile d’empêcher un fichier ou un répertoire d’être supprimé de votre système. Articles similaires

Système

Attribuer des droits root à un utilisateur (sudo) sous Linux

Il peut nécessaire pour diverses raisons d’attribuer temporairement ou non des droits root à un utilisateur, ce tutoriel explique ce principe. Articles similaires