¿que es un Ninja?

Leopoldo Abadia nos explica que son algunas cosas interesantes:

Posted in videos | Tagged , | Leave a comment

Introducción XAJAX

Ultimamente no me prodigo mucho, a ver si vuelvo a coger el ritmo.

Recopilo un buen documento de introducción para empezar a programar en ajax si lo tuyo es el PHP y aún no te has metido con ajax

http://www.scribd.com/doc/86539/Ajax-Manual-Spanish

Posted in Bibliografia, php | Tagged , , , , | Leave a comment

Soporte 24*7 Parallels

Es un pena que a menudo me encuentre errores de que con explicación tendrian una rapida resolución y tengas que tratarlos como si se tratasen de aplciaciones GNU. Claramente los de parallels tiene incidencias de como las miaso todos los dias y no las añaden a sus bases de datos de cosas tipicas.

Tambien es una pena que cuando abres un tiquet con prioridad critica, tarden lo insufrible en responder y encima respondan cosas de niños, como si no te hubieses mirado nada, como si no supiesemos usar un buscador.

Tambien es bastante lamentable que cuando les preguntas cosas como estas la respuesta sea si tienes la ultima versión de todo y como has copia los contianers, en vez de decirte la verdad y atajar por el camino recto.

Realmente si valorais vuestro tiempo es preferible que os busqueis gente que se pelee todos los dias con los productos en cuestión que no tener que pedir soporte a la gente de parallels.

Realmente los productos funcionan razonablemente bien y debe haber autenticos “gurus” en los niveles mas altos de la piramide, pero como pasa en general con casi todo ni con un “gold partner” “platinium leches” ni nada que se le parezca vas a tener acceso a esos niveles.

Ciertamente, creo no me creo que los errores que veo cada dia solo me salgan a mi y sea el unico que se los encuentra. SImplemente no me lo creo y lo peor viene cuando acredito al resolución.

Debo dar las gracias a Parallels por obligarme a aprender tanto y sinceramente, estas cosas son las que hacen que el trabajo que realizo entre en la categoria de “VOCACIÓN”.

También debo agradecerle a Parallels que apoyen el de GNU, aunque se salten algunos aspectos.

Tambien debo dar las gracias a la gente de mi entorno (tecnicos,administrativos etc) que no se alteran cuando hablo un poco mas fuerte de lo habitual y los pongo a todos a parir. Debo admitir que en general suelo tener razón en lo que digo aunque lo exprese de forma un poco mas beemente de lo estrictamente necesario.

Posted in General, plesk, VZ | Tagged | 6 Comments

El PIM te dice: “You are not authorized to log in.”

Si el PIM te dice:

You are not authorized to log in. Please contact your service provider for support.

SEguramente se debe a algun tipo de corrupcíón del agente que gestiona los servicios de Virtuozzo. En ocasiones pasa cuando el disco duro se llena o cosas similares, aun cuando lo hemos resuelto el problema persiste.

Debe aplicar el comando: vzagent_ctl restart

http://forum.swsoft.com/showthread.php?t=52544

Posted in VZ | Tagged , | 1 Comment

Evaluar lineas enteras en un for en bash

cuando recorremos una lista con el comando for en un script bash, evalua cada columna como una campo. Sin embargo en ocasiones nos puedes interesar recorrer lineas enteras como una unidad.

Para esto deberemos indicarle a bash que el salto de campo es un salto de linea ye sto lo hacemos asignado un valor a la variables IFS, en concreto si queremos saltos de linea IFS=$’\012′

un ejemplo claro seria esto:
IFS=$’\012′
for i in  $( ‘vzlist -a -H ‘ ); do
echo HN99 $i
done

mas info en: http://tldp.org/LDP/abs/html/internalvariables.html

Posted in General | Tagged , | Leave a comment

Verificar que un contianer Virtuozzo esta en orden de marcha.

En ocasiones cuando migramos un container no funciona, a pesar de lo que digan los tecnico de parallels. Ellos te cuentan que han visto que funcona muchas veces, habla de forma correcta, funciona muchas veces, pero es que yo quiero que funcione siempre

Lamento ser tan exigente pero aun no eh conseguido que la gente de parallels me indique que condiciones deben cumplirse para garantizar, GARANTIZAR, “GARANTIZAR” que el container va a funcionar.

Según parallels cuando migras un container los EZ-Templates son sincronizados y a continaución el container.

