php - como - ¿Es Ubuntu una distribución aceptable para ejecutar un servidor de producción?
php en ubuntu (19)
No soy un gran experto en Linux, pero me siento cómodo al ejecutar mi escritorio Ubuntu. También tengo algo de experiencia en ejecutar Ubuntu como servidor para mi red doméstica.
En el trabajo, estamos considerando cambiar nuestra configuración actual basada en Solaris a algo basado en Linux. Nuestro administrador de sistemas está impulsando algo como RedHat Enterprise o CentOS. Sin embargo, al mismo tiempo, él está presionando para que los desarrolladores (¡como yo!) Asuman un papel más importante en la operación de la máquina.
Intenté retroceder sugiriendo que vayamos con Ubuntu para el servidor. La mayoría del equipo de desarrollo tiene experiencia en Ubuntu, a diferencia de muy poco con RedHat. Sin embargo, sysadmin me dice que Ubuntu no es realmente adecuado para un servidor de producción.
Nuestras necesidades de escalabilidad no son tan altas, probablemente bajas solicitudes de dos dígitos por segundo como máximo. Por seguridad, necesitamos que sea "razonablemente seguro". En otras palabras, no estamos almacenando tarjetas de crédito o registros médicos, solo correos electrónicos y tal. Básicamente, le serviremos Ruby on Rails y aplicaciones web PHP desde allí.
¿Qué es exactamente lo que descalifica a Ubuntu como candidato para un servidor de producción?
Bajo un administrador de sistema competente, ambos Distros pueden convertirse en excelentes servidores. Un administrador de sistemas competente también debería poder cambiar entre algunas Unixes / Distros al instante.
Creo que si tiene la intención de instalar software de Oracle / IBM u otros grandes proveedores, es posible que le pidan que utilice RHEL o SuSe para obtener asistencia técnica. Menos empresas admiten Ubuntu o CentOS.
Asumiendo que no quiere usar software de terceros o de grandes proveedores, entonces debe aprovechar su familiaridad con Ubuntu (o Debian) y atenerse a eso.
Si su Sysadmin es bueno, debería poder aprender Ubuntu / Debian en poco tiempo.
Debajo de todo, es casi (y digo esto con un millón de peros) siempre el mismo Linux bajo el nombre de distribución. Si vas a hacer esto solo a través de la línea de comando, entonces casi cualquier distribución funcionará para ti. Todo depende de los paquetes que instale y de lo dispuesto que esté de hacer las cosas manualmente. Puede convertir Ubuntu en el software más resistente y eficiente si puede ir al núcleo y editar muchas cosas.
El desarrollo va a ser prácticamente el mismo en Red Hat o Ubuntu. Iría con lo que prefiera el administrador de sistemas.
Este es el caso de una persona que se adapta (su administrador), ya que casi todo su equipo tiene conocimiento de Ubuntu. Empuja para Ubuntu más duro.
Existen otros problemas además del soporte disponible que hacen que una distribución sea adecuada para un entorno de servidor. Los dos biggies (interrelacionados) son (1) Qué tan avanzado es el software, y (2) ¿Cuál es el ciclo de lanzamiento?
Ubuntu (como Fedora) tiende a tener más software de vanguardia y nuevas versiones de software también disponibles en "distros de servidores". Existe una cierta cantidad de riesgo al ejecutar lanzamientos que aún no han sido superados sin piedad. En este sentido, Ubuntu es menos deseable en un servidor que RHEL o Centos, que se adhieren a versiones más maduras.
Algunos administradores de sistemas prefieren las distribuciones con ciclos de lanzamiento más largos, y Ubuntu intenta manejar eso con sus lanzamientos de LTS.
Hablando como alguien que realmente tiene que hacer que las granjas de servidores jueguen bien , y ha usado Red Hat Enterprise y Ubuntu LTS, puedo decirles que Ubuntu es de lejos el mejor y el mejor sistema compatible.
Dicho esto, para fines de auditoría, los trajes prefieren vendedores reales. Entonces, aunque Red Hat es el sistema inferior, una gran cantidad de infraestructura corporativa requiere que si Linux se va a utilizar, ese Linux debe ser Red Hat.
Ahí radica el problema.
Sé que esto probablemente no fue muy útil ...
He estado usando Ubuntu desde 7.04 y nada más desde entonces. Lo estoy usando con mi próximo vserver (slicehost).
He visto a muchas personas recomendar CentOS, y parece una buena distribución de servidores, pero no soy un gran fanático de rpm / yum. También probé Debian y tuve problemas para instalar algún software de servidor (problemas de dependencia). Simplemente nunca necesité nada diferente a Ubuntu hasta ahora.
Aquí hay un par de cosas que busco en una distribución de servidor:
- Un buen gestor de paquetes y repositorios predeterminados : creo que esto es muy importante. Reduce significativamente la cantidad de tiempo que necesita para configurar el servidor.
- Organización de archivos / directorios con la que estoy familiarizado : intento mantener sistemas basados en Debian o RedHat
- Tiene muchos usuarios : cuantas más personas lo usan, más documentación puede encontrar en línea
- Ciclos de lanzamiento decentes - Ubuntu Server LTS tiene 5 años, lo cual es genial
- Software estable
- Rápido, receptivo, seguro
Y creo que Ubuntu Server se ajusta a todos estos criterios. He estado usando Ubuntu Server 6.06 durante los últimos 2 años, y he estado muy contento con él hasta ahora.
La pregunta es si necesita soporte comercial; en muchas organizaciones, ser capaz de comprar soporte es un requisito previo para usar software en producción. Esto podría descalificar a Debian, ya que no puede comprar soporte del proyecto Debian. Para Ubuntu, es diferente, ya que puedes comprar soporte de Canonical.
La respuesta a esta pregunta es bastante subjetiva. Su SA es probablemente más cómodo con CentOS, por lo que es la mejor opción en esta situación. Si hubiera más de una SA con un conjunto diversificado de habilidades con diferentes distribuciones, yo diría que vayan con lo que la mayoría se sienta cómoda. Debian / Ubuntu son buenas distribuciones para servidores (con los paquetes correctos instalados), y CentOS también es genial.
Creo que CentOS es probablemente el mejor para propósitos de seguridad. Sin embargo, eso, de nuevo, es bastante subjetivo.
Nada descalifica estrictamente a Ubuntu como una distribución de servidor. Si recuerdo, Ubuntu incluso tiene una variante orientada a servidor (Ubuntu Server). Lo que hace que Ubuntu esté menos preparado para la producción es que no hay tantas pruebas rigurosas de los paquetes de software y los paquetes mismos no son "propiedad" de alguien que sea directamente responsable de su mantenimiento. Además, Ubuntu simplemente agarra las versiones existentes en Debian Unstable y las pule un poco antes de lanzarlas.
En resumen: mayor probabilidad de software inestable con errores.
Recomiendo Debian Stable o Testing (Lenny debería lanzar el próximo año). Las herramientas de administración son las mismas, pero se pone mucho más cuidado para asegurar que el software lanzado sea confiable. Debian recibe muchas críticas por publicar con poca frecuencia, pero es extremadamente confiable.
Permítanme compartir mi experiencia: salté para ser un administrador de servidor de ser un humilde usuario de escritorio de Ubuntu, ¡y no me arrepiento! Empecé con un pequeño VPS con Ubuntu instalado y ahora estoy en un servidor dedicado de decenas de miles de páginas por día, ¡pero aún con Ubuntu! (y también tahnks nginx)
En cuanto a que Debian es más estable que Ubuntu para usar como servidor, puede ser cierto en muy raras ocasiones en que el paquete es muy oscuro. A lo largo de estos años, he encontrado solo una instancia (en el caso de un gran servidor dns llamado nsd3) donde Ubuntu tiene una pequeña dificultad para instalar el paquete, mientras que no había tal problema en Debian.
A pesar de esto, prefiero Ubuntu debido a los comandos abreviados, por ejemplo, ''service blabla restart'' en lugar de ''/etc/init.d/blabla restart''.
Personalmente prefiero RHEL / CentOS para servidores. El foco está en los servidores, y tengo más experiencia con él.
Hasta en el último lanzamiento (Intrepid Ibex) y el último lanzamiento de LTS ( Hardy Heron ), se han centrado en el escritorio. Centrarse en el escritorio significa que su soporte de servidor ha quedado rezagado.
¿Ubuntu es un buen candidato para servidores? Tal vez, tal vez todavía no. Sin embargo, si es lo que sabe, podría valer la pena su tiempo y esfuerzo.
Su elección realmente debería depender de la cantidad de personalización y soporte que desee. Ubuntu está muy bien soportado pero también tiene una huella bastante grande. Yo personalmente uso Arch y Gentoo para mis servidores, pero debido a su naturaleza DIY, encontrar soporte puede ser difícil. Yo personalmente recomendaría Debian. Tiene la facilidad de Ubuntu y una fuerte comunidad de soporte.
Ubuntu es muy adecuado para ejecutar servidores.
Normalmente, un problema es la falta de opciones de soporte pago, pero Ubuntu las tiene: http://www.ubuntu.com/support/paid
Usamos Ubuntu en un par de servidores en vivo y el otro día comentamos lo agradable que era trabajar en esas máquinas. Nuestros desarrolladores ejecutan Ubuntu en sus propias máquinas, así que cuando se trata del servidor en vivo, sabemos dónde está todo y cómo funciona todo. Esto puede ser una gran ventaja en sí mismo. También ejecutamos servidores RHEL4 y RHEL5 y Centos4, pero siempre me resulta un placer trabajar en las máquinas Ubuntu debido al uso de Ubuntu día tras día.
En cuanto a la estabilidad, vale la pena tener en cuenta que el software principal que está ejecutando en un servidor no tiende a cambiar rápida y radicalmente. Por ejemplo, no creo que la instalación de Ubuntu Apache sea una nueva versión radical, sino casi la misma que está instalada en RHEL o CentOS.
Así que para mi penneth dos, dada una opción elegiremos servidores de Ubuntu en el futuro.
Usamos las versiones de Ubuntu Server LTS para servidores de producción (Ubuntu 6.06 LTS, y algunos servidores actualizados a Ubuntu 8.04 LTS). El ciclo de lanzamiento de 6 meses para las versiones normales es demasiado rápido para un entorno de producción: las versiones de soporte a largo plazo con 18 meses entre lanzamientos y 5 años de soporte son mejores.
Una cosa a considerar con respecto a Ubuntu: mira si los paquetes de servidor que planeas usar son parte de los repositorios principales de ubuntu, entonces brindan soporte de seguridad completo, y los paquetes obtienen más pruebas por ubuntu.
Pero si están en los repositorios del universo, no garantizan ninguna actualización de seguridad (pero, con frecuencia, también recibirán actualizaciones de seguridad)
La administración del sistema es como la plomería. Realmente no quieres desafiar las tendencias. Desea que cualquier plomero pueda ver sus tuberías y resolver el problema.
Estoy seguro de que Ubuntu funciona muy bien como servidor, pero es más importante que su SA esté cómoda con usted que usted. Cómo manejas 10, 100 o 1000 es diferente entre distros. Es probable que su SA ya tenga configurada la infraestructura (LDAP, NFS, administración de paquetes, administración de configuraciones, etc.). Además, debe haber mucha documentación para ayudarlo en el camino.