- Computers Are Bad está comprando nuevos servidores mientras traslada su nube empresarial a Nuevo México
- Los servidores Big Iron que usa actualmente son equipos antiguos de unos 10 años
- En la industria moderna centrada en la nube, ya es raro comparar las especificaciones de Dell PowerEdge y HP ProLiant
- El mercado de servidores no hiperescalables se está unificando cada vez más alrededor de las especificaciones y diseños de referencia de Intel
¿Qué es un servidor?
- Existe una vieja pregunta sobre si un servidor es simplemente una computadora grande y potente, o si es algo especial
- La historia de los servidores incluye mucha historia industrial, y la respuesta puede variar según el contexto
- Se pueden hacer las siguientes generalizaciones sobre la historia de los servidores:
- La computación cliente-servidor comenzó en gran medida como una evolución de la computación por tiempo compartido, usando múltiples terminales conectadas a una sola computadora
- No se esperaba que los terminales tuvieran una arquitectura similar a la de la computadora, y esto continuó en los sistemas cliente-servidor
- Hasta los años 2000, era común que los servidores usaran sistemas operativos y arquitecturas distintas
- Debido a la revolución de la PC, para mediados de los años 90 la mayor parte de la computación del lado cliente se había convertido en un monocultivo WinTel
Cambios en la arquitectura de servidores
- La combinación de SPARC y Solaris era muy común en servidores, al igual que la arquitectura de minicomputadoras de IBM y varios sistemas operativos
- Una de las principales aportaciones comerciales de Java fue que permitía reutilizar código incluso en entornos de cómputo empresarial “modernos” como Unix/RISC o Windows/x86, al escribir aplicaciones empresariales para backends Solaris/SPARC
- El modelo de computación cliente-servidor con “clientes pesados” generó una asociación entre la plataforma de servidor y la “computación empresarial”
- Las arquitecturas que antes estaban limitadas a servidores se volvieron cada vez más de nicho y tuvieron dificultades para competir con la arquitectura de PC en costo y rendimiento
- La arquitectura general del software de servidor cambió de “escalado vertical y sistemas de alta disponibilidad” a “escalado horizontal y requisitos de confiabilidad más relajados”, lo que redujo enormemente las ventajas de las computadoras de nivel empresarial
- Hoy en día, en la mayoría de los casos, un servidor es solo una computadora grande
- Es mucho más probable que un servidor sea SMP o NUMA con múltiples sockets de procesador
- La era de SAS y RAID por hardware está desapareciendo poco a poco, pero los servidores siguen ofreciendo controladores y topologías de almacenamiento más complejos que los clientes
- Los servidores casi siempre ofrecen administración out-of-band (OOB)
Administración out-of-band
- La administración out-of-band (OOB) es una capacidad casi desconocida en clientes
- Permite acceder remotamente al servidor mediante una pequeña computadora de administración separada
- La administración OOB no requiere el sistema operativo ni componentes generales
- La mayoría de los servidores ofrecen una consola remota que permite interactuar como si estuvieran conectados a un monitor y teclado locales
- Los productos de administración OOB ofrecen una función de “medios virtuales”, que permite subir archivos ISO y hacer que se reconozcan como si fueran dispositivos físicos
Administración out-of-band (Out-of-Band Management)
- Out-of-band, a veces también llamada administración lights-out, identifica una capacidad casi desconocida en clientes
- Permite acceso remoto incluso cuando el servidor está apagado, mediante una pequeña computadora de administración separada
- Los términos “out-of-band” e “in-band” vienen del significado que se usa normalmente en redes y telecomunicaciones, aunque en la práctica su sentido ha cambiado
- Puede ser más útil pensar que la administración out-of-band significa que no requiere el sistema operativo ni componentes de propósito general
- Un ejemplo muy estándar de administración in-band es SSH, que es un servicio ofrecido por el software de la computadora
- En cambio, la administración out-of-band es proporcionada por hardware dedicado y una pila de software dedicada, y no requiere la cooperación del sistema operativo ni, tradicionalmente, del CPU
- Hoy, el mejor ejemplo de administración out-of-band es la consola remota que ofrece la mayoría de los servidores
- Básicamente es un IP KVM integrado, que permite interactuar con la máquina como si tuviera un monitor y teclado conectados localmente
- Muchos productos de administración OOB también ofrecen “medios virtuales”, que permiten subir un archivo ISO a la interfaz de administración y luego hacer que aparezca ante la computadora como si fuera un dispositivo real
- Esto es muy útil para instalar el sistema operativo
Historia de la administración OOB
- La administración OOB es un pequeño rincón interesante de la historia de la computación
- En realidad, no es una idea tan nueva: se pueden encontrar funciones similares a lo largo de toda la historia de la computación empresarial
- Con el tiempo, la administración OOB se ha vuelto más simple y más aburrida
- Ha sido una característica común de los servidores desde finales de los años 80 y principios de los 90
- Algún tipo de interfaz local para operadores que ofrece información de bajo nivel sobre el estado del hardware, como una pantalla LCD de matriz o una cuadrícula de indicadores LED
- Una consola serial con acceso al cargador de arranque inicial y a un sistema de administración persistente de bajo nivel
- Un sistema de administración de nivel superior, ubicado en diferentes puntos de la pila según la arquitectura, para la administración remota de la carga de trabajo de la máquina
- El presente de la administración OOB
- La mayoría de los servidores pueden indicar en el panel frontal si falló algún componente redundante, como un ventilador o una fuente de poder
- Sin embargo, la cantidad de componentes redundantes y reemplazables en caliente se ha reducido desde “todo, incluyendo el CPU” en los años 90, hasta a veces solo ventiladores
- La administración serial sigue siendo bastante común porque sigue siendo una forma popular de instalar y mantener el sistema operativo en máquinas headless
- Pero en la mayoría de los casos, la administración OOB se ha consolidado en Intel IPMI, de la misma manera exacta en que ocurrió con la arquitectura de procesadores
Lo confuso de IPMI
- IPMI es una especificación, no una implementación
- La mayoría de los grandes fabricantes tienen sus propias implementaciones de IPMI con funciones que van más allá de la especificación base, y las llaman con siglas extrañas como HP iLO, Dell DRAC, etc.
- Como estas implementaciones específicas de cada fabricante son más antiguas que IPMI, no es del todo correcto decir simplemente “IPMI”
- Por otro lado, los fabricantes más nuevos tienen más probabilidad de llamarlo IPMI, y en ese caso puede tratarse de un producto estándar del proveedor de firmware
- El software de IPMI normalmente se ejecuta en un procesador llamado baseboard management controller (BMC), por lo que los términos IPMI y BMC a veces se usan como si fueran lo mismo
- Lights-out management (LOM) es un término mayormente inútil, pero sigue usándose porque HP(E) lo prefiere y llama a su implementación de IPMI Integrated Lights-Out
- El BMC no debe confundirse con el system management controller (SMC), que es un componente presente en computadoras cliente
- SMC es uno de varios términos usados para componentes que manejan tareas como el control de velocidad de ventiladores
- BMC y SMC tienen historias relacionadas y, de hecho, el BMC maneja estas funciones en la mayoría de los servidores
- IPMI define dos interfaces
- Una interfaz out-of-band que puede usarse por red o por conexión serial
- Una interfaz in-band que puede usarse desde el sistema operativo mediante un driver (la comunicación entre el CPU y el BMC ocurre a través del bus LPC, un extraño y pequeño remanente de ISA que todavía existe en la mayoría de las computadoras modernas)
- Como resultado, es posible interactuar con IPMI desde herramientas que corren en el sistema operativo, como
ipmitool en Linux
- Si no se entiende que IPMI es un sistema completamente independiente con una interfaz local hacia el sistema operativo en ejecución por conveniencia, puede resultar un poco confuso entender qué está ocurriendo exactamente
Capacidades de IPMI
- IPMI se ha convertido, en su mayoría, en una webapp
- La interfaz web es demasiado conveniente como para rechazarla
- Muchos productos IPMI tienen software cliente dedicado, pero están migrando todas las funciones a una aplicación web embebida
- La calidad de las interfaces web varía muchísimo, pero la mayoría no son muy buenas
- Cómo acceder a la interfaz web de IPMI
- La mayoría de los servidores que salen al mercado tienen una interfaz Ethernet dedicada con etiquetas como “IPMI”, “management” y similares
- La mejor manera de usar IPMI es colocar la interfaz de red de administración en una red física dedicada
- Por razones de seguridad y confiabilidad (aunque la red principal tenga problemas de rendimiento o estabilidad, deberías seguir pudiendo acceder a IPMI)
- Sin embargo, una red física dedicada requiere tiempo, espacio y dinero
- Es muy probable que la “red de administración” sea una VLAN del equipo de red normal
- Algo similar a lo que AT&T llamaba Common Channel Signaling Arrangement (CCSA)
- Funciona como una red independiente y privada, pero el hardware real se comparte con todo lo demás, y el aislamiento se implementa por software
- Redes sideband de IPMI
- La administración sideband permite que el BMC se comunique directamente usando el mismo NIC que utiliza el sistema operativo
- La forma en que se implementa es un poco extraña
- El NIC finge ser dos interfaces distintas, mezcla el tráfico IPMI en el mismo flujo de paquetes que el tráfico del host, pero usando una dirección MAC diferente
- De este modo, para los demás equipos de red parece que se están usando dos interfaces de red distintas, como de costumbre
- Hay consideraciones obvias de seguridad al reducir la separación entre IPMI y el tráfico de aplicaciones
- Problemas de seguridad de IPMI
- Muchas implementaciones de IPMI han resultado ser una pesadilla de seguridad
- Personas no confiables nunca deberían tener acceso a ellas
- Funciones de red de IPMI
- Los detalles de las funciones de red varían según la implementación, pero en UDP 623 existe una interfaz estándar que puede usarse para descubrimiento y comandos básicos
- A menudo también hay SSH e interfaz web, y para la consola remota es muy común VNC
Funciones básicas de IPMI
- Hay varias funciones básicas muy útiles que se pueden realizar con IPMI, ya sea por red o usando un cliente IPMI in-band
- Una de las funciones más útiles, si eres olvidadizo y no llevas buenos registros, es listar los módulos de hardware que componen el sistema a nivel de FRU o número de parte del fabricante
- También se puede interactuar con funciones básicas del hardware, como sensores, estado de energía, ventiladores y similares
- IPMI ofrece un watchdog timer estándar, que puede combinarse con software que corra en el sistema operativo para hacer que el servidor se reinicie si una aplicación entra en mal estado
- Hay que configurar un tiempo de espera lo bastante largo como para que el sistema arranque y pueda conectarse para desactivar el watchdog timer
Relación entre IPMI y las computadoras cliente cotidianas
- IPMI es muy común en servidores empresariales, pero muy raro en casi cualquier otro entorno
- Esto es frustrante para quienes no tienen espacio o tolerancia al ruido para una pizza box de 1U
- Si intentas apegarte a computadoras pequeñas o de bajo consumo, probablemente tendrás que vivir sin IPMI
Intel ME y AMD ST
- Son controladores de administración OOB presentes en prácticamente todos los procesadores Intel y AMD
- Intel ME (Management Engine) es el componente que habilita Intel Active Management Technology (Intel AMT)
- AMT fue un intento de popularizar la administración OOB para máquinas cliente y ofrece casi exactamente las mismas funciones que IPMI
- Tuvo mucho menos éxito, probablemente en gran parte por el precio
- Intel restringió casi todas las funciones de AMT para que se usaran junto con plataformas de administración empresarial muy costosas
- Existen clientes AMT de código abierto, pero el siguiente problema es encontrar una máquina en la que AMT realmente pueda usarse
Funciones de administración sideband y problemas de seguridad de Intel AMT
- El hecho de que Intel AMT tenga funciones de administración sideband, y por lo tanto que el componente Intel ME donde corre AMT también las tenga, ha sido motivo de considerable preocupación en la comunidad de seguridad
- Un factor mitigante: la administración sideband solo es posible si el procesador, el chipset de la placa madre y el NIC son compatibles con AMT
- Las opciones para esos tres dispositivos están limitadas a productos Intel con la insignia vPro
- La poca popularidad de los NIC Intel en dispositivos de consumo ya significa que el acceso sideband es casi imposible
- vPro también está limitado a procesadores y chipsets relativamente de gama alta
- La mala noticia es que será difícil usar AMT en un homelab, aunque algunas personas sin duda lo hacen
- La buena noticia es que el “hecho” ampliamente difundido de que Intel ME es accesible mediante redes sideband en dispositivos de consumo, por lo general, no es cierto, y no solo por temas de licenciamiento de software de Intel
Por qué existe Intel ME
- Sin AMT, queda la extraña pregunta sobre Intel ME en sí mismo, que en realidad no tiene funciones de administración OOB
- ¿Por qué casi todos los procesadores tienen Intel ME?
- Es una especulación, pero parece que Intel ME existe principalmente como una forma conveniente de alojar y gestionar componentes de ejecución confiable usados para cosas como arranque seguro y DRM
- Todas estas funciones corren en el mismo procesador que ME y comparten parte de la misma pila tecnológica
- La parte de “management” de Intel ME sería entonces, en gran medida, un vestigio, y en realidad forma parte de la infraestructura de computación segura
Esto no es una defensa de Intel ME
- Esto no pretende defender a Intel ME, que no puede ser auditado en absoluto por terceros y que en el pasado ha contenido vulnerabilidades de seguridad graves
- Todos usamos arquitectura de procesadores de uno de dos fabricantes, así que Intel tiene pocos incentivos para hacerlo mejor
- Y antes de responder que ARM es la solución, conviene recordar que los SoC ARM modernos usados en dispositivos de consumo tienen casi exactamente las mismas funciones
Nota: la definición de headless
- La definición de “headless” es complicada y no vale la pena obsesionarse demasiado con ella
- La gente suele usar “headless” para referirse a que no hay monitor ni teclado conectados
- Pero los racks con consola deslizable e IP KVM han sido comunes durante mucho tiempo, así que conviene recordar que en entornos no hiperescalables los sistemas verdaderamente headless son más raros de lo que parece
- Esto se debe en parte a que usar una consola serial es terriblemente doloroso, así que cualquier operador de computadoras razonable hará mucho por evitar tener que lidiar con eso
Opinión de GN⁺
- Este artículo ofrece una mirada interesante a la definición y la historia de los servidores. A diferencia de la percepción común de que un servidor es simplemente una computadora grande, muestra que los servidores han tenido un rol especial durante una larga historia.
- Al revisar la historia de los servidores, se puede ver cómo el concepto ha cambiado junto con la evolución tecnológica. En particular, resulta interesante que, desde la revolución de la PC, la frontera entre servidores y clientes se haya vuelto cada vez más difusa.
- La administración out-of-band es una capacidad propia de los servidores que permite administrarlos incluso sin ayuda del sistema operativo o del CPU. Esto puede ser una función muy útil para los administradores de servidores.
- Recientemente, la tecnología de administración OOB se está estandarizando alrededor de Intel IPMI. Esto mejora la comodidad de la administración de servidores, pero también puede implicar el riesgo de dependencia de un solo proveedor.
- Otras soluciones que ofrecen funciones OOB similares incluyen HP iLO y Dell iDRAC. Si se quiere evitar depender de un proveedor específico, también vale la pena considerar esas alternativas.
1 comentarios
Comentarios en Hacker News
Intel se está quedando atrás frente a AMD en rendimiento de CPU y GPU
Los NIC de Intel son en general superiores y también son populares en dispositivos de consumo
Al comprar servidores, Supermicro es una buena opción
La especificación IPMI está siendo reemplazada por Redfish
El hardware de Supermicro sigue siendo bueno, pero una investigación reciente de Hindenburg señaló algunos problemas
IPMI es común en servidores empresariales, pero raro para uso doméstico
Es recomendable no conectar el puerto IPMI a la LAN principal
Para agregar acceso remoto a una máquina sin IPMI, se puede usar el NanoKVM RISC-V de $30
Se compartió una experiencia instalando servidores Intel a finales de los 90
Las soluciones como IPMI son buenas, pero se prefiere una interfaz serial estándar
IPMI carece de soporte de hardware a largo plazo
Intel ME y AMD PSP desempeñan un papel importante en la inicialización del CPU
Dell está intentando reemplazar IPMI por Redfish
En un homelab, el consumo en espera de unos 5W de IPMI es un problema
Las claves predeterminadas de IPMI son un problema importante