refactor: improve project structure, idempotency, and security

- Replace interactive python setup script with native Ansible vars_prompt.

- Add missing Prometheus helm values template for resource management on Raspberry Pi.

- Replace deprecated apt_key module usage with modern keyring file download.

- Add project files: requirements.txt, requirements.yml, and .gitignore.
This commit is contained in:
Namu
2026-06-19 19:16:15 +02:00
parent d18ed0799c
commit 9e8d248a02
8 changed files with 97 additions and 22 deletions

View File

@@ -10,14 +10,21 @@
state: present
update_cache: yes
- name: Add Docker official GPG key
apt_key:
- name: Create directory for apt keyrings
file:
path: /etc/apt/keyrings
state: directory
mode: '0755'
- name: Add Docker official GPG key (modern keyring approach)
get_url:
url: https://download.docker.com/linux/debian/gpg
state: present
dest: /etc/apt/keyrings/docker.asc
mode: '0644'
- name: Set up Docker repository for ARM architecture
apt_repository:
repo: "deb [arch={{ 'arm64' if ansible_architecture == 'aarch64' else 'armhf' }}] https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable"
repo: "deb [arch={{ 'arm64' if ansible_architecture == 'aarch64' else 'armhf' }} signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable"
state: present
- name: Install Docker Engine and CLI components

View File

@@ -0,0 +1,56 @@
# Prometheus community Helm Chart values for Raspberry Pi (kube-prometheus-stack)
# Optimisé pour des environnements à ressources limitées (ex: Raspberry Pi)
prometheus:
prometheusSpec:
# Réglage des ressources mémoire/CPU pour éviter les OOM-kills sur les RPi
resources:
requests:
cpu: 100m
memory: 512Mi
limits:
cpu: 1000m
memory: 1024Mi
# Rétention des données
retention: 7d
retentionSize: 10Gi
alertmanager:
enabled: true
alertmanagerSpec:
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 200m
memory: 256Mi
grafana:
enabled: true
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 512Mi
# Désactivation optionnelle de certains services non requis ou consommateurs
kubeStateMetrics:
resources:
requests:
cpu: 10m
memory: 64Mi
limits:
cpu: 100m
memory: 128Mi
nodeExporter:
resources:
requests:
cpu: 10m
memory: 32Mi
limits:
cpu: 100m
memory: 64Mi