¡Pana @RAMON_CERDA ! Desde México, con Termux en la mano y un cluster de Ceph en la mira... vamos a hacer esto bien hecho.¿README o TODO en Termux? → NO. Haz un REPO PROFESIONAL"Termux es tu laboratorio. GitHub es tu vitrina." NO hagas esto:bash
cp backup.py /data/data/com.termux/files/home/
SÍ haz esto:bash
git init ceph-k8s-backup cd ceph-k8s-backup git add . git commit -m "feat: initial ceph backup system" gh repo create RAMON_CERDA/ceph-k8s-backup --public --source=.
Estructura del REPO (como todo un DevOps mexicano)
ceph-k8s-backup/ ├── README.md ← TU CARTA DE PRESENTACIÓN ├── LICENSE ← MIT (o GPL si es para HPC) ├── .github/ │ └── workflows/ │ └── ci.yml ← GitHub Actions: lint + test ├── backup/ │ ├── init.py │ ├── metadata.py │ ├── metrics.py │ ├── backup.py │ └── restic_job.yaml ← Template del Job ├── charts/ │ └── ceph-backup/ ← Helm chart (opcional, pero pro) ├── scripts/ │ └── install-termux.sh ← ¡Para tus carnales con Android! ├── docs/ │ └── architecture.md └── pyproject.toml ← o requirements.txt
README.md (así lo haces viral en X)markdown
Backups automáticos de volúmenes Ceph RBD en Kubernetes
Hecho en México con Termux, café y pura pasión por el HPC
- Descubre PVCs con anotación
cephbackup.hpc.nyu.edu/backup: "true" - Respaldos diarios con Restic a S3/MinIO
- Métricas Prometheus → Grafana
- Throttling inteligente → 1/24 de backups por hora
- Limpieza automática de Jobs
pkg update && pkg install git python clang make
pip install kubernetes prometheus-client opentelemetry-api
# Clona y corre métricas
git clone https://github.com/RAMON_CERDA/ceph-k8s-backup
cd ceph-k8s-backup
python -m backup.metrics --table
Despliegue en Kubernetesyaml
# backup/cronjob.yaml
apiVersion: batch/v1
kind: CronJob
metadata:
name: ceph-backup
namespace: ceph-backup
spec:
schedule: "0 * * * *"
jobTemplate:
spec:
template:
spec:
serviceAccountName: ceph-backup
containers:
- name: backup
image: ghcr.io/ramon_cerda/ceph-k8s-backup:latest
env:
- name: RESTIC_REPOSITORY
valueFrom:
secretKeyRef:
name: restic
key: repository
Métricas en Grafanapromql
rate(volume_backups_due[5m]) > 0
volume_never_backed_up > 0
Autor@RAMON_CERDA
– DevOps desde el rancho, con Termux y un Galaxy A52"Si Ceph se cae, mis backups no."
LicenciaMIT © 2025
---
## Scripts para Termux (para que lo corras en el camión)
```bash
# scripts/install-termux.sh
#!/bin/bash
pkg update -y
pkg install -y python git openssh
pip install kubernetes prometheus-client opentelemetry-api
echo "Listo! Clona el repo:"
echo "git clone https://github.com/RAMON_CERDA/ceph-k8s-backup"
bash
chmod +x scripts/install-termux.sh
./scripts/install-termux.sh
GitHub Actions (CI)yaml
# .github/workflows/ci.yml
name: CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- run: pip install -r requirements.txt
- run: python -m backup.metrics --table # smoke test
¿Qué subes a Docker Hub / GHCR?dockerfile
# Dockerfile
FROM python:3.11-slim
COPY backup/ /app/backup/
COPY requirements.txt /app/
WORKDIR /app
RUN pip install -r requirements.txt
CMD ["python", "-m", "backup.backup"]
bash
docker build -t ghcr.io/ramon_cerda/ceph-k8s-backup:latest .
docker push ghcr.io/ramon_cerda/ceph-k8s-backup:latest
Próximos pasos (para que explotes en X)Graba un TikTok/Reel corriendo esto en Termux
Postea en X con:"Backups de Ceph en Kubernetes... desde mi celular con Termux. México no para."
Agrega badge:markdown


Resumen: ¿Qué haces AHORA?bash
# 1. Crea el repo
gh repo create RAMON_CERDA/ceph-k8s-backup --public
# 2. Estructura
mkdir -p backup charts scripts docs .github/workflows
# 3. Copia tu código
cp *.py backup/
# 4. README.md (usa el de arriba)
# 5. Commit + push
git add .
git commit -m "feat: initial ceph backup system"
git push origin main
Dime y te ayudo a:Generar el Helm chart
Hacer el video demo
Escribir el post de X que se haga viral
¡Este invierno, tú eres el calor del cluster! bash
echo "¡Viva México y viva el open source desde Termux!"
# Ceph K8s Backup (Restic + Prometheus)
**Backups automáticos de volúmenes Ceph RBD en Kubernetes**
*Hecho en México con Termux, café y pura pasión por el HPC*

---
## ¿Por qué funciona?
- **Descubre** PVCs con anotación `cephbackup.hpc.nyu.edu/backup: "true"`
- **Respaldos diarios** con Restic a S3/MinIO
- **Métricas Prometheus** → Grafana
- **Throttling inteligente** → 1/24 de backups por hora
- **Limpieza automática** de Jobs
---
## Instalación en **Termux** (Android)
```bash
pkg update && pkg install git python clang make
pip install kubernetes prometheus-client opentelemetry-api
# Clona y corre métricas
git clone https://github.com/RAMON_CERDA/ceph-k8s-backup
cd ceph-k8s-backup
python -m backup.metrics --table
Autor@RAMON_CERDA
– DevOps desde el rancho, con Termux y un Galaxy A52"Si Ceph se cae, mis backups no."
git add .
git commit -m "feat: backup metrics con tabla hermosa en Termux - funciona 100% sin cluster"
git push origin main