31 de mayo de 2013

Habilitando la Consola Serial en Centos

Con esto de las maquinas Virtuales y KVM , existe la posibilidad de conectarse a estas a traves de "virsh".
Ingresar en la consola en la maquina que esta ejecutando KVM y simplemente tipee virsh
deberá ver algo similar  a la imagen siguiente, y luego vuelva a presionar ENTER.


Si no le pregunta por el usuario , deberá configurar los parámetros de Kernel para poder habilitar la consola serial.
Para esto debea editar el archivo /boot/grub/grub.conf y anexar al final de la linea donde aparece KERNEL lo siguiente;

console=tty console=ttS0,115200n8



Guarde los Cambios y reinicie la maquina virtual.




28 de mayo de 2013

Discos compartidos con iSCSI en CentOS 6 (rev 1.0)



En la actualidad tengo algunos servidores con CentOS 6, mas la estación  en la cual trabajo. Esta ultima quedo sin espacio en disco, y en uno de los servidores tengo un disco de 1.0 Tb el cual presentare usando iSCSI.
Como primer paso instalo el paquete que presenta los targets a los iniciadores, configuramos para que el servicio sea persistente, e iniciamos el servicio para disponer del el en este momento

  • yum install scsi-target-utils
  • chkconfig tgtd on
  • service tgtd start

El segundo punto es configurar las LUNs de almacenamiento. Este puede ser un achivo plano, un volumen LVM o un dispositivo de bloque, y para este caso usare un volumen lvm que creare en el servidor.
Teniendo a disposicion un volumen LVM, lo siguiente sera exportar la unidad iSCSI y la LUN, para esto usaremos el comando tgtadm, que me permitira crear un target y asociarlo al storage creado anteriormente.

  • tgtadm --lld iscsi --op new --mode target --tid 1 --targetname iqn.2012-04.ve.com.cervini:disco1
--lld es el drive que usaremos, en este caso es iscsi
--op es la operacion que efectuaremos sobre el dispositivo, que en este caso es uno nuevo
--tid en el numero del target,
--targetname es el nombre del target en formato IQN o iSCSI Quilified Name

Luego asociamos el dispositivo a al volumen y la LUN

  • tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 --backing-storage /dev/vg_walter/lv_home  
lo nuevo aqui es la lun y el dispositivo a usar para el storage.


Licencia de Creative Commons
Discos compartidos con iSCSI en CentOS 6 (rev 1.0) by Walter Cervini is licensed under a Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 Unported License.

Interfaces Bondining con Bridge en Centos 6.4

En dias pasados estaba montado el grupo de Virtualización en un CentOS 6.4 sobre un Servidor "Dell Power Edge 2950".

No voy a entrar mucho en detalles, el lector conoce donde están ubicados cada uno de los archivos que mencionare a continuación:

Para configurar una interface "Bond" sobre un Bridge efectué los siguientes pasos:

  •  Instalar Bridge-Utils
Configurar las interfaces:

ifcfg-br0
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.10.253
NETMASK=255.255.255.0
NETWORK=192.168.10.0
BROADCAST=192.168.10.255
ONBOOT=yes
DNS1=192.168.10.1
GATEWAY=192.168.10.1
DELAY=0
SLAVE=bond0

ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
BRIDGE=br0
USERCTL=no
ARP=no
BONDING_OPTS="mode=1 miimon=100"
BOOPROTO=static

ifcfg-eth0
DEVICE=eth0
HWADDR=00:24:E8:4F:21:B5
TYPE=Ethernet
UUID=ab0c1c06-14f2-4a9c-bae6-9b76a30425fb
ONBOOT=yes
USERCTL=no
SLAVE=yes
MASTER=bond0

ifcfg-eth1
DEVICE=eth1
HWADDR=00:24:E8:4F:21:B7
TYPE=Ethernet
UUID=42b86b65-b804-469c-a7d7-593cbcfa797c
ONBOOT=yes
USERCTL=no
MASTER=bond0
SLAVE=yes

