Posts filed under 'Internet'

Ohloh: Red Social de Software Libre

En Internet, hoy la moda son las redes sociales, y las hay de todos los gustos y colores. Hace unos días llegué a Ohloh, una red social que centra su foco en developers y proyectos de Software Libre y la verdad es que me pareció muy interesante!

Lo curioso de este sitio es que nos permite subir nuestros proyectos para luego hacer un análisis del código fuente, detectando los lenguajes utilizados, y sacando estadísticas. Como primera medida subí el proyecto GNOME War Pad a partir de mi repositorio git público, y en un par de horas el sistema había importado el código fuente y había analizado su contenido, detectando los contribuidores y su nivel de actividad en el proyecto.

Pueden ver además que a partir del código fuente, el sitio arma una especie de perfil de cada desarrollador, con información sobre el nivel de experiencia en cada lenguaje, cantidad de commits, etc. En fin, me pareció una idea original armar una red de desarrolladores cuya información sea extraída directamente de su trabajo, puede ser una buena fuente de contactos a la hora de buscar gente para un nuevo proyecto.

1 comment November 23rd, 2007

Cómo comprobar la configuración de un servidor DNS

InternetInternet funciona gracias a un servicio, el más importante de todos: DNS (Domain Name Service).

DNS no es más que una base de datos jerárquica y distribuída que permite a personas de distintos puntos del globo aportar datos de tal manera que los servicios que todos conocemos, funcionen correctamente. Gracias al DNS los servidores de correo electrónico pueden intercambiar mensajes, los navegadores web pueden encontrar los servidores donde pedir las páginas, etc.

Los administradores de sistemas tenemos como tarea, la de configurar los servidores de nombres para que los datos de nuestros dominios sean correctamente publicados en Internet. Lo cierto es que muy pocos administradores de sistemas conocen realmente la manera correcta de configurar un servidor de nombres, y muchas veces caemos en errores que luego sufrimos por cortes de servicio de correos y otros similares.

Por suerte, en GNU/Linux contamos con varias herramientas que nos ayudan a corroborar que la configuración de un dominio está correcta, hoy voy a comentar “zonecheck” una herramienta que tiene la particularidad de no necesitar analizar un archivo de configuración, sino que hace las consultas a los servidores de nombres públicos en Internet.

Zonecheck viene en Debian, así que para aquellos felices usuarios de esta maravillosa distribución de Linux, solo hace falta ejecutar “apt-get install zonecheck” y comenzar a utilizarlo. El comando posee muchas opciones y realmente es conveniente leer con detenimiento su páginal de manual, pero para aquellas personas ansiosas, acá les va un ejemplo:

$ zonecheck -4 -q -vi,x,d fileextensionunknown.com
ZONE  : fileextensionunknown.com.
NS <= : ns1.name.com. [4.79.81.159]
NS    : ns2.name.com. [38.97.225.164]
NS    : ns4.name.com. [38.97.225.165]
NS    : ns3.name.com. [4.79.81.160]

w> The format of the serial number is not YYYYMMDDnn
 | Ref: RFC1912 (p.3)
 |   The recommended syntax is YYYYMMDDnn (YYYY=year, MM=month, DD=day,
 | nn=revision number).
 `—– — – - -  -
 :   The serial 1 doesn’t seem to be in the YYYYMMDDnn format.
 `….. .. .. . .  .
=> ns2.name.com./38.97.225.164
=> ns4.name.com./38.97.225.165
=> ns3.name.com./4.79.81.160
=> ns1.name.com./4.79.81.159

w> [TEST delegated domain is not an open relay]: No route to host - connect(2)
=> generic

w> [TEST can deliver email to 'postmaster']: No route to host - connect(2)
=> generic

w> [TEST domain of the hostmaster email is not an open relay]: No route to host - connect(2)
=> generic

f> [TEST can deliver email to hostmaster]: No route to host - connect(2)
=> generic

==> FAILURE (and 7 warning(s))

Zonecheck realiza numerosas pruebas, y nos va diciendo cuales son advertencias, cuales son errores fatales y en algunas ocasiones, cómo solucionarlo.

Además, para aquellos administradores que no usen GNU/Linux, acabo de poner en línea una herramienta web que utiliza zonecheck de fondo, para poder acceder a esta ventaja aún estando en un Windows: Free DNS Report. ¡Que la disfruten!

1 comment November 17th, 2007

Manejando los hilos de nuestra infraestructura IT

