Compare commits
5 Commits
v0.0.1r-ps
...
v0.0.1v-jc
Author | SHA1 | Date | |
---|---|---|---|
92c6b3eb89 | |||
bce5723e7b | |||
a7315fa4c8 | |||
8cfbefc4dc | |||
0697ad4eec |
@ -46,9 +46,6 @@ user:
|
|||||||
- nogroup
|
- nogroup
|
||||||
home: /var/lib/misc
|
home: /var/lib/misc
|
||||||
shell: /usr/sbin/nologin
|
shell: /usr/sbin/nologin
|
||||||
group:
|
|
||||||
ssh:
|
|
||||||
exists: true
|
|
||||||
command:
|
command:
|
||||||
/sbin/sysctl net.ipv4.ip_forward:
|
/sbin/sysctl net.ipv4.ip_forward:
|
||||||
exit-status: 0
|
exit-status: 0
|
||||||
@ -59,6 +56,7 @@ command:
|
|||||||
dns:
|
dns:
|
||||||
depl.sio.lan:
|
depl.sio.lan:
|
||||||
resolveable: true
|
resolveable: true
|
||||||
|
resolvable: null
|
||||||
timeout: 500
|
timeout: 500
|
||||||
process:
|
process:
|
||||||
dnsmasq:
|
dnsmasq:
|
||||||
|
83
localhost,
Normal file
83
localhost,
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
# Ce fichier viminfo a été généré par Vim 9.0.
|
||||||
|
# Vous pouvez l'éditer, mais soyez prudent.
|
||||||
|
|
||||||
|
# Viminfo version
|
||||||
|
|1,4
|
||||||
|
|
||||||
|
# 'encoding' dans lequel ce fichier a été écrit
|
||||||
|
*encoding=utf-8
|
||||||
|
|
||||||
|
|
||||||
|
# hlsearch on (H) or off (h):
|
||||||
|
~h
|
||||||
|
# Historique ligne de commande (chronologie décroissante) :
|
||||||
|
:q!
|
||||||
|
|2,0,1703236388,,"q!"
|
||||||
|
:x
|
||||||
|
|2,0,1703236381,,"x"
|
||||||
|
:x!
|
||||||
|
|2,0,1703236221,,"x!"
|
||||||
|
|
||||||
|
# Historique chaîne de recherche (chronologie décroissante) :
|
||||||
|
|
||||||
|
# Historique expression (chronologie décroissante) :
|
||||||
|
|
||||||
|
# Historique ligne de saisie (chronologie décroissante) :
|
||||||
|
|
||||||
|
# Historique Ligne de débogage (chronologie décroissante) :
|
||||||
|
|
||||||
|
# Registres :
|
||||||
|
""1 LINE 0
|
||||||
|
connection: local
|
||||||
|
|3,1,1,1,1,0,1703236374," connection: local"
|
||||||
|
"2 LINE 0
|
||||||
|
hosts: localhost
|
||||||
|
|3,0,2,1,1,0,1703236374," hosts: localhost"
|
||||||
|
|
||||||
|
# Marques dans le fichier :
|
||||||
|
'0 1 2 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,48,1,2,1703236388,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'1 1 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,49,1,9,1703236339,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'2 9 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,50,9,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'3 9 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,51,9,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'4 11 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,52,11,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'5 11 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,53,11,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'6 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,54,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'7 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,55,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'8 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,56,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
'9 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,57,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
|
||||||
|
# Liste de sauts (le plus récent en premier) :
|
||||||
|
-' 1 2 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,39,1,2,1703236388,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
-' 1 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,39,1,9,1703236339,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
-' 9 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,39,9,9,1703236318,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
-' 11 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,39,11,9,1703236318,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
-' 11 9 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,39,11,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
-' 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,39,1,13,1703236018,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
-' 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
|4,39,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
|
||||||
|
|
||||||
|
# Historique des marques dans les fichiers (les plus récentes en premier) :
|
||||||
|
|
||||||
|
> ~/tools/ansible/gsb2024/s-mon.yml
|
||||||
|
* 1703236386 0
|
||||||
|
" 1 2
|
||||||
|
^ 9 10
|
||||||
|
. 2 0
|
||||||
|
+ 10 0
|
||||||
|
+ 2 0
|
16
roles/journald-rcv/README.md
Normal file
16
roles/journald-rcv/README.md
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
# Role syslog : installation et configuration de syslog serveur (centralisation des logs)
|
||||||
|
***
|
||||||
|
|
||||||
|
Ce role a pour objectif de activer le module UDP dans le fichier /etc/rsyslog.conf pour accepter les logs entrants des machines concernées :
|
||||||
|
on décommente la ligne suivante :
|
||||||
|
'module(load="imudp"\)'
|
||||||
|
|
||||||
|
Ensuite le role active l'écoute du module UDP sur le port 514 afin de pouvoir envoyer les logs.
|
||||||
|
on décommente la ligne suivante dans le même fichier que ci-dessus :
|
||||||
|
'input\(type="imudp" port="514"\)'
|
||||||
|
|
||||||
|
pour finir le role va charger le module UDP afin que la machine **s-infra** puissent reçevoir les logs entrants.
|
||||||
|
Pour faire cela on décommente la ligne suivante dans le fichier /etc/systemd/journald.conf :
|
||||||
|
'ForwardToSyslog=yes'
|
||||||
|
|
||||||
|
pour finir le role va redemmarer automatiquement les services journald et rsyslog
|
5
roles/journald-rcv/handlers/main.yml
Normal file
5
roles/journald-rcv/handlers/main.yml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
- name: restart journald
|
||||||
|
service:
|
||||||
|
name: systemd-journald.service
|
||||||
|
state: restarted
|
37
roles/journald-rcv/tasks/main.yml
Normal file
37
roles/journald-rcv/tasks/main.yml
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
---
|
||||||
|
- name: Installation de systemd-journal-remote
|
||||||
|
apt:
|
||||||
|
name: systemd-journal-remote
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: Enable et start systemd-journal-remote.socket
|
||||||
|
systemd:
|
||||||
|
name: systemd-journal-remote.socket
|
||||||
|
enabled: yes
|
||||||
|
state: started
|
||||||
|
|
||||||
|
- name: Copie de systemd-journal-remote.service dans /etc/systemd/system
|
||||||
|
copy:
|
||||||
|
src: /lib/systemd/system/systemd-journal-remote.service
|
||||||
|
dest: /etc/systemd/system/systemd-journal-remote.service
|
||||||
|
remote_src: yes
|
||||||
|
backup: yes
|
||||||
|
|
||||||
|
|
||||||
|
- name: Modification de systemd-journal-remote.service
|
||||||
|
replace:
|
||||||
|
path: /etc/systemd/system/systemd-journal-remote.service
|
||||||
|
regexp: '--listen-https=-3'
|
||||||
|
replace: '--listen-http=-3'
|
||||||
|
|
||||||
|
- name: Creation /var/log/journal/remote directory
|
||||||
|
file:
|
||||||
|
path: /var/log/journal/remote
|
||||||
|
state: directory
|
||||||
|
owner: systemd-journal-remote
|
||||||
|
|
||||||
|
- name: Redemarrage de systemd
|
||||||
|
systemd:
|
||||||
|
daemon_reload: yes
|
||||||
|
notify:
|
||||||
|
- restart jourald
|
16
roles/journald-snd/README.md
Normal file
16
roles/journald-snd/README.md
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
# Role syslog : installation et configuration de syslog serveur (centralisation des logs)
|
||||||
|
***
|
||||||
|
|
||||||
|
Ce role a pour objectif de activer le module UDP dans le fichier /etc/rsyslog.conf pour accepter les logs entrants des machines concernées :
|
||||||
|
on décommente la ligne suivante :
|
||||||
|
'module(load="imudp"\)'
|
||||||
|
|
||||||
|
Ensuite le role active l'écoute du module UDP sur le port 514 afin de pouvoir envoyer les logs.
|
||||||
|
on décommente la ligne suivante dans le même fichier que ci-dessus :
|
||||||
|
'input\(type="imudp" port="514"\)'
|
||||||
|
|
||||||
|
pour finir le role va charger le module UDP afin que la machine **s-infra** puissent reçevoir les logs entrants.
|
||||||
|
Pour faire cela on décommente la ligne suivante dans le fichier /etc/systemd/journald.conf :
|
||||||
|
'ForwardToSyslog=yes'
|
||||||
|
|
||||||
|
pour finir le role va redemmarer automatiquement les services journald et rsyslog
|
10
roles/journald-snd/handlers/main.yml
Normal file
10
roles/journald-snd/handlers/main.yml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
- name: enable systemd-journal-upload
|
||||||
|
service:
|
||||||
|
name: systemd-journal-upload.service
|
||||||
|
state: enabled
|
||||||
|
|
||||||
|
- name: restart systemd-journal-upload
|
||||||
|
service:
|
||||||
|
name: systemd-journal-upload.service
|
||||||
|
state: restarted
|
31
roles/journald-snd/tasks/main.yml
Normal file
31
roles/journald-snd/tasks/main.yml
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
- name: 1. installe systemd-journal-remote
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- systemd-journal-remote
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: 2. indique l'URL journald distant
|
||||||
|
replace:
|
||||||
|
path: /etc/systemd/journal-upload.conf
|
||||||
|
regexp: '^#URL='
|
||||||
|
replace: 'URL=http://syslog.gsb.adm:19532'
|
||||||
|
|
||||||
|
- name: 3. Just force systemd to reread configs (2.4 and above)
|
||||||
|
ansible.builtin.systemd_service:
|
||||||
|
daemon_reload: true
|
||||||
|
|
||||||
|
- name: 4. active le service systemd-journald-upload
|
||||||
|
ansible.builtin.service:
|
||||||
|
name: systemd-journal-upload.service
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: 5. redemarre systemd-journal-upload.service
|
||||||
|
service:
|
||||||
|
name: systemd-journal-upload.service
|
||||||
|
state: restart
|
||||||
|
#notify:
|
||||||
|
#- enable systemd-journal-upload
|
||||||
|
#- restart systemd-journal-upload
|
||||||
|
|
||||||
|
|
18
roles/zabbix-srv/README.md
Normal file
18
roles/zabbix-srv/README.md
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# Rôle nagios
|
||||||
|
***
|
||||||
|
Rôle Nagios pour la supervision des différentes machines
|
||||||
|
|
||||||
|
## Tables des matières
|
||||||
|
1. [Que fait le rôle Zabbix ?]
|
||||||
|
|
||||||
|
|
||||||
|
## Que fait le rôle Nagios ?
|
||||||
|
|
||||||
|
|
||||||
|
### Installation et configuration de Zabbix
|
||||||
|
|
||||||
|
Le rôle Zabbix va installer apache2 pour le serveur web, zabbix-server pour la supervision, zabbix qui sera notre outil de supervision.
|
||||||
|
|
||||||
|
Lors de la première connexion, on indique les identifiants de la BDD avec "zabbix" et "password".
|
||||||
|
|
||||||
|
Pour l'id de Zabbix, c'est "Admin" et "zabbix", à l'adresse "https://s-mon/zabbix".
|
17
roles/zabbix-srv/handlers/main.yml
Normal file
17
roles/zabbix-srv/handlers/main.yml
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
- name: restart zabbix server
|
||||||
|
service:
|
||||||
|
name: zabbix-server
|
||||||
|
state: restarted
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: restart apache2
|
||||||
|
service:
|
||||||
|
name: apache2
|
||||||
|
state: restarted
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: restart zabbix agent
|
||||||
|
service:
|
||||||
|
name: zabbix-agent
|
||||||
|
state: restarted
|
||||||
|
enabled: yes
|
78
roles/zabbix-srv/tasks/main.yml
Normal file
78
roles/zabbix-srv/tasks/main.yml
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
- name: 1. Récupérer les dépots de zabbix
|
||||||
|
get_url:
|
||||||
|
url: https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian12_all.deb
|
||||||
|
dest: /tmp
|
||||||
|
|
||||||
|
- name: 2. Installer les depots
|
||||||
|
apt:
|
||||||
|
deb: "/tmp/zabbix-release_6.4-1+debian12_all.deb"
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: 3. Lancer un apt update
|
||||||
|
apt:
|
||||||
|
update_cache: yes
|
||||||
|
|
||||||
|
- name: 4. Installer les paquets de zabbix et mariadb
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- zabbix-server-mysql
|
||||||
|
- zabbix-frontend-php
|
||||||
|
- zabbix-apache-conf
|
||||||
|
- zabbix-sql-scripts
|
||||||
|
- zabbix-agent
|
||||||
|
- mariadb-server
|
||||||
|
- python3-pymysql
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: 5. s'assurer que mariadb est en fonctionnement
|
||||||
|
service:
|
||||||
|
name: mariadb
|
||||||
|
state: started
|
||||||
|
|
||||||
|
- name: 6. Créer la base de données
|
||||||
|
community.mysql.mysql_db:
|
||||||
|
name: zabbix
|
||||||
|
encoding: utf8mb4
|
||||||
|
collation: utf8mb4_bin
|
||||||
|
state: present
|
||||||
|
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||||
|
|
||||||
|
- name: 7. Creer un utilisateur et lui attribuer tous les droits
|
||||||
|
community.mysql.mysql_user:
|
||||||
|
name: zabbix
|
||||||
|
password: password
|
||||||
|
priv: '*.*:ALL,GRANT'
|
||||||
|
state: present
|
||||||
|
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||||
|
|
||||||
|
- name: 8. Modifier une variable pour importer un schema
|
||||||
|
community.mysql.mysql_variables:
|
||||||
|
variable: log_bin_trust_function_creators
|
||||||
|
value: 1
|
||||||
|
mode: global
|
||||||
|
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||||
|
|
||||||
|
- name: 9. Importer le schema initial
|
||||||
|
shell: zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -ppassword zabbix
|
||||||
|
|
||||||
|
- name: 10. Modifier la variable pour le schema
|
||||||
|
community.mysql.mysql_variables:
|
||||||
|
variable: log_bin_trust_function_creators
|
||||||
|
value: 0
|
||||||
|
mode: global
|
||||||
|
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||||
|
|
||||||
|
- name: 11. Configurer le mdp de la db
|
||||||
|
replace:
|
||||||
|
path: /etc/zabbix/zabbix_server.conf
|
||||||
|
regexp: '^# DBPassword='
|
||||||
|
replace: 'DBPassword=password'
|
||||||
|
|
||||||
|
- name: 12. Lancer le service zabbix
|
||||||
|
service:
|
||||||
|
name:
|
||||||
|
- zabbix-server
|
||||||
|
- zabbix-agent
|
||||||
|
- apache2
|
||||||
|
state: restarted
|
||||||
|
enabled: yes
|
@ -8,7 +8,7 @@
|
|||||||
- dns-master
|
- dns-master
|
||||||
- webautoconf
|
- webautoconf
|
||||||
- snmp-agent
|
- snmp-agent
|
||||||
# - syslog-cli
|
- journald-snd
|
||||||
- ssh-cli
|
- ssh-cli
|
||||||
- post
|
- post
|
||||||
|
|
||||||
|
21
s-mon.yml
21
s-mon.yml
@ -1,16 +1,15 @@
|
|||||||
- name: Nagios
|
---
|
||||||
hosts: localhost
|
- name: Zabbix
|
||||||
connection: local
|
hosts: all
|
||||||
become: yes
|
# become: yes
|
||||||
become_method: sudo
|
# become_method: sudo
|
||||||
become_user: root
|
# become_user: root
|
||||||
vars:
|
# vars:
|
||||||
access: "Restricted Nagios4 Access"
|
# access: "Restricted Nagios4 Access"
|
||||||
roles:
|
roles:
|
||||||
- base
|
- base
|
||||||
- goss
|
- goss
|
||||||
- nagios
|
|
||||||
- postfix
|
|
||||||
- ssh-cli
|
- ssh-cli
|
||||||
- syslog
|
- zabbix-srv
|
||||||
|
- journald-rcv
|
||||||
- post
|
- post
|
||||||
|
Reference in New Issue
Block a user