Octubre 2007


Cuando instale Solaris con los 4 discos de 500GB, no imaginé que iba a consumir 250W (segun apcaccess). Así que investigando un poco, encontre que hay un driver que maneja AMD PowerNOW! (y tambien Intel SpeedStep). Lo baje de OpenSolaris.org y lo instale sin problema alguno (ahora no lo estoy encontrando asi que se los subo aca). Luego de un touch /reconfigure y el correspondiente reinicio (por las dudas, habilite CoolN’Quiet y Q-Fan en el BIOS Setup), el consumo de la maquina cayó a la mitad. Muy recomendable para maquinas que no son usadas al 100% todo el tiempo.

Tags: No Tags

Tanto espere para Solaris 10u4 (que por fin incluye iscsitadm en la rama estable), para encontrarme 1000 problemas con el NAT. Como es mi primera vez con IPFilter, sospechaba de mis reglas, y llegue a un momento que pense que la configuración estaba razonablemente bien. Pero no, el Messenger se seguia desconectando. No me quedo mas remedio que preguntar en un foro, y tuve la suerte de que alguien tenia el mismo problema, y lamentablemente, el IPFilter de Solaris10u4 esta pinchado.

Asi que no me quedo mas remedio que actualizar, pero me lleve una sorpresa bastante desagradable al intentar seguir las instrucciones para actualizar IPFilter de la pagina de Darren. Estas instrucciones estan terriblemente desactualizadas, y Solaris 10u4, ademas, incluye muchos cambios en el stack TCP/IP. Notablemente, no necesita mas el modulo pfil, el modulo que permitia a IPFilter hablar con STREAMS.

Las instrucciones de actualizacion de IPFilter las encontre al final en un post del mismo Darren, y que resumire a continución:

  1. Bajar IPFilter 2.4.24 con parches para S10u4, o superior (yo baje el ultimo que habia, 2.4.27)
  2. Compilar con make y cc (NO gmake ni gcc)
  3. SunOS5/replace y fijarse si hay errores (habra de iptest, que no viene con Solaris)
  4. SunOS5/replace -f
  5. touch /reconfigure
  6. reboot con shutdown -y -i6 -g0

Con algo de suerte, tendremos el nuevo modulo en el Kernel. Pero ojo: esta version de IPFilter, NO SOPORTA zonas con TCP/IP exclusivo. La de Sun si, asi que si necesitamos esta funcionalidad, habra que seguir esperando a Sun.

Rapido: si intentan NATear con una placa con TCP Checksum Offloading (nge, de Nvidia o elxl de 3COM por ejemplo), el NAT no funciona bien. Hay que deshabilitar el TCP Checksum Offloading asi:

  1. Agregamos la linea ” set ip:dohwcksum=0 ” a /etc/system
  2. touch /reconfigure
  3. Reiniciar con shutdown -y -i6 -g0
Tags: , , ,

Como muchos sabran, los servicios en Solaris 10 ya no se inician como SysVInit, tan 90s… lo nuevo es SMF - Service Management Framework, parte del Self Healing de Solaris (whatever…). En fin, arrancar nuestros propios servicios a través de SMF es mas sencillo de lo que uno esperaría. Solo hay que escribir nuestra propia descripcion de servicio (en XML, que tan de moda esta), y agregarlo.

Les dejo este link que enseña como hacerlo com MySQL, y como verán, lo unico que hace es avisarle a SMF de que servicios depende MySQL (en este caso, red y filesystem), e indicarle donde están los scripts de arrance (scripys SysVInit pero no le digan a nadie shh!!). Y por ultimo, tambien podemos definir con que usuario debe correr el script.

Como siempre, descubri por las malas que el usuario tiene que tener un directorio home para que se ejecuten los scripts. Como home, obviamente es conveniente poner el directorio del programa en cuestión.

Partiendo de ese sencillo ejemplo podemos escribir nuestras propias descripciones de servicio y hacer que arranquen o se detengan via SMF, y verán como les facilita la vida (no mas update-rc.d xxx start 99 2 3 .).Y como seria un mal administrador si quisiera reinventar todo, aca hay una coleccion de scripts para varios programas.

En Solaris 10, para setear las librerias compartidas (por defecto, /lib y /usr/lib), se usa el comando crle.

Ejemplo rapido: para agregar /usr/local/lib al default hacemos:

crle -l /lib:/usr/lib:/usr/local/lib

y listo. Notese que se escribe el path completo, no es que se agrega al final