PowerStack 0.2

Han pasado ya tres meses desde que decidimos dar el paso, registrar un dominio y compartir con la comunidad el proyecto PowerStack. En este tiempo han sido muchos los usuarios que han instalado el repositorio en sus servidores y nos han hecho llegar sus impresiones, la última estadística indica que más de 200 máquinas lo están utilizando. La acogida ha sido mucho mejor de lo que nunca hubiéramos imaginado y estamos muy contentos: nos han enviado muchas sugerencias (¡el post de bienvenida ha tenido más de 30 comentarios!), reportado errores, críticas, etc. y fruto de este valioso feedback han sido un total de 100 cambios en el código inicial de PowerStack 0.1, haciendo que esta nueva versión sea más estable y segura (sacamos un fix para el exploit shmop_read() de PHP antes que las principales distribuciones Linux).

Esta segunda versión se vuelve a centrar en mejorar el stack LAMP por defecto de CentOS y RHEL: últimas versiones estables (PHP 5.3.6, MySQL 5.5.13, Apache 2.2.19), se distribuyen ficheros de configuración más seguros y que mejoran el rendimiento (por ejemplo habilitando el query_cache en MySQL, deshabilitando la directiva enable_dl de PHP, etc.). Una instalación por defecto de PowerStack con PHP 5.3 + los parches de Google para MySQL 5.5 mejoran en un 30-40% el rendimiento de una instalación por defecto de CentOS. Para complementar el stack LAMP se han añadido nuevos paquetes: el acelerador web Varnish 2.1.5, memcached 1.4.5, servidor web nginx 1.0.2 y Keepalived 1.2 (balanceador LVS + VRRPv2). Además y a partir de esta versión los paquetes estarán firmados con GPG, cambio motivado de cara a hacer más segura la distribución de paquetes RPM en una red de mirrors en un futuro.

En los siguientes días publicaremos el roadmap para la versión 0.3, por ahora podemos adelantar que se seguirá centrando en su propósito inicial: empaquetar para RHEL y CentOS el software con el que se está construyendo la web actualmente. Algunos de estos paquetes serán: MongoDB, Redis, Cassandra, node,js, RabbitMQ, Cfengine, Puppet, Maatkit, Sphinx, etc. Además dedicaremos esfuerzos en automatizar el proceso de construcción de los paquetes RPM (posiblemente utilizando mock y koji de Fedora) y desarrollar una solución para que los usuarios puedan colaborar más fácilmente. Si tienes una idea para mejorar PowerStack puedes ponerte en contacto con nosotros a través de Twitter, Facebook o por email.

Aprovecho para dar las gracias a todos mis compañeros de trabajo en Hostalia (¡gracias Raul!) y Acens, a todo el equipo de Blackslot, a Jordi Prats de systemadmin.es, a todos los foreros de OVH, etc. y en general a todos aquellos que de alguna forma habéis apoyado los primeros pasos de este proyecto, reportando errores, sugerencias o simplemente usándolo, muchas gracias!! :)