Logo PuppetEl viernes pasado tuve la oportunidad de participar como orador en las 6tas Conferencias Abiertas de Software Libre de Capital Federal, organizadas por CaFeLUG, y lo que me permitieron exponer en esta ocasión es una herramienta que vengo mirando de hace relativamente poco tiempo, pero que me interesa muchísimo: Puppet.

La administración de servidores involucra variadas tareas, desde la elección de hardware para un nuevo servidor, la instalación del sistema operativo, aplicaciones, su configuración, pruebas y puesta en producción, para luego terminar con el mantenimiento de dicho servidor, que puede incluir más tareas como por ejemplo: actualización periódica del software instalado, la corrección de mínimos errores que podamos haber tenido en la configuración inicial, el agregado de pequeñas herramientas que nos ayudan a mantener los servicios funcionando, copias de respaldo de datos, y quizás también del sistema base… la lista continúa pero creo que la idea está planteada: Administrar servidores no es una tarea simple.

A medida que sumamos servidores a nuestra carga administrativa, cada uno con sus peculiaridades, servicios diferentes, configuraciones personalizadas, etc. nos vemos más y más inmersos en un problema latente:

  • Nuestra carga horaria necesaria para tener todo funcionando es cada vez mayor, ya que por cada servicio en cada servidor, los problemas que aparecen son únicos y muy pocas veces se repiten en otros casos. Esto significa que con casi cualquier problema que surge, el tiempo que tenemos que dedicarle a la investigación y resolución del mismo es tanto como el tiempo que le vamos a tener que dedicarle al siguiente, y así.
  • Por más minuciosos que seamos, las soluciones que aplicamos en un servidor hace 1 año serán distintas a las que utilicemos en la implementación de servidores hoy en día, por más que la funcionalidad de ellos sea similar. Día a día pulimos métodos, mejoramos algoritmos, aprendemos nuevas formas de hacer lo mismo que nos ahorran tiempo, y todo eso lo aplicamos a los servicios que tenemos a cargo, pero actualizar esos métodos en servidores donde los tenemos funcionando en alguna manera hoy antigua, es o bien muy costoso o simplemente imposible. En consecuencia: los métodos que utilizamos a través de los años quedan dispersos en la línea temporal que forman los equipos generados por nosotros.
  • ¿Y que me cuentan de la gestión de software? Habíamos visto que parte de nuestras tareas era la de mantener actualizado el software instalado en los equipos. Si bien hay administradores que tienen como política la frase “Si funciona, no lo toques”, yo creo que si la distribución te ofrece la estabilidad y confianza suficientes como para saber que las actualizaciones de seguridad no te van a romper nada, el actualizar es una necesidad, no sólo en los servidores expuestos a redes públicas como Internet. ¿Qué pasa cuando tenemos que actualizar 10 servidores? ¿Y cuando son 100? ¿Qué pasa cuando tenemos que instalar un nuevo software en 10, 50, o 100 servidores? Nos arremangamos, respiramos hondo, y o bien planeamos los siguientes 2 meses implementando el mismo software una y otra vez, o descartamos nuestros preciados fines de semana para acelerar el paso. De más está decir que si en vez de servidores hablamos de estaciones de trabajo…se complica un poquito más la cosa.
  • A medida que la infraestructura aumenta de tamaño, vamos necesitando gente que nos ayude. Si las políticas administrativas no están estandarizadas de alguna manera, lo único que haremos es sumar un ancla más sobre nuestro pescuezo, ya que las nuevas personas tendrán sus propios criterios y formas de hacer las cosas, multiplicando la variedad en la que los problemas son solucionados y por lo tanto, haciendo cada vez más necesaria gente altamente capacitada para el mantenimiento. De más está decir que es difícil conseguir gente con mucha experiencia que esté interesada en mantener un verdadero caos, ¡ellos tienen mejores cosas que hacer de su vida, y vos también deberías!

En mi haber tengo casi 10 años de experiencia en la administración de servidores, y esto sólo lo digo para recalcar el hecho que las problemáticas arriba expresadas sólo se hicieron evidentes cuando ya era tarde, cuando tenía encima casi 40 servidores, todos configurados artesanalmente y cada uno con sus peculiaridades. Ni yo me acuerdo de todos los detalles que hay ocultos en cada servicio que todas esas máquinas dieron. Si alguien me hubiera advertido, es probable que haya empezado a planear una estandarización temprana que me hubieran permitido administrar 400 servidores sin mayores problemas.

