¿Puede el servidor web Raspberry Pi Cluster de 8 nodos sobrevivir al La-Tecnologia?

Muchas personas han utilizado su Raspberry Pi como servidor web. [Steve] sin embargo, es el primer servidor de grupo pi de equilibrio de carga de 8 nodos que hemos encontrado. Si bien hemos visto grupos pi antes, nunca se han presionado para que funcionen como un servidor web público. [Steve] creó un sitio de información realmente agradable sobre Raspberry Pi y Linux en general. A medida que aumentaban las vistas de su página, tuvo que agregar nodos al servidor. Por ahora [Steve] ve unas 45.000 páginas al mes.

A simple vista parecería que el sistema de balanceo de carga sería el eslabón débil de la cadena. Sin embargo, [Steve] de hecho, se dio cuenta de que necesitaba más que Pi para manejar esta tarea. Creó el equilibrador de carga usando una computadora antigua con 512 MB de RAM y una CPU x86 de 2,7 GHz. Lo más importante del equilibrador son las interfaces de red duales, un lado para Internet y el otro para el clúster Pi. El equilibrador, sin embargo, no es un enrutador. Solo se reenvían las solicitudes HTTP. Los propios nodos Pi viven en su propia subred. Steve hizo algunas pruebas básicas con un asedio, pero nada supera a una prueba del mundo real. Asumimos que unos pocos enlaces en La-Tecnologia serían suficientes para probar el sistema con ácido.

  • evan dice:

    ¡Sirve páginas rápidamente para mí!
    Buena construcción, Steve, y gracias por toda la información. Lo marqué para leerlo más tarde.

  • isama dice:

    Buena construcción, difícil, tengo ganas de usar algo que no sea raspberry, porque un balanceador de carga se siente como una trampa: P

    Intentaría usar LVS en todas las ip compartidas de pi. Nerver lo probó, pero parece una buena manera de obtener redundancia y equilibrio de carga en el pi.
    http://www.linuxvirtualserver.org/

    • apestososteve dice:

      Acordado. Parece negar el punto de usar el Pi en mi opinión. También es posible simplemente descartar todo el lote y utilizar un servidor atómico inteligente de bajo consumo. Yo uso uno que come sólo 10 vatios. Mucha memoria RAM y una unidad SATA rápida.

    • dax dice:

      La CPU x86 de 2,7 GHz probablemente tenga más potencia de procesamiento bruta que la Pi combinada.

      • Chris Támesis dice:

        Tengo que estar de acuerdo aquí. ¿Frio? Si. ¿Práctica? Realmente no. 2,7 GHz x86 servirá páginas tan rápido (y probablemente mucho más rápido) como 8 anemia Pis combinados.

    • Sr. X dice:

      De hecho. ¿Por qué no usar un enrutador MIPS barato y equilibrar la carga en una red? El entrenamiento de tráfico de Linux y QoS son bastante buenos.

    • Kerimil dice:

      si que engaña. Niega todo el truco. Sería más barato simplemente obtener una computadora vieja para eso, o mejor aún (como alguien ya sugirió) una base atómica de baja potencia.

  • trui dice:

    Si usa esto en un hogar típico, asumiría que el enlace más débil es la conexión a Internet a menos que tenga un contenido de página dinámico muy complicado.

    • c3p dice:

      +1

  • espectro azul dice:

    Entonces, ¿quién publicará en reddit y lo llevará a una barra? : D

  • tien gow dice:

    Bueno, respuesta rápida hasta ahora. Bonito sitio web.

  • mi palo dice:

    Si realmente quería probarlo, debería haber dicho que fue construido con Arduino para modificar automáticamente el firmware en O'scopes y cámaras FLIR para una funcionalidad completa para que puedan usarse para reconstruir un tractor ... siendo "portátil" con imanes impresos en 3D implantados debajo de la piel.

    ... luego solo siéntese y grafique los FPS (llamas por segundo) y los TRES (ira de troll a la derecha) ...

    • Ren dice:

      +1 segundo ^)

    • mike d dice:

      Se te olvidó mencionar que también funciona con HHO...

      • perro tormenta dice:

        ... y pasa aire comprimido a través de PVC ...

  • cara de pedo dice:

    Sí puede, 386 puede. Es el tubo de Internet que es el cuello de botella.
    ahora slashdotting... Eso es algo a tener en cuenta porque derribó los enrutadores centrales, o solía hacerlo. No creo que ese lugar sea tan popular como antes.

    • mentas dice:

      Estoy totalmente de acuerdo con tus dos puntos. 45.000 parecía razonable hasta que me di cuenta de que decía meses. Hace años ejecuté un pequeño juego escalable por turnos similar a Planetarium. Todo cabe en un disco duro de 750mb con 486dx. Podría manejar un poco más de mil usuarios que alguna vez iniciaron sesión (aunque nunca se acercaron). Las páginas vistas estáticas mensuales superaron constantemente las 250.000. Si tuviera que calcular páginas dinámicas, probablemente sería un orden de magnitud mayor.

      Y slashdot... sí, paso mucho tiempo allí, pero parece estar lleno de especialistas en marketing, personas que creen que conocen la tecnología y viejos programadores elitistas que parecen estar navegando por slashdot todo el día. No ha tenido discusiones o historias de calidad por un tiempo, pero la gente sigue asistiendo porque nadie más está cerca de tomar su lugar.

  • Nonano dice:

    Buen proyecto para probar. Tenga la sensación de que insertar un poco de RAM de respaldo en el balanceador de carga y no usar los PI probablemente funcionará igual de bien, si no mejor. ¿Alguna vez has probado?

    El contenido de la página parece bastante estático, por lo que parece factible tener todo lo importante en caché con casi cualquier cosa dinámica.

  • tom la burbuja dice:

    7:15 a. m., hora central de EE. UU.: Me respondieron rápida y amablemente.

  • Andrés dice:

    Hm, ¿así que se necesitan 8 frambuesas para experimentar un efecto HaD?
    Bueno, 1 odroid-x2 a 2Ghz armado con debian, lighttpd wordress y mysqld vivieron para mí... dos veces.

  • DosX dice:

    Todavía fresco, dale tiempo y veremos cómo sobrevive.

    ¡Si es así! si aún no impresionante.

  • dinamo dice:

    Todavía rápido para mí aquí. Camino rápido.

  • Sasha dice:

    ¡Ay, me maravillo de la velocidad! Además, su ping es de 60ms desde la conexión de mi casa, vía wifi, de todo el mundo. Eso es increíble.

    • trui dice:

      60 ms no es mundial. Al menos no muy lejos (alrededor de 5000 millas como máximo). Y la latencia es en gran medida el efecto de la velocidad de la luz en las fibras ópticas largas y el entrelazado en los módems, no los retrasos de la CPU.

      • mentas dice:

        dos veces mal Dato curioso: la luz viaja 187 millas en un milisegundo. Esto significa que en 60 ms, en condiciones óptimas, la distancia máxima será apenas inferior a la mitad de la circunferencia en el ecuador. Aún así, 5000 millas ESTÁN en el otro lado de la tierra (ya menudo más) en la mayoría de las latitudes.

        • Ácido dice:

          La luz en el vacío lo hace, sí. La luz en la fibra es solo alrededor del 60% de esa velocidad, por lo que viaja unos 10.800 km en 60 ms. Eso es un cuarto alrededor de un círculo grande; a mitad de camino estaría lo que suele significar "al otro lado del mundo". Podrías construir dos estaciones polares a un tiro de piedra entre sí a 0 y 180 grados de longitud, pero sería lo suficientemente estresante decir que están al otro lado del mundo.

          • mi palo dice:

            ¡Maldito seas, factor de velocidad! Creo que ping también es un retorno... ¿no? Así que la mitad de la distancia.

    • franco dice:

      Como dijo, el balanceador de carga no es un enrutador. Si hace ping, ninguna frambuesa está involucrada en la prueba...

      • mentas dice:

        Un enrutador conecta dos o más redes.
        El área de Raspberry Pi tiene su propia subred.
        El equilibrador de carga conecta la red externa y la subred.
        Por lo tanto, el balanceador de carga es un enrutador.

        Realmente no sé por qué escribieron eso. Sabe que Linux con reenvío es un enrutador completo con su propia tabla de enrutamiento.

        • franco dice:

          Hola, mira la siguiente explicación de las mentas. Por supuesto, la mayoría de los usuarios de Linux pueden reenviar y conectarse al tráfico web. Pero en este caso se describe como un proxy, y un proxy reenvía http (posiblemente https) solo a la frambuesa. Ping no es http y no llegará al clúster,

          • franco dice:

            Lo siento, la siguiente explicación de Quin...

    • Cual dice:

      No creo que los pines vayan a la mesa R-Pis. Por lo tanto, hacer ping al balanceador de carga en el comando de punto probablemente nunca llegue al Pis, y esté pendiente desde la puerta de enlace (la interfaz estaba en una red local, ¿qué tipo de puertas de enlace domésticas están pasando pines ahora? Y la IP se resuelve en propiedad de VM. IP de cable doméstico, no su nombre de dominio. Entonces, ¿quizás una situación de tipo dyndns?) o, en el peor de los casos, el 'swing' (muy dudoso, porque el balanceador parece tener 192.168.0.x en el exterior)

      En cuanto a "al otro lado del mundo", IP whois va a un servicio de protección de identidad británico y tracert va a una conexión de cable doméstica en medios vírgenes. El enrutador fuera de su entrada parece estar en Surrey, pero no estoy muy seguro y no quiero ser demasiado conocido y pescar más. Por qué sí, mi juventud fue abusada haciendo esa mierda con amigos en juegos de sombrero gris de "romper mi computadora, te reto". Los servidores SMTP abiertos siempre han sido la mejor manera de instalar un archivo, porque cuando dios @ cielo te dice que revises tu correo electrónico, a menudo lo piensas dos veces. ¡Lo mismo para cualquier persona @algo.inválido, .ejemplo, .prueba, o mejor fue .localhost! Parecen algo de un servicio local porque los TLD no son válidos.

      Por último, tiempo de ping. No sé cuál es su tiempo de ping para otros sitios, pero para mí salir del verizon 10.xxx (tengo una IP visible globalmente que geoips a la parte equivocada del país, pero tracert pasa por 10.xxx antes del enrutador regional VZ) tarda 32 ms en dsl. El límite regional a VZ es adicional de 28 ms (probablemente exactamente el tiempo que tarda el límite en responder debido a otro tráfico). Entonces cambia. net y el enrutador glbx retroceden hasta 39 ms en un tracert hasta que el cable cruza desde los EE. UU. a lo que parece un enrutador glbx de Londres donde me siento en los 120 ms. Esos 60 ms son solo un deber inevitable de fibra sobre el océano. De gblx a Virgin Media son aproximadamente 10 ms después de eso (desde el borde de la VM hasta el núcleo de la VM y el local de Surrey) el enrutador no se ve en absoluto, bueno en Virgin Media), y luego la conexión a la conexión doméstica es de 20-30 ms a medida que salta. por cable (no fios ni dsl ni centro de datos como conexión). Entonces, si obtiene solo 60 ms, o está en Europa (menos fibra cruzando océanos) o tiene un tubo dedicado que se quema rápidamente para el enlace de fibra que cruza el océano.

      • buscador de sabiduría dice:

        Gran explicación y fracaso Quin... Gracias!

  • John dice:

    Definitivamente haré clic en tantos anuncios como sea posible para ayudar a un compañero hacker;)

  • neonmaus dice:

    Podría tener aún más rendimiento si usara nginx en lugar de Apache.

  • antonio pearia dice:

    Si necesita más velocidad, puede probar uno de estos http://www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G135341370451&tab_idx=3

  • ElectroNick dice:

    Adán, gracias por el consejo! Además de ser un estudio de prueba de conglomerados, ¡el sitio en sí es un maravilloso recurso de rpi!

    Además, presentado en La-Tecnologia es una excelente manera de probar un servidor web. Cuando se publicaron artículos sobre mis proyectos, vi más de 10 veces los picos normales en el tráfico. Estoy seguro de que después de hoy, Steve tendrá una idea mucho mejor de cómo se comporta su grupo bajo una carga pesada 🙂

  • antonio pearia dice:

    Publiqué el enlace incorrecto http://www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G135341370451

    • rasz dice:

      Odroid es genial, justo hasta que haces clic en comprar y te das cuenta de que pagan $30 por el envío...

  • franco dice:

    Excelente montaje experimental. El resultado es muy bueno. Pero como se dijo antes, PI también debe usarse como balanceador de carga. Oh, el balanceador de carga en sí mismo podría hacer todo el trabajo (tal vez con una actualización de 512Meg)

  • Jordán dice:

    * Haga clic en TODOS los enlaces en su página * jaja Me siento tan mal.

  • Dsudo dice:

    ¿Alguien vio donde habló sobre qué tipo de sistema de archivos masivos se está utilizando? ¿Dónde guarda sus archivos web, NFS? ¿O algún otro sistema de archivos de clúster?

    • Toumal Rakesh dice:

      Buena pregunta. Aunque debido a la experiencia con un volumen medio (> 300.000 usuarios), el sitio web NFS funciona bastante bien para este tipo de cosas. Y si todo lo demás falla, puedes hacer rsync;)

      Por cierto, para operaciones masivas en muchos nodos, Ansible es una excelente herramienta de código abierto. Realmente genial si necesita enviar cosas rápidamente a 200 máquinas, o ejecutar scripts en 200 máquinas y recuperar algún tipo de cobertura comparativa.

  • Toumal Rakesh dice:

    ¡Buena idea! Aunque debo decir que usar Apache para equilibrar la carga es bastante inútil. Una solución mucho más elegante (y más efectiva) es haproxy. Esto no quiere decir que el LB sea el problema aquí, dudo que sea el caso, pero aún así...
    Ah, y las instalaciones de monitoreo y control también son superiores, haproxy puede reproducir solicitudes en otro nodo si el primero muere durante la solicitud, Y puede ejecutar haproxy en modo tcp para cargar cualquier cosa que use tcp, no solo http.

    Bueno, ahora me callo 😉

    • cierto dice:

      Nunca había oído hablar de HAproxy antes, gracias.

      • beleños46 dice:

        Mismo. Se ve interesante.

  • Mekael Hannigan dice:

    Tal vez sea solo yo, pero no entiendo muy bien el significado de esto.

    • Ácido dice:

      De hecho. Es como mostrar que puedes repartir pizza con un conjunto de motocicletas que tenían sus chasis llenos de uranio si las arrastras con un Hummer. No importa que una sola motocicleta esté bien si se usa correctamente. Ya sea solo Scrape con Gatling o incluso lighttpd.

  • Aarón alias Frank dice:

    Debería haber usado algo como bond-ucarp para equilibrar la carga. La computadora en el frente es simplemente excesiva.

  • Benito dice:

    Hola,
    Busqué otras cosas y llegué a esta página. Me preguntaba si Raspberry Pi Group haría una configuración decente para realizar pruebas de carga en una aplicación web, en un servidor local. Cualquier idea, opinión es bienvenida (pero no trolls, por favor).

Miguel Vidal
Miguel Vidal

Deja una respuesta

Tu dirección de correo electrónico no será publicada.