Ya se me habia olvidado hacer un thread como lluvia de ideas para encontrar una forma (o varias) de respaldar el server de forma rapida y preferentemente no muy costosa.
Como saben ya tuvimos un problema con la empresa de hosting, se degradò nuestro server y su servicio des respaldo no valia pito (y nos cobraban 5 dolares al mes).
Yo tenìa un respaldo en mi PC, pero se me chingo la PC y no la he podido reparar, ya hice todo lo de cajòn y parece que es la PSU o la Mobo.
Entonces si ahorita se cae mujico valemos verga bien cabròn.
¿Cómo esta la cosa?
El DNS lo tenemos con una empresa media conocida, ahi no hay bronca.
Tenemos montada la instancia con un docker compose y una base de mongodb.
Mi idea es hacer 2 cosas: respaldar todos los archivos del server config y configuraciòn del docker compose en un repo privado, lo cual necesitaria un servicio en el server para respaldar eso cada tanto teimpo (ejemplo cada 5 dias).
Y hacer un dump sql de la BD y eso subirlo a un servicio de almacenaje e ir rotando los 30 mas viejos.
Las imagenes se perderian, ya analisamos pagar un CDN y que todo este allí pero la neta es mucho baro.
Entonces escucho ideas, no hay ideas malas.
Uhm, estoy chingandome una avenita caliente mientras proceso todo este coitorreo
EDIT:
Terminandome la avenita caigo en las siguientes conclusiones:
Opcion A - Seguir como estamos
Gracias al huachicoin podemos seguir costeando el vps, la mayoria del tiempo es confiable, salvo cuando no, en estos casos estamos mejor preparados para un reboot rapido, no se si es mi estado de animo actual, pero perder nuestra informacion no me causa conflicto, un borron y cuenta nueva y a seguir memeando
Opcion B - Ponerse a programar
Si no queremos pagar el hosting, siempre podemos alojarlo locamente, aqui podemos exploitear tecnologias p2p como Iroh, la idea seria crear un nodo que funcione como backend, el software se distribuye y cada uno de nosotros se encarga de cuidar su propio nodo, dentro del protocolo Iroh podemos sincronizar la informacion entre nodos, asi cada uno de nosotros tendria una copia de la base de datos, mientras 1 nodo siga con vida, nuestra informacion se mantiene a flote.
Iroh usa un concepto de tokens en lugar de direccion IP para la comunicacion entre nodos, necesitariamos construir un webserver como relay hacia los nodos mujicanos, es decir, al entrar a mujico . org, el webserver entregaria la webapp y una lista de tokens (las direcciones donde estan los nodos) para que la webapp pueda comunicarse con los nodos e interactuar
Habria que configurarlo de forma que usar la webapp solo consuma el contenido que se va solicitando, y bueno, ni hablar sobre las desventajas de permitir que cualquier usuario corra su propio nodo y tener una copia de la base de datos de usuarios, habria que pensar bien en la seguridad de las contraseñas de los usuarios, etc etc
Conceptos asi ya existen, solo seria una idea puñetera de construr una red social p2p open source autoreplicable con almacenamiento y ancho de banda ilimitado, por decirlo asi.
Hasta hoy me entero de la existencia de iroh. Suena bien.
Qué tamaño tiene mujico?
Para las configuraciones creo que lo más fácil sería usar git y hacer commits cada que se modifique un archivo, podría ser ejecutando un demonio que revise si hay cambios cada cierto tiempo, que supongo que es a lo que te refieres.
Para el contenido creo que sería interesante alguna forma en las que todos podamos respaldar la información, por ejemplo haciendo un dump de la db o archivando el sitio usando una versión self-hosted de la wayback machine y subirla a un torrent cada semana, seguramanete haya una mejor alternativa pero creo que se entiende la idea.
La Ultima vez que se comprobó fue hace 4 meses y en ese momento Mujico pesaba 10 GB, pero anteriormente pesaba 200 GB antes de que se cayera.
No mames no, nunca ha pesado 200gb XD
Bueno el de reddit puede que si, pero la instancia de lemmy no
Opinaría algo, pero redes y sistemas no son lo mío, oye. Conozco algunos de los términos que mencionas, pero no lo suficiente como para recomendar algo útil (o algo, en última instancia). Sorry.
No pasa nada, usted ta rechulo y lo sabe
Leo esto y me siento tan feliz de haberme salido de sistemas, y eso que es un hobby gad dayum!
No mijo, pongase a jalar que se ocupa
Brah nomas estoy leyendo todo esto y yo like:
En otros temas ¿No han pensando en traerse un archivo de r/Mujico por pura nostalgia?
O sea, importar los posts de Reddit aquí en Lemmy.
Deberiamos, hay que pedirle a fantom que nos tire paro
Respaldar Mujico en Internet Archive (Wayback Machine) o hacerlo de la manera tradicional, subir todo el contenido de la página en este día.
de que empresa usan el VPS? he usado uno de OVH que tiene buena uptime, y netcup, que tiene plans bastante baratos.
una pregunta más: cual es el tamaño del respaldo?
Estamos usando Akamai
1-. ¿Por qué Mujico usa MongoDB?
2-. ¿MongoDB consume muchos recursos?
3-. Si, es así ¿Por qué no se busca otra alternativa a MongoDB?
Usa Postgree, la decision fue tomada por los zurdos de lemmy
Se podría probar garnet, para ver su rendimiento y si consume muchos o poco recursos.
https://github.com/microsoft/garnet
- Otra opción seria usar Valkey
https://github.com/valkey-io/valkey
-También esta KeyDB https://github.com/Snapchat/KeyDB
Dejame darle una vicenteada a estas madres, no las conocia
Es el stack de Lemmy, va con eso.
Es un poco extraño porque MongoDB no tiene una licencia AGPL, sino una Server Side Public License. El cual no es considerado como código abierto o software libre.
Me acuerdo que cuando estabamos federados con otras instancias, incluso le preguntamos una guia al creador de Lemmy y nos paso la guía usando un Docker compose con MongoDB; es buena herramienta, muy buen rendimiento, en donde trabajo la usamos y la considero muy estable.