This entry was posted in Linux, Proyectos and tagged , , . Bookmark the permalink.
  • http://www.facebook.com/people/Ernesto-Miranda/697069753 Ernesto Miranda

    Me parece excelente el proyecto, sólo le falta un paquete y que es importante a la hora de la seguridad el http, el openssl.. personalmente necesito una version 0.9.8j o superior para centos 5.6 y no la encuentro…el resto está espectacular..

    • http://woop.es Santi Saez

      Hola Ernesto! Podría tratar de hacer un backport del OpenSSL de RHEL-6, actualmente está empaquetada la versión 1.0.0, he añadido tu petición al roadmap y te tendré en cuenta para el beta-testing ;-)

      Es una sugerencia muy interesante, como ya comenté uno de los objetivos de PowerStack es proporcionar versiones de software más recientes para evitar “problemas” con las auditorias de seguridad.

  • Anonymous

    Una pena que no esté Cherokee aún en esta versión :(

    • http://woop.es Santi Saez

      Sí, he querido dar prioridad a nginx ya que según las estadísticas esté se está utilizando más. En cualquier caso está en el roadmap y tenemos interés en añadir al menos soporte para este servidor web de alto rendimiento, gracias!! :)

  • Griquelmev

    Sugeriria la inclusión de suphp o similar para ejecutar php independientemente de apache y resolver así uno de los problemas molestos para los usuarios que suben archivos vìa php a sus sitios.

    • http://woop.es Santi Saez

      Griquelmev gracias por la sugerencia es una mejora muy interesante, lo acabo de añadir al roadmap! :)

  • Wla2

    pues yo prefiero fastCGI, aunq bien es cierto que configurarlo al 100% es muy complicado si lo comparamos con suPHP :)

    • http://woop.es Santi Saez

      PHP-FPM para nginx y FastCGI también están en el roadmap para futuras versiones de PowerStack, gracias por la sugerencia!!

  • http://www.foroxd.com Roberto

    Fantastico, pero es compatible con plesk ?

    saludos

    • http://woop.es Santi Saez

      Roberto, PowerStack es compatible con Plesk, está probado con las versiones 9.5 y 10 sin problemas. Varios usuarios de los foros de OVH me han indicando que también funciona sin problemas con el panel de control Kloxo.
      Uno de los objetivos del proyecto es ser lo menos intrusivo posible y compatible con entornos de webhosting :)

      • http://www.foroxd.com Roberto

        Muchas gracias Santi, precisamente te lei en OVH ya que tengo varios ahi, lo instale en 2 de ellos y perfecto, sin problema ninguno.

        Un saludo

  • Jordi Martínez

    Estoy intentando usar PowerStack (por cierto, me parece un proyecto genial) para actualizar un servidor, pero me da un error de dependencias http://pastebin.com/4RJ5GL6Q La versión que tiene de php se instaló desde centosplus.

    Alguna sugerencia de como solucionarlo?

    Gracias,

    • http://woop.es Santi Saez

      Hola Jordi!

      Si no necesitas el paquete “php-ncurses” borralo antes de actualizar el PHP con PowerStack.

      La extensión ncurses para PHP todavía no está disponible en el repositorio ya que a partir de la versión 5.3 pasó a ser un modulo PECL

      # yum remove php-ncurses ; yum update

      Si tienes cualquier problema me avisas, he añadido php-ncurses al roadmap del proyecto :)

      Saludos,

      • Jordi Martínez

        Yep, toda la razón, despues de quitar php-ncurses y php-pgsql se ha actualizado correctamente.
        Ahora solo me queda comprovar que todo funciona como debería. Pero eso ya es cosa mía ;)

        Muchas gracias por la ayuda, y seguire el proyecto con interés

        • http://woop.es Santi Saez

          Jordi, 

          El paquete “php-pgsql” si está disponible en PowerStack y no te debería dar problemas.. ¿me confirmas si esto te ha dado algún problema o solo ha sido php-ncurses? gracias!! :)

          P.D: ¿Estás utilizando CentOS-4 i386, verdad?

          Saludos,

    • http://woop.es Santi Saez

      Jordi, hemos añadido el paquete php-pecl-ncurses a PowerStack. El bug que reportaste debería estar solucionado, si tienes la oportunidad de reproducirlo y confirmar que ahora ya te funciona te estaríamos muy agradecidos, gracias! :)

  • Juan Carlos Diaz

    Hola,

    Queria probarlo con CentIS 5.6 con DirectAdmin. Hay alguna experiencia previa con este panel? Sino, ya hago de conejillo de indias.

    • http://twitter.com/santisaez Santi Saez

      No se han hecho suficientes pruebas con el combo PowerStack + DirectAdmin para confirmarte que este panel de control está 100% soportado, pero desde los foros de OVH en más de una ocasión nos ha llegado feedback positívo.. en cualquier caso, si haces pruebas y tienes algún problema nos avisas por aquí, gracias!! :)

  • Hombre Eléctrico

    Muy bueno, ando con ganas de probarlo hace un tiempo! Es compatible con centos 6?

    Saludos!

    • http://twitter.com/santisaez Santi Saez

      Dentro de unas semanas PowerStack será compatible con CentOS-6 :)

  • GoodUser

    Creo que este no es el lugar correcto par apreguntar, si es correcto me disculpo y no molestaré, pero he estado googleando por 2 meses y estoy quriendo armar con 6 simples PCs un dominio web al estilo de youtube, mi pensamiento actual es: 2 PCs como balanceadores (HAProxy, Varnish o lo que sea)  2 PCs con MySQL en HA y 2 PCs como servidores web (creo que será mejor Nginx en vez de Apache), aplicación Web al estilo de Youtube y cliente-servidor GlusterFS para tener replicado todo el movimiento de la Web. Yo pienso que Varnish es una gran opción ponerlo al frente por menejar cache, pero no se como hacer para disponerlo en las 2 PCs a modo de tener HA para el caso de caida de uno de los nodos balanceadores. Apreciaré sugerencias que me sirvan para completar de armar mi estrategia, mi preocupación principal radica en que una vez que lance el dominio en corto tiempo me encontraré saturado de solcitudes Web y el cache me será de gran utilidad. Por favor SOCORRO !!!!, tutos, mini How To, links, o lo que sea que me pueda servir será enormemente apreciado.

    Desde ya muchas gracias y felicitaciones al equipo de Power Stack por el excelente trabajo que esta realizando. Seguiré observando sus pasos muy de cerca y actulizando todo servidor que pueda desde este repositorio.

    • http://woop.es Santi Saez

      Cesar, para el esquema que propones lo más sencillo sería añadir un servidor más que haga de balanceador de carga, mi recomendación es Keepalived que también lo tienes en el repositorio PowerStack.

      Si quieres alta-disponibilidad para Keepalived vas a necesitar dos máquinas para hacer VRRPv2 y tener failover de la VIP (existe una funcionalidad en LVS que se llama localnode que te permite utilizar como balanceadores a los frontends, por lo que para empezar te puedes ahorrar dos servidores a costa de hacer algo más complejo el mantenimiento, si lo puedes evitar no te lo recomendaría para empezar).

      Con este esquema, el balanceador -o la pareja en activo-pasivo- con la VIP sería el punto de entrada que atacaría al frontend (en este caso has comentado que tendrías Varnish + nginx) que a su vez conectaría al backend (MySQL en HA + GlusterFS), así que lo único que te faltaría sería buscar documentación sobre software para balancear conexiones con LVS (mi recomendación ya la conoces, Keepalived) y VRRPv2 (Keepalived también lo soporta, todo en uno!). También puedes utilizar el combo HAproxy + keepalived..

      • Xxxx

        Gracias Santi por tu repuesta, quiero usar Keepalived, HAProxy y Varnish en 2 PCs para obtener balanceo, HA y velocidad en respuestas a los clientes,  y en estas mismas 2 PCs con mucha RAM Varnish tendrá un gran cache RAM para alivianar las solicitudes a los backends, pero no encuentro un tutorial de como hacer la integración entre Varnish y HAProxy, creo que tendré que experimentar. El flujo que deseo es: Cliente -> Internet -> KeepAlived -> HAProxy -> Varnish -> backends. En los backends correrán: Apaches ó Nginxs + GlusterFS Cliente y Servidor en un grupo de PCs, los backends a su vez se conectarán a otra maquina (en realidad tendré 2) donde correrán Pacemaker y MySQL exclusivamente y estarán en HA.
        La estrategia en teoría esta planificada, pero en la práctica necesito ayuda para la integración entre Varnish y HAProxy. Agradeceré la ayuda que me puedas brindar para poder integrarlo en la practica y si fuera también posible  tuneado.
        Nota Adicional: Talvez también implemente en otra PC con  “DNS-RR”  para balancear los balanceadores y obtener más rendimiento y aprovechamiento de la RAM de esas PCs

        Saludos Cordiales para ti y a todos, yo aprendo como ustedes de los comentarios, experiencias y respuestas comentadas,  por lo que espero que mis comentarios y consultas también puedan servir a otros.

        Cesar

  • Pingback: PowerStack para CentOS-6 | woop!