Bueno, di el salto y procedí a migrar mis subidas. Solo para compartir, desde mi experiencia de principiante, algunas sugerencias y preguntas que podrían ayudar a otros o servir como retroalimentación. Mientras que la configuración del bucket S3 está bien documentada, el espacio de CDN parece tener mucha menos. Por ejemplo:
- Me llevó un tiempo (a alguien que no programa) darse cuenta de que existen dos modos de usar una CDN. Uno es para las subidas y el otro, separado, es para los “assets”, supongo que para CSS y elementos visuales del diseño del sitio.
- Configurar CDNs para cualquiera de los dos tipos podría beneficiarse de documentación o guía. ¿Push o pull? ¿Acceso restringido al bucket? La guía de almacenamiento de objetos parece asumir que todos saben cómo configurarlo.
- Para mí también fue un poco confusa la superposición entre la configuración en la interfaz de administración de usuario y las variables de entorno. Se pueden hacer ambas, pero se recomienda esta última. Centrándome solo en las subidas por ahora, descubrí que solo necesitaba un subconjunto de las variables de entorno de la guía de almacenamiento de objetos (quería evitar habilitar la CDN de assets porque no sabía cómo configurarla, ya sea push o pull).
- Tampoco me quedó claro cómo habilitar el dominio personalizado para la CDN. Entiendo lo del CNAME, pero ¿cómo habilito el SSL? ¿Debería conseguir que el certificado de Let’s Encrypt funcione con la CDN de AWS de alguna manera?
- El script migrate_to_s3 falló y terminó con una sugerencia para volver a ejecutarlo con un rastreo. Lo iteré un par de veces y también reprocesé publicaciones manualmente. Al final, completó con un alegre “¡Hecho!” y parece que todas las subidas ahora se cargan a través de la CDN.
- Lo que no esperaba era que todas las subidas también permanecieran en la máquina de Discourse. ¿Es ese el comportamiento previsto? Esperaría que la migración implicara que el trabajo de rake también eliminara las copias locales. ¿O eso ocurrirá más tarde mediante algún proceso de limpieza de archivos obsoletos?
Me alegra haber dado el salto (no soy tan cobarde después de todo). El sitio sigue funcionando bien, pero aún hay algunos puntos pendientes:
- Acceso restringido al bucket (sí/no)
- Eliminar las subidas que aún residen en el servidor para poder trabajar con copias de seguridad más pequeñas
- Certificado SSL para el dominio personalizado de la CDN
- Cómo configurar una CDN push (¿o era pull?) para la CDN de assets. ¿Eso solo mejora la velocidad del sitio?