01
Jul 14

Apache MESOS Centos 6 (parte III)

En esta tercera parte de Apache MESOS & Centos 6 está enfocada en posibilitar el uso de linux containers en mesos utilizando el framework marathon y dockers.

Primero debemos instalar python2.7 para poder instalar luego deimos.

Primero debemos instalar algunas dependencias

yum groupinstall "Development tools"
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install -y bzip2-devel
wget https://www.python.org/ftp/python/2.7.7/Python-2.7.7.tar.xz
xz -d Python-2.7.7.tar.xz
tar -xvf Python-2.7.7.tar
cd Python-2.7.7
./configure --prefix=/usr/local
make
make altinstall
export PATH="/usr/local/bin:$PATH"
curl -O http://python-distribute.org/distribute_setup.py
python2.7 distribute_setup.py
easy_install-2.7 pip
pip2.7 install deimos

Cuando revisamos el log de docker podemos encontrar un mensaje diciendo que la versión de docker es inestable debido a la versión del kernel que estamos usando, a continuación actualizaremos el kernel a la última versión que esta disponible en el repositorio elrepo

yum install http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-ml kernel-ml-devel kernel-ml-headers

Además debemos agregar (cgroup_enable=memory swapaccount=1 selinux=0) en

/boot/grub/menu.lst

title CentOS (3.15.3-1.el6.elrepo.x86_64)
        root (hd0,0)
        kernel /vmlinuz-3.15.3-1.el6.elrepo.x86_64 ro root=UUID=03b47cb3-1cad-4bad-9fbf-6baecb8c0e9b console=hvc0 crashkernel=auto SYSFONT=latarcyrheb-sun16 LANG=en_US.UTF-8 KEYTABLE=us cgroup_enable=memory swapaccount=1 selinux=0
        initrd /initramfs-3.15.3-1.el6.elrepo.x86_64.img

Finalmente una vez que se reinicie la máquina estaremos utilizando la version 3.15.x del kernel. La próxima guía mostrará como enviar un proceso al kernel distribuido mesos vía marathon utilizando containers dockers.


27
Oct 13

Install python module in nitrous.io

If you need a python module in your nitrous.io’s box try with

pip install --user requests

03
Dec 12

Raspberry PI + Torrent

Hace un par de semanas llegó mi raspberry pi de 700mhz y 256MB de RAM. La compré principalmente para configurar un sistema de descargas utilizando los discos usb que tengo. Actualmente esta corriendo la versión de debian disponible en la sección Downloads del sitio oficial de Raspberry. La instalación del OS fue muy simple fue sólo utilizar el comando/software dd para copiar la imagen a mi memoria SD de 16 GB, luego conectar todo , iniciar (conectando el cable de poder) e ingresar via ssh utilizando el user y password por defecto del sistema.

Descargar torrent

Para descargar torrent utilizo el cliente transmission (transmission-daemon utilizando la interfaz web). Para ello utilizamos apt-get.

sudo apt-get install transmission

Para configurar este cliente debemos editar un archivo que se encuentra en /etc/transmission-daemon/settings.json

sudo vim /etc/transmission-daemon/settings.json

Algunos datos de mi configuración son:

"incomplete-dir": "/shared/tmps",
"incomplete-dir-enabled": true,
"lpd-enabled": false,
"max-peers-global": 200,
"message-level": 2,
"peer-congestion-algorithm": "",
"peer-limit-global": 240,
"peer-limit-per-torrent": 60,
"peer-port": 51413,
"peer-port-random-high": 65535,
"peer-port-random-low": 49152,
"peer-port-random-on-start": false,
"peer-socket-tos": "default",
"pex-enabled": true,
"port-forwarding-enabled": false,
"queue-stalled-enabled": true,
"queue-stalled-minutes": 30,
"ratio-limit": 1,
"ratio-limit-enabled": true,
"rename-partial-files": true,
"rpc-authentication-required": true,
"rpc-bind-address": "0.0.0.0",
"rpc-enabled": true,
"rpc-port": 9091,
"rpc-url": "/transmission/",
"rpc-whitelist": "127.0.0.1",
"rpc-whitelist-enabled": false,
"script-torrent-done-enabled": true,
"script-torrent-done-filename": "/home/pi/scripts/download_complete.sh"

Para ejecutar un script cuando se termine la descarga de un torrent

"script-torrent-done-filename": "/home/pi/scripts/download_complete.sh"

Para permitir manejar transmission en forma remota utilizando el protocolo RPC

"rpc-authentication-required": true,
"rpc-bind-address": "0.0.0.0",
"rpc-enabled": true,
"rpc-port": 9091,

Luego para reinciar el transmission.

sudo invoke-rc.d transmission-daemon reload

Ahora podemos ingresar a http://ip_raspberry:9091 (por defecto el usuario es tranmission y el password transmission). Y ya podremos comenzar a descargar torrents.

En los próximos post mostraré como configurar flexget. Este programa se encarga de revisar si hay nuevos torrents (via RSS) y los agrega en forma automática a transmission.


30
Jun 12

Tabla de ruteo en Mac OS X 10.7.4

Para ver la tabla de routeo en Mac OS X 10.7.4 (aka Lion) se debe ejecutar el siguiente comando:

netstat -rn

30
May 10

Implode php en python

En PHP para poder separar con algún delimitador un arreglo en forma automática existe la función implode, en python podemos hacer algo similar con la función join


tmp = [1,2,3,4,5]
','.join( map( str, tmp ) )

Y tendremos ‘1,2,3,4,5’ :)


06
Oct 09

Convertir datetime de mysql en unix timestamp usando php


echo(date('U',strtotime($string)));


Rss Feed Tweeter button Facebook button Technorati button Reddit button Linkedin button Webonews button Delicious button Digg button Flickr button Stumbleupon button Newsvine button Youtube button