Yo he verificado empiricamente que cuando migras unc ontainer de un Hardware Node viejo a uno nuevo (nuevo sin templates), las herramientas de parallels te copia la ultima versión de los paquetes instalados en el container que estas migrando.

Respito LA ULTIMA VERSIÓN. Esto significa que si por alguna razón tiene algún paquete con otra versión que no es la ultima luego no va a funcionar.

Esto es vital para los planes de contingencia, ya que te puede imaginar la cara que se le queda a todo el mundo cuando tienen una movida “chunga”.

Para evaluar que una migración va a funcionar correctamente te propongo un metodo sin parar:

  • En el servidor de origen duplicamos el contianer (no requiere parada) vzmlocal -C 123:9123
  • Luego lo movemos al de destino vzmigrate root@hndestino 9123
  • En el de destino hacemos un vzfsutil -t /vz/template /vz/private/9123 –call

Si van a haber problemas en la migración esto nos dara una buena tanda de quejas varias.

Ni que decir tiene que lo que digo es cierto y que antes actulize los cache de los templates y todos los paquetes del container y eso falla.

Con lo que aqui indico os asegurais el tiro, en general cuando las migración de 1 contianer va entre 2 HN, iran todas, pero no esta mal verificar la primera con un container antiguo preferiblemente.

Posted in VZ | Tagged , , , | 5 Comments

Can’t read OSTEMPLATE from CT

SI os encontrais ocn este error, lo podeis corregir facilmente. Es facil tene run container sin template alguna, ahora no entraremos en ese debate, pero es MUY facil y funciona perfectamente, otro tema es si es lo mas optimo etc, pero hasta donde yo se hay que primar el hechoq ue funcione por encima del ahorro de recursos.

[root@hn7 ~]# vzmlocal -C 777:9777
Moving/copying CT#777 -> CT#9777, [], [] …
Can’t read OSTEMPLATE from CT 777 config
Can’t move/copy CT#777 -> CT#9777, [], [] : Can’t read OSTEMPLATE from CT 240013 config
[root@hn7 ~]# joe /etc/vz/conf/777.conf
Processing ‘/etc/joe/joerc’…Processing ‘/etc/joe/ftyperc’…done

Simplemente le añadimos una OSTEMPLATE=”” a la configuración.

Opcionalmente os recomiendo que en vez de indicar que no hay template añadais una standar template que se corresponda a la distribución que teneis en el container. Hay algunos casos que con “” seguira quejandose.

Posted in VZ | Tagged | 2 Comments

Reutilizar contianers migrados en Virtuozzo

En virtuozzo podemos migrar un contianer de un anfitrión a otro, cuando hacemos esto, suele funcionar bien, pero en ocasiones esto no es así.

Es importante decirle con el parametro ” -r no ” en vzmigrate, equivalente o mediante menús si usamos el PIM u otra herramienta grafica indicarle que guarde una copia.

Esta copia se guarda en el directorio: /vz/privates/<VEID>.migrated

Para reutilizar la copia (noe s una copia es el original) deberemos hace run simple:

mv /vz/private/<VEID>.migrated /vz/private/<VEID>

ln -s /vz/private/<VEID>/ve.conf /etc/vz/conf/<VEID>.conf

Posted in VZ | Tagged , | Leave a comment

Problemas al migrar containers “vzctl : Error: d_path is invisible”

En ocasiones os podeis encontrar que no hay manera de hacer backups, migrar, clonar containers.

Cuando esto sucede generalmente se debe a un problema que existe en ciertas versiones que hace que la funciona checkpoint se degrade.

Cuando esto pasa al hacer un df -h dentro del container os encontrareis el vzfs montado mas veces de las que corresponderia.

Para verificar sin mas impacto que el problema que os afecta es este podeis hacer un:

vzctl suspend
vzctl resume

Hecho esto va bien es que el problema que teneis es otro, si da error teneis el problema del que hablo. Ahora solo teneis que hacer un vzctl restart y el problema quedara resuelto

/
[root@hn5 ~]# vzmigrate –online -r no root@xxxxx 246101

root@xxxxxxx’s password:

Connection to destination node (root@xxxxxxx) is successfully established

Moving/copying CT#246101 -> CT#246101, [], [] …

Checking external bind mounts

Check cluster ID

Checking keep dir for private area copy

Checking SLM-only mode

Checking capabilities for online migration

Checking license restrictions

Checking technologies

Checking disk usage space

Checking templates for CT

copy ez template area directories

copy /vz/template/centos/5/x86_64

Checking caches

Checking IP addresses on destination node