Adicionalmente cree el archivo /etc/modprobe.d/bonding.conf con la siguiente informacion

alias bond0 bonding


Eso es todo, espero les sirva este pequeño articulo, en caso de dudas; dejen sus comentarios.

12 de febrero de 2012

Utilizar API de Twitter con PHP

Utilizar API de Twitter con PHP:

Twitter es una de las redes sociales de mayor crecimiento, como ya todos sabemos permite a los usuarios postear mensajes de una longitud reducida en número de caracteres. A través de las API de Twitter cualquiera puede crear aplicaciones que comuniquen con el servicio de la mencionada red social.

Hay un gran número de posibilidades si nos planteamos comunicar nuestro sitio web con Twitter, no me refiero a la implementación sino a las diferentes funcionalidades que podemos integrar en nuestro sitio web si decidimos comunicarlo con Twitter.

En este caso vamos a ver la opción más sencilla pero a su vez también la más utilizada, actualizar el estado de una cuenta de Twitter desde un script PHP.

Si hacemos una búsqueda en Google seguramente encontremos tutoriales que nos explican como utilizar la API de Twitter gracias al uso de la librería CURL, pero este método quedo obsoleto hace unos meses y si intentamos implementarlo recibiremos el siguiente error: “basic authentication is not supported”

 

< ?php
include '../../twitter.php';
$message = 'New movie ...';
$url = 'http://twitter.com/statuses/update.xml';
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, "$url");
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "status=$message");
curl_setopt($curl_handle, CURLOPT_USERPWD, "$username:$password");
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
if (empty($buffer)) {
 echo "error!";
} else {
 echo 'success!';
}
?>

Cómo acabamos de comentar este método ya no funciona ya que ahora es necesario el uso de Oauth

Para aquellos interesados en trabajar con la API de Twitter por primera vez y para aquellos que necesitan actualizar el código que ha quedado obsoleto en estos últimos meses debido al cambio, os recomiendo el siguiente artículo (en inglés).

Resumiendo un poco hay que realizar tres sencillos pasos:

1. Registrar una aplicación en: http://dev.twitter.com/apps/new. Tienes que dar a esta aplicación permisos de lectura y escritura para poder actualizar el estado de tu cuenta de Twitter.

2. Tienes que obtener 4 claves para conseguir actualizar el estado de la cuenta, estas son las claves necesarias: Consumer key, Consumer secret, Access Token (oauth_token), Access Token Secret (oauth_token_secret)

3. Descarga twitteroauth.

Ejemplo de uso (para actualizar el estado de una cuenta Twitter desde PHP):

< ?php
$consumerKey = 'insert your consumer key';
$consumerSecret = 'insert your consumer secret';
$oAuthToken = 'insert your access token';
$oAuthSecret = 'insert your token secret';

require_once(twitteroauth.php');

$tweet = new TwitterOAuth($consumerKey, $consumerSecret, $oAuthToken, $oAuthSecret);
$statusMessage = 'Prueba';
$tweet->post('statuses/update', array('status' => $statusMessage));
?>

Redhat en la Nube con OpenShift

Redhat a puesto en la Red su propia nube llamada OpenShift Express totalmente gratuita. En ella podremos montar aplicaciones
Java, Perl, PHP, Python y Ruby con un servidor de bases de datos como MySQL, Postgres o
MongoDB.  Al abrir una cuenta, se te asignara una URL única para tu aplicación y un repositorio
git asociado.  Los desarrollos seran almacenados en git automáticamente, esta accion desplegara la aplicacion en la nube de forma automática. Tambien tienen una versión no gratuita llamada Openshift Flex, que para obtenerla deberás darte de alta de la versión gratuita. Mas informacion en  https://openshift.redhat.com/app/ 
Share Up To 110 % - 10% Affiliate Program