Ansible : installation et administrations des serveurs Windows
Ansible : installation et administrations des serveurs Windows
Ansible est un outil Open Source permettant l’automatisation de tâches. Il permet de gérer la configurations de vos serveurs Linux et Windows. Il travail sans agent, facilitant son déploiement.
Dans cet article Ansible : installation et administrations des serveurs Windows, nous verrons l’installation d’Ansible et la configurations pour l’administration d’une machine sous Windows Server 2012 R2.
- Installation de Ansible
- Configuration de Ansible pour la gestion des serveurs Windows
- Configuration de vos machines Windows
- Test de Ansible
1) Installation de Ansible
L’installation d’Ansible est faites ici sur une Debian 9.2 64 bits (pour télécharger Debian c’est ici)
Avant d’installer Ansible, vous devez modifier le fichier du fichier de source, pour cela :
nano /etc/apt/source.list
Ajouter la ligne suivante :
deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main
Comme ceci :
Exécutez ensuite la commande suivante pour mettre à jours vos paquets :
apt-get update & upgrade
Nous pouvons maintenant lancer l’installation d’Ansible avec la commande suivante :
apt-get install ansible
Certains prérequis sont nécessaire afin d’administrer vos serveurs Windows. Ansible étant écrit en Python, nous devons utiliser les modules Python de Linux
Lancez la commande suivante pour installer l’installeur pip de python et le module WinRm :
apt-get install -y python-pip
pip install pywinrm
Ansible ainsi que tous les paquets pour la prise en charge de Windows sont installés
Passons maintenant à la configuration d’Ansible
2) Configuration de Ansible pour la gestion des serveurs Windows
Rendez vous dans le répertoire d’Ansible :
cd /etc/ansible
Vous y trouverez les éléments suivants :
- Fichier ansible.cfg : la configuration d’Ansible, celle par défaut convient parfaitement pour commencer
- Fichier hosts : c’est dans ce fichier que vous indiquerez nos serveurs, obligatoire pour la gestion de vos machines Windows
- Dossier roles : ce dossier vous servira surtout par la suite lorsque vous aurez plusieurs rôles à vos playbooks.
Ajoutons nos serveurs Windows :
nano /etc/ansible/hosts
Vous pouvez ajouter des serveurs manuellement ou par groupe. Ajoutez les lignes suivantes pour le groupe « Windows » :
[windows]
serveur1.domain.local
serveur2.domain.local
Pour l’étape suivante, nous devons mettre à jour l’éditeur par la variable $EDITOR (nano n’est pas pris en charge pour la suite) :
editor=vim
Il faut ensuite créer un coffre fort chiffré contenant les identifiants d’accès à windows. Pour cela, nous allons créer un nouveau fichier YML chiffré. Le nom du fichier doit correspondre au groupe d’hosts auquel il doit s’appliquer. Dans notre cas, le groupe créé s’appel Windows, le fichier sera donc windows.yml
mkdir group_vars
cd group_vars
ansible-vault create windows.yml
La dernière commande créera un coffre fort contenant les identifiants d’accès à Windows
Entrer un mot de passe pour ce coffre fort
Dans votre fichier yml, renseignez les paramètres suivants :
ansible_ssh_user: administrateur
ansible_ssh_pass: MotDePasse
ansible_ssh_port: 5986
ansible_connection: winrm
ansible_winrm_server_cert_validation: ignore
Votre fichier sera comme ceci :
Je vous conseil de créer un compte local sur vos serveurs (qui peut etre déployé via GPO). Le compte doit être administrateur local du serveur
3) Configuration de vos machines Windows
Vous devez maintenant configurer votre machine windows.
Un script powershell est disponible pour configurer automatiquement votre machine. Ce script effectuera automatiquement la configuration de WinRM (Windows Remote Management) pour vous et ouvre le pare-feu tout seul (juste pour ce service).
Vous pouvez le télécharger ici :
https://github.com/stylersnico/ansible/blob/115aaeb17c4e13d6ef8420acd7143fddbf33ea5f/examples/scripts/ConfigureRemotingForAnsible.ps1
Modifiez les règles d’exécution des scripts Powershell afin de permettre l’exécution de votre script :
Set-ExecutionPolicy RemoteSigned
Exécutez ensuite votre script Powershell fraîchement téléchargé :
.\ConfigureRemotingForAnsible.ps1
Dans mon exemple le fichier est nommé « ansible.ps1 » :
4) Test de Ansible
Testons maintenant que le tout fonctionne
Lancez la commande suivante :
ansible windows -m win_ping –ask-vault-pass
Il vous sera demandé de renseigner le mot de passe de votre coffre fort
Si le résultat est concluant, l’ensemble s’affichera en vert (et oui votre serveur répond au ping) :
1 réponse
[…] article fait suite à l’article Ansible : installation et administrations des serveurs Windows ou je vous expliquais comment effectuer l’administration de vos serveurs Windows avec […]