Check target CT name: xxxxxxxx

Checking RATE parameters in config

Tracker started

Copy private area ‘/vz/private/246101’

done

OfflineManagement CT#246101 …

done

Suspending CT#246101 …

done

Dumping CT#246101 …

vzctl : Can not dump Container: Invalid argument

vzctl : Error: d_path is invisible /var/named/run-root/proc

vzctl : Checkpointing of Container failed

vzctl failed, exitcode=16

can not dump CT#246101 : vzctl failed, exitcode=16

This CT can’t be migrated online at the moment. Try offline migration.

can not stop/umount CT#246101 : vzctl failed, exitcode=16

Can’t move/copy CT#246101 -> CT#246101, [], [] : can not stop/umount CT#246101 : vzctl failed, exitcode=16

Resuming CT#246101 …

done

OfflineManagement CT#246101 …

done

[root@hn5 ~]# uname -a

Linux hn5.kaosredes.com 2.6.18-028stab053.17 #1 SMP Mon Jun 9 20:42:43 MSD 2008 x86_64 x86_64 x86_64 GNU/Linux

[root@hn5 ~]# vzctl suspend 246101

Setup checkpoint …

Can not dump Container: Invalid argument

Error: d_path is invisible /var/named/run-root/proc

Checkpointing of Container failed

[root@hn5 ~]# vzctl enter 246101

entered into Container 246101

-bash-3.2# df -h

S.ficheros Tamaño Usado Disp Uso% Montado en

vzfs 10G 2,1G 8,0G 21% /

none 3,0G 4,0K 3,0G 1% /dev

vzfs 10G 2,1G 8,0G 21% /var/named/run-root/var/run/dbus

vzfs 10G 2,1G 8,0G 21% /var/named/run-root/var/run/dbus

vzfs 10G 2,1G 8,0G 21% /var/named/run-root/var/run/dbus

-bash-3.2# exit

logout

exited from Container 246101

[root@hn5 ~]# vzctl restart 246101

Restart Container

Stopping Container …

Container was stopped

Container is unmounted

Starting Container …

Container is mounted

Setup slm memory limit

Setup slm subgroup (default)

Setting devperms 20002 dev 0x7d00

Setup ioprio: 4

Adding port redirection to Container(1): 4643 8443

Adding IP address(es) to pool:

Adding IP address(es): xxxxxxxxxx
Hostname for Container set: xxxxxxxxxxxxx
File resolv.conf was modified

Container start in progress…

[root@hn5 ~]# vzctl suspend 246101

Setup checkpoint …

Container is unmounted

Checkpointing completed succesfully

[root@hn5 ~]# vzctl resume 246101

Starting Container …

Container is mounted

Setup slm memory limit

Setup slm subgroup (default)

Set cpus: 1

Setup ioprio: 4

Adding port redirection to Container(1): 4643 8443

Adding IP address(es) to pool:

Adding IP address(es): xxxxxxx

Container start in progress…

[root@hn5 ~]# vzctl enter 246101

entered into Container 246101

-bash-3.2# df -h

S.ficheros Tamaño Usado Disp Uso% Montado en

vzfs 10G 2,1G 8,0G 21% /

none 3,0G 4,0K 3,0G 1% /dev

vzfs 10G 2,1G 8,0G 21% /var/named/run-root/var/run/dbus

-bash-3.2# exit

logout

Posted in OpenVZ, VZ | Tagged , , , | Leave a comment

Mejorar el rendimiento de la swap

Si tenemos varias particiones swap y no nos preocupamos de laprioridad de uso, se usa la priemra partición yc uando necesita smas, se usa la segunda y asi sucesivamente. Sin embargo espreferible usar todas a la par, esto en general mejora ligeramente el rendimiento.

Para hacerlo debemos editar el archivo /etc/fstab y donde hay algo asi:

LABEL=SWAP-sde1 swap swap defaults 0 0
LABEL=SWAP-sdd1 swap swap defaults 0 0
LABEL=SWAP-sdc1 swap swap defaults 0 0
LABEL=SWAP-sdb1 swap swap defaults 0 0

Deberemos actualziarlo a algo parecido a esto:

LABEL=SWAP-sde1 swap swap pri=0 0 0
LABEL=SWAP-sdd1 swap swap pri=0 0 0
LABEL=SWAP-sdc1 swap swap pri=0 0 0
LABEL=SWAP-sdb1 swap swap pri=0 0 0

Posted in linux | Tagged , , | Leave a comment