DreamHost migra de Debian a Ubuntu

La semana pasada recibí un mail de DreamHost (donde tengo alojada esta página y algunas otras) avisándome que el servidor donde está alojada mi cuenta se iba a actualizar a Ubuntu 12.04.

DreamHost es un proveedor de hosting compartido muy barato (cuanto más lo usás, más barato es ya que tiene un precio fijo de alrededor de US$9 por mes y no tiene límites en cuanto a cantidad de dominios, cuentas de mail, bases de datos, espacio en disco, etc). Una de las cosas que siempre me gustó es que tienen una política bastante abierta en cuanto a problemas generalizados en su sitio DreamHost Status y que los servidores tenían instalado Debian (que era la distribución que yo usaba) y te daban acceso a un shell y no sólo a través de FTP.

Dada la cantidad de servers que tiene DreamHost (entiendo que son decenas de miles), los upgrades de los sistemas operativos de cada uno de estos servidores (que, a su vez, tienen varios cientos de usuarios cada uno) es algo que encaran con bastante cuidado.

Yo recuerdo el upgrade de Debian 3.1 (sarge) a Debian 4.0 (etch) que fue el primero que me tocó vivir y que se hizo bastante tiempo después del release original de etch. Luego hubo otros upgrades a los que les presté menos antención.

La sorpresa este fin de semana fue que en lugar de avisarme que hacían el upgrade de Debian 6.0 (squeeze) a Debian 4.0 (wheezy), el upgrade era a Ubuntu 12.04 (Precise Pangolin).

From Debian To UbuntuMe puse a revisar el blog de DreamHost y encontré esta entrada de hace más de un año donde explican los motivos del cambio.

