A veces, un proyecto vive en un centro de datos extranjero barato, cae bajo las cerraduras de Roskomnadzor, se encuentra periódicamente bajo ataques DDoS, pero al mismo tiempo tiene terabytes de datos y tráfico.
¿Cómo vivir con eso?

Preámbulo
Tenemos un pequeño banco de fotos para soporte. No mencionaremos el nombre y el país, solo algunos datos técnicos:
50 TB de datos para almacenamiento, aproximadamente 100 GB se actualizan mensualmente, "datos activos" (el 95% de las solicitudes van a ellos) - 200 GB.
Tráfico promedio - 50 Tb / mes.
Hace varios años, se eligieron varios servidores de la serie Hetzner SX con discos grandes para publicar fotos (para almacenar el PD, tuve que encontrar una solución más complicada, pero más sobre eso en otro momento).
Southbridge dudaba que Hetzner fuera adecuado para tal proyecto, pero se logró el nivel requerido de accesibilidad y calidad de conectividad.
Además, para tal proyecto, usar CDN será un orden de magnitud más costoso que distribuir estadísticas desde servidores en un centro de datos económico.
Parcela
Aquí en nuestra historia aparece Roskomnadzor, que no se mencione en vano. En la primavera del 18, comenzaron las cerraduras de alfombras, y en mayo cubrieron a muchos de nuestros clientes.
Algunos clientes resolvieron el problema con el acceso a Hetzner, Amazon, MS Azure, GCE, Digitalocean dramáticamente: transfirieron todo el servidor a Rusia (¡Hola, Selectel!), Pero para nuestro héroe, un pequeño banco de fotos que transporta constantemente 50 TB de datos de ida y vuelta es demasiado costoso , y no íbamos a dejar los servidores del proyecto en Rusia después del final de las cerraduras.
Para problemas grandes e inadecuados, se necesitan soluciones pequeñas y adecuadas.
Resolución de problemas
Por ejemplo, use otros servidores o servicios (desbloqueados) para el front-end. Cambiar el rango de direcciones IP no ayudó al 100%, porque ILV bloqueó nuevas subredes IP todos los días, por lo que decidimos habilitar el proxy a través de Cloudflare.com. De repente, quién no sabe, no solo protegen contra los ataques DDoS (no tan buenos como los mejores jugadores en este mercado), sino que también brindan un servicio CDN (y lo hacen bien).
Esta es una gran solución si sus direcciones de Cloudflare no están bloqueadas)
Ok, lo encendieron y comenzaron a monitorear la estabilidad del trabajo y el retorno del tráfico. Después de conectar CF, vimos esta imagen en el gráfico del conteo de tráfico de uno de los servidores (imagen de las estadísticas de Hetzner):

El tráfico entrante ha cambiado dentro del margen de error (que se confirma en el cronograma para cargar nuevas fotos, para lo cual se ha realizado una métrica de monitoreo por separado), el tráfico saliente en este servidor al momento de conectar CF cayó más de 3 veces. El tráfico real total no cayó 3 veces, solo CF comenzó a distribuir el tráfico entre servidores de una manera diferente.
Por ejemplo, un gráfico para el mismo servidor de nuestro sistema de monitoreo (durante 3 meses, para que no sea demasiado pequeño):

Y según uno de los otros:

Pero el tráfico general aún cayó un 20%, es decir CF ahorró al proyecto parte del tráfico.
La latencia promedio ha aumentado, pero no mostraremos estos gráficos.
Motivo: Cloudflare tiene pocos puntos de distribución en Rusia. En Europa y América del Norte, ya es mucho más efectivo.
Y en paralelo con el tráfico, monitoreamos la actividad del uso del servicio. Se cargan nuevas fotos al servicio, y controlamos su número (y el tráfico entrante).
Programe durante 3 meses (abril-junio) desde uno de los servidores que procesan solicitudes para cargar fotos:

Y aquí hay otro servidor:

Cloudflare comenzó a distribuir el tráfico de backend de una manera ligeramente diferente. Pero el contenido continuó cargándose, el servicio funcionó, no hubo una caída catastrófica en la calidad (según las opiniones de los usuarios, la diferencia no era notable en principio).
También existe el riesgo de obtener una dirección bloqueada en Cloudflare, pero puede reducirla si cobra una tarifa pagada.
Después de completar el ILV Carpet Lock, deshabilitamos Cloudflare.
¿Cuál es el resultado?
- Por 5–20 $ / mes (en nuestro caso fueron solo 5 $ / mes), puede resolver un problema similar y no gastar miles de dólares en alquilar servidores más caros y transferir datos.
- Incluso para proyectos con terabytes de tráfico, las soluciones gratuitas o casi gratuitas son adecuadas. Probado en la práctica.
Como alternativa:
- DDoS-GUARD ofrece una tarifa gratuita con proxies de tráfico y protección contra ataques DDoS.
- Varios proveedores de servicios de protección DDoS tenían un servicio de ayuda gratuito con tales bloqueos. (Por cierto, tampoco tomamos dinero extra para resolver el problema con las cerraduras).
- Puede tomar uno de los conocidos servicios de CDN: keycdn.com, cdn77.com, Akamai CDN, CDNVideo, Ngenix.net, etc. Resuelven el problema de bloquear la protección de sus propios clientes. Pero esto a) es más costoso b) no resuelve el problema de devolver contenido no estático.
- Puede conectar otro servicio de protección proxy y DDoS (trabajamos mucho con Qrator y SkyparkCDN / G-Core Labs, por ejemplo), pero deberán pagar por cada megabit de tráfico útil, y será muy costoso.
- "Su interfaz desbloqueada" se puede implementar en cualquiera de los proveedores del mundo, al mismo tiempo que necesita seleccionar un rango desbloqueado de direcciones y garantizar una buena conectividad entre sus servidores y servidores frontend. Si realmente necesita hacer esto, primero puede verificar la dirección automáticamente de la lista o manualmente aquí .
Personalmente, recomiendo packet.net y server.com para tales "interfaces": excelente conectividad y la capacidad de tomar un servidor con una tarifa por hora.
ps En todo caso, soy uno de los altavoces RedSlerm. Ven, será interesante:
https://slurm.io/redslurm/