Aquí es cuando entra Puppet al rescate, ésta es una herramienta que nos ayuda solucionar los problemas antes mencionados. Puppet tiene varios componentes, entre ellos se encuentra el servidor, que distribuye las recetas que los clientes deben aplicar en cada servidor. Y ya que hablamos de recetas, éstas están escritas en un lenguaje declarativo, es decir, un lenguaje que expresa el estado de cómo debería estar el servidor, sin caer en una receta paso a paso para llegar a ese estado. Una receta en Puppet se refiere entonces a recursos, y su estado en el equpo, como por ejemplo: el paquete vim debe estar instalado y debe ser el editor por defecto, entonces Puppet se encarga que esto sea aplicado, ya sea en un Debian, un Redhat, Ubuntu o SuSE, nosotros nos olvidamos de los detalles menores.

Este alto nivel de expresión nos permite escribir recetas que luego podemos compartir con otros colegas, tal cual el software libre! esto es algo que muy pocas veces se ha hecho ya que las herramientas que los administradores de sistemas realizamos son normalmente muy ad hoc, poco portables a otros entornos.

Entre los recursos que Puppet nos permite administrar, están los paquetes de software, archivos y directorios, usuarios, tareas de cron, etc. y además como la herramienta está escrita en el lenguaje Ruby, es fácilmente extensible para agregar nuevos recursos.

El caso ideal luego de haber aprendido esta herramienta, sería que con cada servidor nuevo, lo único que haya que instalar sea el sistema base, el cliente Puppet, y luego éste se encarga del resto, manteniendo el estado que se expresa en las recetas a rajatabla, chequeando que se cumplan cada tanto, y nosotros mientras tanto pudiendo regresar a casa temprano, olvidandonos que estamos de guardia y que de un momento a otro, el celular podría sonar por algún incendio.

Les dejo disponible los slides de mi charla por si les sirve de algo.

1 comment October 11th, 2007

Software Freedom Day

softwarefreedom.png

Hoy 15 de Septiembre festejamos el dìa del Software Libre, en donde se pretende promocionar su uso en todos los ámbitos, desde el hogareño hasta el gubernamental.

Para esta oportunidad, el grupo de Software Libre de la Universidad Nacional del Litoral, UNLibre, organizó un evento con charlas e instalaciones de linux para el que quiera acercarce.

Add comment September 15th, 2007

Google Reader

rss.jpgDurante varios meses he estado usando el servicio de Netvibes para la lectura de mis sitios favoritos, es un sitio que permite al usuario crear su página personalizada, agregando no sólo feeds RSS, sino también cantidad de cosas como calendarios, notas, metereología, etc.

El problema que veo que tiene, es que es horrendamente lento…si bien mi máquina no es la gran cosa (AMD Sempron 2400+ con 512 MB de RAM), me di cuenta que cuantos más sitios sindicados tengo, más lerdo se pone. Además, al menos en mi experiencia de usuario, a netvibes lo uso sólo para la lectura de mis feeds, lo demás son chiches que no uso…

Luego de leer un artículo de un blog de por ahi, me propuse ver nuevamente que tal anda el Google Reader, hacía tiempo lo había probado y no me había gustado para nada, y me sorprendo al ver una interfaz de usuario completamente diferente. Aprovecho las funcionalidades de exportación e importación OPML que tienen ambos sitios y rápidamente me migro a este lector.

Luego de pasar un día utilizandolo, debo decir que realmente me encantó. No sólo por su velocidad de manejo (que Google nos tiene acostumbrados en todas sus aplicaciones web), sino además le encontré tres funcionalidades que al menos a mi me parecen excelentes:

  • Navegación por teclado: Muy al estilo GMail, hace la experiencia de usuario mucho más ágil sólo con aprenderse un par de teclas.
  • Compartir noticias: Si algún artículo nos da ganas compartirlo, luego podremos incluir el listado de noticias/artículos compartidos en nuestro sitio web (lo acabo de agregar en la barra lateral de mi blog)
  • El enlace “Next”: Agregando el enlace “next” a la barra de bookmarks de nuestro navegador, podemos en cualquier instante ir a ver la siguiente noticia que no hayamos leído. Parecería una estupidez pero es realmente práctico.

Si sos de leer noticias en RSS, realmente te recomiendo probarlo.

2 comments August 31st, 2007

Previous Posts


About me

Noticias seleccionadas

Calendar

August 2008
S M T W T F S
« Jul    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Posts by Month

Posts by Category

Technorati