Uno de los problemas que tiene Debian es que su ciclo de lanzamientos (release cycle) es irregular y el lanzamiento se hace “cuando está listo”. El otro problema (y el más grave para DreamHost es que una vez que sale una nueva versión de Debian, la versión anterior tiene soporte durante alrededor de un año.

Por el contrario, Ubuntu tiene un ciclo regular de lanzamiento de versiones cada seis meses (en abril y octubre de cada año) y, si bien el tiempo de soporte de una versión “común” es de sólo nueve meses luego de publicada, cada dos años (en abril de los años pares) se publica una versión que se llama de Soporte por un largo período (Long Term Support – LTS). Ubuntu garantiza el soporte de cada release LTS por cinco años desde el lanzamiento, con lo cual, una vez que sale una nueva versión LTS, la versión anterior todavía tiene una vida útil con soporte por tres años más. Esto le brinda a DreamHost un período largo y previsible para hacer los upgrades en forma pausada y controlada.

De hecho cuando el 14 de septiembre de 2014 comenzaron las migraciones de Debian 6.0 a Ubuntu 12.04, ya existía una nueva versión 14.04 LTS (Trusty Tahr), sin embargo, la versión que DreamHost tiene probada (porque empezó a hacerlo a mediados de 2013) es la 12.04.

El domingo pasado se produjo la actualización de mi host y, a propósito, dejé una terminal abierta con un par de comandos significativos el domingo a la tarde:


baby@dellores:~ $ ssh upson.dreamhost.com
                         
  _  _ _ __ ___ ___ _ _  
 | || | '_ (_-</ _ \ ' \ 
  \_,_| .__/__/\___/_||_|
      |_|                
 Welcome to upson.dreamhost.com

Any malicious and/or unauthorized activity is strictly forbidden.
All activity may be logged by DreamHost Web Hosting.

baby@upson:~ $ w
 13:19:28 up 209 days, 26 min,  1 user,  load average: 3.17, 5.78, 7.80
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
baby@upson:~ $ cat /etc/issue
Debian GNU/Linux 6.0 \n \l

baby@upson:~ $ lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 6.0.6 (squeeze)
Release:	6.0.6
Codename:	squeeze
baby@upson:~ $ uname -a
Linux upson 2.6.32.45-grsec-2.2.2-r3 #8 SMP Mon Oct 10 13:33:17 PDT 2011 x86_64 GNU/Linux
baby@upson:~ $ 
Broadcast message from root@upson (Sun Oct  5 20:42:19 2014):

The system is going down for reboot NOW!
Connection to upson.dreamhost.com closed by remote host.
Connection to upson.dreamhost.com closed.

y el lunes a la mañana volví a conectarme y probé los mismos comandos:

baby@dellores:~ $ ssh upson.dreamhost.com
                                   
                                   
 m   m  mmmm    mmm    mmm   m mm  
 #   #  #" "#  #   "  #" "#  #"  # 
 #   #  #   #   """m  #   #  #   # 
 "mm"#  ##m#"  "mmm"  "#m#"  #   # 
        #                          
        "                          

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

baby@upson:~ $ w
 09:24:32 up  8:03,  1 user,  load average: 5.28, 5.06, 5.05
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
baby@upson:~ $ cat /etc/issue
Ubuntu 12.04.5 LTS \n \l

baby@upson:~ $ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 12.04.5 LTS
Release:	12.04
Codename:	precise
baby@upson:~ $ uname -a
Linux upson 3.2.61-grsec-modsign #1 SMP Tue Aug 12 09:58:26 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
baby@upson:~ $ 


En principio todo lo razonable funciona OK. Tuve (como con cada upgrade) algún problema con la wiki que instalé a mano y que es afectada por los upgrades de Python (esto me pasaba también con los upgrades de Debian), pero supongo que lo arreglaré en estos días.

Hot patches

Ok, agrego algo que parece relacionado con el sexo en el título, una foto engañosa y ya tengo su atención ¿no?. Bueno, lamento desilusionarlos, pero no se trata de eso.
Hot patches

La semana pasada, me crucé en twitter con el Ksplice . Un producto/servicio que permite aplicar parches de seguridad al kernel de linux sin rebootear el equipo.

La información que aparece a primera vista en el sitio es un poco muy marketinera (bueno, al nivel de márketing que se puede llegar si estamos hablando del kernel de un sistema operativo y no de una aplicación para usuarios finales), pero, por suerte, navegando un poco se encuentra fácilmente un paper presentado en 2009 en una conferencia de la ACM/SIGOPS (que todavía estoy leyendo).

Si bien Ksplice cuesta entre US$3 y US$4 por server por mes, para las versiones desktop de Ubuntu y para Fedora, el servicio es gratuito, así que lo instalé en mi Ubuntu Desktop.

Se instaló un “chequeador de updates” (en python) que corre una vez al día via cron, un daemon “Ksplice Uptrack Manager” que interactúa visualmente (en forma similar al “Update Manager” de Ubuntu), un repositorio apt-get para las actualizaciones y algunas cosas más.

Ayer finalmente apareció un update de seguridad en el kernel de mi Ubuntu, el Update Manager lo instaló pero no me pidió rebootear, con lo cual en mi compu seguía corriendo el kernel anterior (con las vulnerabilidades).

Ksplice Uptrack Manager antes de aplicar el updateHoy a la mañana, cuando llegué, el Ksplice Uptarck Manager me avisó que tenía 4 parches de seguridad para aplicarle a mi kernel (los tres nombrados en el Ubuntu Security Notice USN-1023-1 y uno más) mediante un signo de admiración sobre su iconito en el system tray.

Simplemente apreté el botón Install all updates y los mismos se instalaron sin ningún inconveniente. Ksplice Uptrack Manager antes de aplicar el update

Revisé y el kernel que estaba corriendo era el viejo, sin embargo, el mismo tiene aplicados los parches de seguridad del nuevo kernel.

La próxima vez que rebootee, se cargará automáticamente el nuevo kernel, pero, mientras tanto, funcionalmente, es como si ya estuviera instalado.

Lo seguiré probando algún tiempo, pero tengo la sospecha de que, especialmente para los servidores, vale la pena aún pagar cuatro dólares mensuales por server para no tener que estar rebooteando los mismos cada vez que sale un parche de seguridad para el kernel.