ajoute la recherche plein texte dans les cours et labs (bloc C)

Elasticsearch interne (jamais exposé, sécurité x-pack désactivée,
cohérent avec le reste des services internes de ce serveur), tas JVM
fixé à 512 Mo plutôt que le calcul automatique (jusqu'à 50 % de la
RAM système, désastreux sur ce serveur à 31 Go réels). Appels HTTP
directs depuis Laravel, pas de bibliothèque cliente pour un besoin
aussi simple. Index reconstruit après chaque synchronisation du
catalogue, page de recherche commune aux profs et aux élèves.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Adam Belkacemi 2026-10-14 13:24:13 +02:00
parent e549f03e1b
commit 777dd1cbc8
20 changed files with 545 additions and 0 deletions

View file

@ -0,0 +1,15 @@
# Géré par Ansible (rôle elasticsearch) — ne pas modifier à la main.
# Instance interne (consommée seulement par le portail, jamais exposée) :
# sécurité x-pack désactivée, comme les autres services internes de ce
# serveur (MariaDB/Redis de l'app sur 127.0.0.1, API OpenStack sur
# 10.10.0.1 en HTTP) — l'isolation vient du pare-feu et de l'écoute en
# local seulement, pas de TLS/authentification par service. Voir ADR 0009.
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
discovery.type: single-node
network.host: 127.0.0.1
http.port: {{ elasticsearch_port }}
xpack.security.enabled: false
xpack.security.enrollment.enabled: false
xpack.security.http.ssl.enabled: false
xpack.security.transport.ssl.enabled: false

View file

@ -0,0 +1,3 @@
# Géré par Ansible (rôle elasticsearch) — ne pas modifier à la main.
-Xms{{ elasticsearch_tas_mo }}m
-Xmx{{ elasticsearch_tas_mo }}m