Installer Ansible Installer Ansible sur un VPS HolyCloud pour automatiser la configuration de serveurs et déployer des playbooks. ~9 min de lecture Intermédiaire #ansible #automatisation #devops #ssh Installer Ansible Ansible automatise la configuration de serveurs via SSH, sans agent sur les machines cibles. Sur un VPS Linux HolyCloud, installez-le sur un nœud de contrôle (bastion) qui administre ce VPS et d'autres serveurs (second VPS, staging, etc.). Prérequis VPS HolyCloud Ubuntu/Debian avec Python 3 et accès sudo Clés SSH configurées vers les hôtes cibles (ssh-copy-id) Port 22 ouvert vers les cibles (UFW + pare-feu HolyCloud) Étape 1 : installation via APT (recommandé) PPA ou paquets officiels Ubuntu : sudo apt update sudo apt install -y ansible sshpass ansible --version Sur Debian 12 : sudo apt install -y ansible-core sshpass Étape 2 : installation via pip (version récente) Pour une version plus neuve, isolée : sudo apt install -y python3-pip python3-venv python3 -m venv ~/ansible-venv source ~/ansible-venv/bin/activate pip install --upgrade pip ansible ansible --version Ajoutez à ~/.bashrc : source ~/ansible-venv/bin/activate Étape 3 : structure de projet mkdir -p ~/ansible/{inventory,playbooks,roles} cd ~/ansible Inventaire simple /inventory/hosts.ini : [vps_holycloud] vps-prod ansible_host=203.0.113.10 ansible_user=deploy [vps_holycloud:vars] ansible_python_interpreter=/usr/bin/python3 Remplacez par l'IP publique de vos VPS affichée dans l'espace client HolyCloud. Étape 4 : premier playbook Fichier playbooks/ping.yml : --- - name: Test connectivité VPS HolyCloud hosts: vps_holycloud gather_facts: yes tasks: - name: Ping module ansible.builtin.ping: - name: Afficher hostname ansible.builtin.debug: msg: "Serveur {{ inventory_hostname }} = {{ ansible_hostname }}" Exécution : cd ~/ansible ansible-playbook -i inventory/hosts.ini playbooks/ping.yml Test ad hoc : ansible -i inventory/hosts.ini vps_holycloud -m shell -a 'uptime' Étape 5 : playbook utile — paquets de base playbooks/base.yml : --- - name: Configuration de base hosts: vps_holycloud become: yes tasks: - name: Mettre à jour le cache apt ansible.builtin.apt: update_cache: yes cache_valid_time: 3600 - name: Installer paquets essentiels ansible.builtin.apt: name: - curl - git - ufw - fail2ban state: present - name: Autoriser SSH dans UFW community.general.ufw: rule: allow name: OpenSSH - name: Activer UFW community.general.ufw: state: enabled Collection UFW : ansible-galaxy collection install community.general ansible-playbook -i inventory/hosts.ini playbooks/base.yml Étape 6 : bonnes pratiques HolyCloud Stockez l'inventaire et les vaults hors Git public ; utilisez ansible-vault pour les secrets Limitez le nœud de contrôle par IP (votre bureau ou un VPS admin dédié) Un seul VPS peut être à la fois cible et contrôleur pour de petits parcs Fichier ansible.cfg local : [defaults] inventory = inventory/hosts.ini host_key_checking = False retry_files_enabled = False En production, activez host_key_checking et known_hosts. Vérification ansible --version ansible -i inventory/hosts.ini all -m ping ansible-config dump | head -20 Besoin d'aide HolyCloud UNREACHABLE : IP, pare-feu HolyCloud, clé SSH, utilisateur ansible_user Permission denied : become: yes et sudo sur la cible Support HolyCloud : sortie ansible-playbook -vvv, IP source du contrôleur, règles UFW Suite de la lecture Article précédent Gérer l'espace disque (df, du, ncdu) Lire Article suivant Installer Apache HTTP Server Lire