Ajout des playbooks Ansible et ajout d'un README qui explique le rôle de chaque playbook dans le répertoire 'ansible'.
This commit is contained in:
parent
951ac2f4d7
commit
17133b5ba9
11
ansible/README.md
Normal file
11
ansible/README.md
Normal file
@ -0,0 +1,11 @@
|
||||
# Ansible
|
||||
Dans ce répertoire se situent les *playbooks* Ansible.
|
||||
|
||||
## apbase.yml
|
||||
Ce *playbook* se charge de mettre à jour les paquets, configurer APT pour passer par le proxy, définit une *timezone* correcte, et se charge d'installer les paquets sur les deux machines.
|
||||
|
||||
## apdb.yml
|
||||
Ce *playbook* se charge d'installer un module crucial sur la machine **ap31-test**, puis créé une base de données vide, un utilisateur avec l'accès total sur la BDD, puis importe le fichier .sql de base pour rendre la BDD utilisable.
|
||||
|
||||
## apdbdump.yml
|
||||
Ce *playbook* se charge de créer un dump de la BDD avant de l'envoyer sur la machine qui exécute le *playbook* Ansible.
|
34
ansible/apbase.yml
Normal file
34
ansible/apbase.yml
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
#- name: Install prod/test
|
||||
- hosts: all
|
||||
become: true
|
||||
|
||||
tasks:
|
||||
- name: Parametrage Timezone Europe/Paris
|
||||
community.general.timezone:
|
||||
name: Europe/Paris
|
||||
|
||||
- name: Copie apt.conf
|
||||
copy:
|
||||
content: |
|
||||
Acquire::http::Proxy "http://10.121.38.1:8080/";
|
||||
Acquire::https::Proxy "http://10.121.38.1:8080/";
|
||||
dest: /etc/apt/apt.conf
|
||||
|
||||
- name: Update and upgrade apt packages
|
||||
apt:
|
||||
upgrade: yes
|
||||
update_cache: yes
|
||||
cache_valid_time: 86400 #One day
|
||||
|
||||
|
||||
- name: Installation paquets
|
||||
apt:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
with_items:
|
||||
- tomcat10
|
||||
- mariadb-server
|
||||
- ant
|
||||
- qemu-guest-agent
|
||||
|
47
ansible/apdb.yml
Normal file
47
ansible/apdb.yml
Normal file
@ -0,0 +1,47 @@
|
||||
# apdb.yml
|
||||
---
|
||||
- hosts: all
|
||||
become: true
|
||||
tasks:
|
||||
- name: 1. Installe une des dépendances d'une extension Ansible.
|
||||
apt:
|
||||
name: python3-pymysql
|
||||
state: present
|
||||
|
||||
- name: 2. Créé la base de données vide.
|
||||
community.mysql.mysql_db:
|
||||
check_implicit_admin: true
|
||||
name: sdis29
|
||||
state: present
|
||||
login_unix_socket: /run/mysqld/mysqld.sock
|
||||
|
||||
- name: 3. Créé l'utilisateur pour la BDD.
|
||||
community.mysql.mysql_user:
|
||||
name: reseau
|
||||
password: Ilona21?
|
||||
priv: 'sdis29.*:ALL,GRANT'
|
||||
state: present
|
||||
login_unix_socket: /run/mysqld/mysqld.sock
|
||||
|
||||
- name: 4. Vérifie si un répertoire db existe.
|
||||
stat:
|
||||
path: /home/debian/db
|
||||
register: rept_stat
|
||||
|
||||
- name: 5. Créé le répertoire db pour le fichier sql.
|
||||
command: mkdir /home/debian/db
|
||||
when: rept_stat.stat.exists == false
|
||||
|
||||
- name: 6. Copie le fichier d'import de la base de données
|
||||
template:
|
||||
src: db/sdis29.sql
|
||||
dest: /home/debian/db/sdis29.sql
|
||||
|
||||
- name: 7. Import de la base de données.
|
||||
run_once: true
|
||||
community.mysql.mysql_db:
|
||||
state: import
|
||||
name: all
|
||||
encoding: utf8
|
||||
target: db/sdis29.sql
|
||||
login_unix_socket: /run/mysqld/mysqld.sock
|
17
ansible/apdbdump.yml
Normal file
17
ansible/apdbdump.yml
Normal file
@ -0,0 +1,17 @@
|
||||
# apbddump.yml
|
||||
---
|
||||
- hosts: all
|
||||
become: true
|
||||
tasks:
|
||||
- name: 1. Exécute le dump de la BDD.
|
||||
community.mysql.mysql_db:
|
||||
check_implicit_admin: true
|
||||
state: dump
|
||||
name: sdis29
|
||||
target: /home/debian/db/sdis29-backup.sql.gz
|
||||
login_unix_socket: /run/mysqld/mysqld.sock
|
||||
|
||||
- name: 2. Envoie le dump sur la machine Ansible.
|
||||
ansible.builtin.fetch:
|
||||
src: /home/debian/db/sdis29-backup.sql.gz
|
||||
dest: /home/debian/
|
2
ansible/hosts
Normal file
2
ansible/hosts
Normal file
@ -0,0 +1,2 @@
|
||||
[pt]
|
||||
ap31-pt
|
Loading…
x
Reference in New Issue
Block a user