Ansible: plusieurs éléments intéressants
This commit is contained in:
parent
afeaa0b384
commit
c9ddac70df
@ -162,20 +162,18 @@
|
||||
state: present
|
||||
become: yes
|
||||
|
||||
# 18. Redémarrer la machine
|
||||
- name: Redémarrer la machine
|
||||
reboot:
|
||||
msg: "Redémarrage après configuration."
|
||||
pre_reboot_delay: 5
|
||||
command: "nohup bash -c 'sleep 5 && reboot' &"
|
||||
async: 1
|
||||
poll: 0
|
||||
ignore_errors: yes
|
||||
become: yes
|
||||
|
||||
# 19. Attendre que la machine soit de nouveau accessible
|
||||
- name: Attendre que la machine soit de nouveau accessible
|
||||
wait_for_connection:
|
||||
timeout: 300
|
||||
become: no
|
||||
|
||||
# 20. Confirmation
|
||||
- name: Confirmer que la VM est de nouveau accessible
|
||||
debug:
|
||||
msg: "La VM {{ ansible_hostname }} est de nouveau accessible !"
|
||||
# 18. Redémarrer la machine
|
||||
#- name: Redémarrer la machine
|
||||
# reboot:
|
||||
#msg: "Redémarrage après configuration."
|
||||
#pre_reboot_delay: 5
|
||||
#become: yes
|
||||
#ignore_errors: yes
|
||||
|
||||
@ -77,7 +77,7 @@
|
||||
# 8. Installer les paquets nécessaires
|
||||
- name: Installer les paquets nécessaires
|
||||
apt:
|
||||
name: ["sudo", "vim", "curl", "git", "htop", "gnupg", "apache2"]
|
||||
name: ["sudo", "vim", "curl", "git", "htop", "gnupg", "apache2", "net-tools"]
|
||||
state: present
|
||||
become: yes
|
||||
|
||||
@ -145,12 +145,12 @@
|
||||
state: restarted
|
||||
become: yes
|
||||
|
||||
# 16. Remplacer "clean" par le hostname dans /etc/hosts
|
||||
- name: Remplacer "clean" par le hostname dans /etc/hosts
|
||||
replace:
|
||||
- name: Mettre à jour /etc/hosts avec le hostname
|
||||
lineinfile:
|
||||
path: /etc/hosts
|
||||
regexp: '\bclean\b'
|
||||
replace: "{{ ansible_hostname }}"
|
||||
regexp: '^127\.0\.0\.1\s+'
|
||||
line: "127.0.0.1 localhost {{ ansible_hostname }}"
|
||||
state: present
|
||||
become: yes
|
||||
|
||||
# 17. Retirer 'PermitRootLogin yes' dans /etc/ssh/sshd_config
|
||||
@ -162,6 +162,15 @@
|
||||
state: present
|
||||
become: yes
|
||||
|
||||
- name: Déployer le script MOTD personnalisé
|
||||
copy:
|
||||
src: ../sources/99-motd # Chemin relatif depuis où tu exécutes le playbook
|
||||
dest: /etc/update-motd.d/99-motd
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0755'
|
||||
become: yes
|
||||
|
||||
- name: Redémarrer la machine
|
||||
command: "nohup bash -c 'sleep 5 && reboot' &"
|
||||
async: 1
|
||||
|
||||
42
11-Ansible/sources/99-motd
Normal file
42
11-Ansible/sources/99-motd
Normal file
@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Définition des couleurs
|
||||
GREEN='\033[0;32m'
|
||||
BLUE='\033[0;34m'
|
||||
PURPLE='\033[0;35m'
|
||||
CYAN='\033[0;36m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
# Récupération des informations
|
||||
CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')
|
||||
RAM_USAGE=$(free | grep Mem | awk '{print $3/$2 * 100.0}')
|
||||
DISK_USAGE=$(df -h / | awk 'NR==2 {print $5}')
|
||||
IP_ADDRESS=$(hostname -I | cut -d' ' -f1)
|
||||
HOSTNAME=$(hostname)
|
||||
USERS_CONNECTED=$(who | wc -l)
|
||||
OS_INFO=$(lsb_release -d | cut -f2)
|
||||
OS_VERSION=$(lsb_release -r | cut -f2)
|
||||
UPDATES_AVAILABLE=$(apt list --upgradable 2>/dev/null | grep -c "/")
|
||||
|
||||
# Affichage de la bannière
|
||||
echo -e "${NC}"
|
||||
echo -e "${RED}----------------------------------------------------------------------${NC}"
|
||||
echo -e "${GREEN}1. Utilisation du Processeur: ${CPU_USAGE}%${NC}"
|
||||
echo -e "${BLUE}2. Utilisation de la RAM: ${RAM_USAGE}%${NC}"
|
||||
echo -e "${PURPLE}3. Utilisation du disque: ${DISK_USAGE}${NC}"
|
||||
echo -e "${CYAN}4. Adresse IP de la machine ipv4: ${IP_ADDRESS}${NC}"
|
||||
echo -e "${GREEN}5. Nom de la machine: ${HOSTNAME}${NC}"
|
||||
echo -e "${RED}6. Nombre d'utilisateurs connectés: ${USERS_CONNECTED}${NC}"
|
||||
echo -e "${CYAN}7. Système d'exploitation: ${OS_INFO}${NC}"
|
||||
echo -e "${CYAN}8. Version de l'OS: ${OS_VERSION}${NC}"
|
||||
echo -e "${RED}----------------------------------------------------------------------${NC}"
|
||||
echo -e "${NC}"
|
||||
|
||||
if [ $UPDATES_AVAILABLE -gt 0 ]; then
|
||||
echo -e "${RED}Des mises à jour sont disponibles.${NC}"
|
||||
echo -e "${NC}"
|
||||
else
|
||||
echo -e "${GREEN}Aucune mise à jour disponible.${NC}"
|
||||
echo -e "${NC}"
|
||||
fi
|
||||
Loading…
x
Reference in New Issue
Block a user