tag:blogger.com,1999:blog-58800970515958084612024-03-05T18:45:19.983+01:00Un día horrible como técnico de ITJuan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.comBlogger34125tag:blogger.com,1999:blog-5880097051595808461.post-57432581899343126802016-08-06T16:46:00.002+02:002016-08-07T09:14:52.608+02:00Nuestro primer proyecto con ArduinoBueno ya hemos tenido bastante teoría, vamos con la parte divertida. Vamos a tocar cacharritos.<br />
Nuestro primer proyecto será simplemente un proyecto que enciende y apaga una luz, es algo extremadamente sencillo, pero nos permitirá explicar algunos conceptos importantes como: subir código al arduino, utilizar un puerto de entrada y salida, y conectar un led al sistema.<br />
<br />
<b><u>Objetivo:</u></b><br />
El experimento es razonablemente sencillo para comenzar. Se trata de hacer que un led se encienda y apague cada 500 milisegundos o cada medio segundo que es lo mismo.<br />
<br />
<b><u>M</u></b><b style="text-decoration: underline;">ateriales necesarios:</b><br />
<br />
<br />
<ul>
<li>Placa Arduino UNO</li>
<li>Placa de pruebas (también llamada breadboard o protoboard)</li>
<li>Un LED de color </li>
<li>Resistencia de 330ohm</li>
<li>Cablecitos de conexión</li>
</ul>
<div>
Aquí os dejo una foto:</div>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUBMFVrhaNzZrNHRFdzfxFixAI-C17palbHPG79zj0qHTMuci7aWzKtPx12XS9Cg4O_aNKASHW7Zbd6DuZXczMiAlCjEosZGweB89zeicTaXOfKtw4kC3YL7sb-OPgDtp5WBcOcYaz-Q/s1600/prj1-ard-materiales.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUBMFVrhaNzZrNHRFdzfxFixAI-C17palbHPG79zj0qHTMuci7aWzKtPx12XS9Cg4O_aNKASHW7Zbd6DuZXczMiAlCjEosZGweB89zeicTaXOfKtw4kC3YL7sb-OPgDtp5WBcOcYaz-Q/s320/prj1-ard-materiales.JPG" width="240" /></a></div>
<br />
<br />
<b><u>Esquema:</u></b><br />
Primero vamos a entender el esquema del proyecto que vamos a utilizar.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOWqOMl1wNZM7ZV2xNmFQypy5BwDH16nIAHgEzURZMF6om9p8uKy17YbtWFbBFyrcFby8whRBqaOihMrM9owe1xilzU1bTvgcEUYULOw0YPm21Q3XkTY7IumBW-6M9cjX2ZKRn5jVzZA/s1600/prj1-esquema-conn.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="244" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOWqOMl1wNZM7ZV2xNmFQypy5BwDH16nIAHgEzURZMF6om9p8uKy17YbtWFbBFyrcFby8whRBqaOihMrM9owe1xilzU1bTvgcEUYULOw0YPm21Q3XkTY7IumBW-6M9cjX2ZKRn5jVzZA/s320/prj1-esquema-conn.png" width="320" /></a></div>
<br />
Lo que vamos a hacer es un pequeño programa que en un bucle infinito encienda el led, espere 500 milisegundos, lo apague, espere otros 500 milisegundos y vuelva al principio.<br />
<br />
Para encender y apagar el led utilizaremos uno de los puertos de entrada y salida de la placa arduino. Simplificándolo mucho, este puerto puede cambiar de estado y presentar en este un valor de tensión de -5V hasta +5V y hasta 40mA.<br />
Con esto como podéis ver el esquema es muy sencillo, lo que vamos a hacer es conectar un led al puerto 13 de la placa arduino, que nos dará estos +5V, y la otra pata del led a GND lo que cerrará el circuito y hará que se encienda el led.<br />
<br />
<b>TIP:</b> ¿Por que tenemos que poner una resistencia entre la salida digital (pin 13 del arduino) y la patilla del led?<br />
<br />
La principal razón es para no "quemar" el led. El led es un diodo y nuestro puerto de arduino nos va a enviar 5V en esta patilla con hasta 40mA lo que puede fundir nuestro led en un segundo. La resistencia lo que va a hacer es dividir la tensión que tenemos en el led haciendo de esta manera que nunca lleguemos a ese máximo teórico del led y no los carguemos. El punto está en calcular cual debería ser la resistencia a utilizar, el consejo es que no utilicemos menos de 330ohm, si usamos una superior lo que veremos es que sigue luciendo pero con menor intensidad.<br />
<br />
<b><u>TIP:</u></b> Cual es el "positivo" y cual el "negativo" del LED. Recordar esto, la patilla larga de los led es el anodo positivo, y la más corta pues el negativo. Y ya sabéis el positivo a los 5V y el negativo a GND, pero nunca os olvidéis de esa resistencia que va en serie.<br />
<br />
Bien vamos a conectar entonces:<br />
<br />
<ul>
<li>Utilizaremos un cable (rojo a ser posible) desde el pin 13 de la placa arduino a una fila de la protoboard</li>
<li>En la misma fila de la protoboard conectaremos la resistencia de entre 330ohm a 1kohm el valor que queramos</li>
<li>En la misma fila del otro extremo de la resistencia conectaremos el ánodo positivo (la pata larga) del led</li>
<li>La otra pata del led la conectaremos a otra fila diferente no usada (en mi caso a la columna negativa de la protoboard)</li>
<li>En la misma fila del cátodo negativo del led o en la columna de negativo de la protoboard como mi caso, conectaremos un cable hasta el pin GND de Arduino</li>
</ul>
<br />
Bien ya tenemos las conexiones, ahora vamos a preparar nuestro pequeño programa.<br />
<br />
<b><u>Programa:</u></b><br />
<br />
Abrimos el IDE de nuestro arduino y pegamos el siguiente código:<br />
<br />
<pre class="brush: csharp">
int pinRojo = 13; // El LED rojo lo vamos a controla con el pin 13
void setup() // lo ejecutamos solo una vez al iniciar la placa
{
pinMode(pinRojo, OUTPUT); // configuramos el pin como Salida (OUTPUT)
}
void loop() // ejecutamos en un bucle infinito
{
digitalWrite(pinRojo, HIGH); // Encendemos el LED rojo
delay(500); // esperamos 500 ms o medio segundo
digitalWrite(pinRojo, LOW); // Apagamos el LED rojo
delay(500); // esperamos medio segundo
} // reeeeeeeeepetimos
</pre>
Como podéis ver el programa es bastante sencillo.<br />
<br />
<br />
<ul>
<li>En primer lugar lo que haremos es definir en una variable el número del pin digital que vamos a utilizar en la placa arduino para encender y apagar el led. En este caso el 13.</li>
<li>Después de esto dentro del "void setup" inicializamos los parámetros de la placa que queramos, en nuestro caso vamos a configurar el pin 13 (el que definimos en la variable del paso anterior) como de tipo salida (OUTPUT). Ya veremos más adelante que significa esto.</li>
<li>A partir de aquí entramos en un loop infinito en el que se ejecutan los siguientes pasos:</li>
<ul>
<li>Ponemos el pin en alto, o para entendernos con +5V</li>
<li>Esperamos 500 ms (esto es la instrucción delay)</li>
<li>Ponemos el pin en bajo, o para entendernos en +0V</li>
<li>Esperamos otros 500ms o medio segundo</li>
<li>Volvemos al paso inicial</li>
</ul>
</ul>
<div>
Como podéis ver es algo extremadamente sencillo lo que estamos haciendo. Os animo a que hagáis vuestra primera práctica y me contéis que tal os ha ido.</div>
<div>
<br /></div>
<div>
Si os animáis os propongo los siguientes retos, que resolveré en el próximo articulo:</div>
<div>
<br /></div>
<div>
<ul>
<li>Cambiar el proyecto actual del pin 13 al pin 12, ¿os funciona? ¿como lo habéis hecho?</li>
<li>Añadir un par de LEDs mas de otro color y hacer que se enciendan y apaguen del mismo modo</li>
</ul>
</div>
<div>
<br /></div>
<div>
Disfrutar, cualquier duda estoy a vuestra disposición.</div>
<div>
<br /></div>
<div>
Saludos.</div>
juanenhttp://www.blogger.com/profile/10568860932364873034noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-56230407974003256822016-07-26T20:00:00.000+02:002016-08-07T09:15:28.085+02:00Materiales principales para ArduinoEn nuestros laboratorios utilizaremos placas Arduino como componente principal. Como explicaba en mi primer post esto es debido a su extremada sencillez, que son muy muy económicas, y sobre todo que existe un enorme ecosistema de proyectos y trabajo hecho en Internet que facilitará enormemente nuestro objetivo.<br />
<br />
<b><span style="font-size: large;">Arduino</span></b><br />
Es un proyecto opensource que se inició por parte de unos estudiantes en la universidad de Ivrea, El equipo de desarrollo de la placa está formado por seis estudiantes principales: Massimo Banzi, David Cuartelles, Tom Igoe, Gianluca Martino, David Mellis y Nicolas Zambetti.<br />
El proyecto surge como una queja de Massimo sobre lo dificil que es encontrar placas con micro controladores baratas y sencillas de utilizar. Durante una visita del ingeniero español David Cuartielles a la universidad Italiana, Massimo discutió con David esta situación lo que les llevó a tomar la decisión de realizar ellos mismos un diseño para resolver este problema. Tan solo le llevó dos días a Mellis finaliar el código para la placa, y 3 días más diseñar la placa que llamarían Arduino.<br />
<br />
<b><span style="font-size: large;">La plataforma Arduino</span></b><br />
Arduino se ha convertido en la plataforma más popular en la actualidad en todo el mundo. Ha evolucionado en diferentes versiones, desde la primera versión Arduino UNO (en la que trabajaremos nosotros) hasta sistemas más actuales especializados en proyectos de Internet of Things o incluso Wearables (por ejemplo relojes inteligentes).<br />
<br />
Arduino es un proyecto Open Source de hardware que proporciona diferentes interfaces de tipo digital y analógico. El sistema se desarrolla sobre lenguaje C y se proporciona una herramienta de desarrollo (IDE) a través de la que se escribe el código, se compila, sube a la placa y ejecuta.<br />
<br />
<span style="font-size: large;"><b>Versiones Arduino</b></span><br />
Para nuestros proyectos y laboratorios utilizaremos principalmente la placa Arduino UNO aunque es posible que en algún caso alguna de las prácticas se realicen sobre el modelo denominado Arduino 101.<br />
<br />
<b><u>Arduino UNO</u></b>: es la placa inicial del proyecto y es razonablemente simple. Se basa en el procesador de Atmel ATMEGA328P. Este procesador nos permite disponer de 14 pines de entrada y salida que nos permitirán conectarnos con el mundo exterior, de estos 14, 6 de ellos proporcionan una salida de tipo PWM (ya veremos para que sirve y como se configura.<br />
Las características principales son:<br />
<br />
<table style="background: white; border: 1px solid rgb(213, 233, 233); box-sizing: border-box; color: #4f4e4e; font-family: "TyponineSans Regular 18", "Lucida Grande", Lucida, Verdana, sans-serif; font-size: 0.9em; margin-bottom: 1.25em;"><tbody style="box-sizing: border-box;">
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Microcontrolador</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;"><a href="http://www.atmel.com/Images/doc8161.pdf" style="box-sizing: border-box; color: #00979c; line-height: inherit; text-decoration: none;" target="_blank">ATmega328P</a></td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Voltaje</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">5V</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Voltaje entrada (recomendado)</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">7-12V</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Voltaje entrada (límite)</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">6-20V</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Pins I/O digitales</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">14 (6 de ellos con salida PWM)</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Pins digitales PWM I/O </td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">6</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Pins entrada analógicos</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">6</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Tensión DC por Pin I/O </td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">20 mA</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Tensión DC por Pin 3.3V</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">50 mA</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Memoria Flash</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">32 KB (ATmega328P)<br />
0.5 KB usados por el bootloader</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">SRAM</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">2 KB (ATmega328P)</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">EEPROM</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">1 KB (ATmega328P)</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Velocidad de Reloj</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">16 MHz</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;"><br /></td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;"><br /></td></tr>
</tbody></table>
<b><u>Arduino 101</u></b>: Esta nueva revisión de la placa se basa en un microprocesador mucho más moderno en este caso de Intel. El procesador dispone de dos cores y se denomina Intel Curie. Es una placa mucho más moderna, basada en tecnología Intel de 32-bits y que mantiene en gran medida la compatibilidad con los sistemas originales, en la mayoría de los casos solo tendremos que actualizar nuestro IDE para re-compilar nuestro software. Esta placa la utilizaremos en situaciones muy limitadas y concretas, aunque en los laboratorios intentaremos siempre comentar la especificidad en esta placa.<br />
<div>
Las características principales son:</div>
<div>
<br /></div>
<div>
<table style="background: white; border: 1px solid rgb(213, 233, 233); box-sizing: border-box; color: #4f4e4e; font-family: "TyponineSans Regular 18", "Lucida Grande", Lucida, Verdana, sans-serif; font-size: 0.9em; margin-bottom: 1.25em;"><tbody style="box-sizing: border-box;">
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Microcontrolador</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Intel Curie</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Voltaje</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">3.3V (5V tolera I/O)</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Voltaje entrada (recomendado)</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">7-12V</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Voltaje entrada (límite)</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">7-20V</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Pins I/O digitales</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">14 (4 proporcionan salida PWM)</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Pins digitales PWM I/O </td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">4</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Pins entrada analógicos</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">6</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Tensión DC por Pin I/O </td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">20 mA</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Memoria Flash</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">196 kB</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">SRAM</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">24 kB</td></tr>
<tr style="background-color: #f6fafa; box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Velocidad de Reloj</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">32MHz</td></tr>
<tr style="box-sizing: border-box;"><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Otras características</td><td style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px 45px 0px 10px;">Bluetooth LE, 6-axis accelerometer/gyro</td></tr>
</tbody></table>
<b><span style="font-size: large;">Diferencias</span></b></div>
<div>
Como podéis ver las principales diferencias las encontramos en el procesador y la tecnología que usa cada uno de ellos. Es relevante hacer notar que el UNO funciona con una tensión de 5V y el modelo 101 usa 3,3V. Esto será muy relevante a la hora de elegir nuestros sensores, si os fijáis un dato importante que se da es el voltaje de funcionamiento de entrada, esto hará que cuando elijamos nuestros periféricos tengamos que tener cuidado o acabaremos quemándolos.</div>
<div>
La segunda gran diferencia la encontramos en la velocidad de reloj, si os fijáis el 101 corre al doble que UNO (32Mhz frente a 16Mhz), así que nos dará un mayor rendimiento que el primero y nos permitirá ir a aplicaciones que requieran mayor capacidad de procesamiento.</div>
<div>
Por último a destacar es la capacidad de memoria SRAM y Flash, una para ejecutar nuestro código y otra para almacenarlo. UNO es muy inferior (p.ej. 2K de SRAM frente a más de 10 veces el 101 con 24Kb).</div>
<div>
<br /></div>
juanenhttp://www.blogger.com/profile/10568860932364873034noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-34366699119512780962016-07-24T12:02:00.000+02:002016-07-24T12:02:54.037+02:00Cambiamos el rumbo - Arduino, Raspberrypi...<b><span style="font-size: large;">¿Porqué? </span></b><br />
Después de algún tiempo ausente (o mucho tiempo ausente), mi vida ha cambiado bastante en los último años. Desgraciadamente mi pasión por la informática, se ha convertido en algo residual debido a mi trabajo, en el que ahora en vez de ejecutar los proyectos como técnico, los ejecuto pero como gestor, como suelo decir soy un técnico venido a menos :-).<br />
Esto hace que mis capacidades técnicas que antaño disfrutaba, ahora sean mucho más limitadas, y en realidad pueda aportar muy poquito sobre todo cuando de situaciones complejas se refiere. Es por esto que he decidido darle un giro al blog y orientarlo a uno de mis hobbies que siempre han estado ahí, pero sobre los que nunca he escrito.<br />
<br />
<b><span style="font-size: large;">¿De donde proviene todo?</span></b><br />
Este hobby empezó hace unos 20 años, de la mano de los micro-controladores de Microchip. Como digo hace 20 años había bastantes cosas para divertirse, tarjetas telefónicas (bueno esto en realidad no eran microcontroladores), tarjetas de proveedores de TV (esto si lo eran), etc. Esto me hizo dar mis primeros pasos con los PIC16F84 y toda su familia, o los atmel (AVR) un poquito despues que ya eran procesadores incluso más potentes que los de mi amado CPC464 (recordar aquél Zilog a 2Mhz :-)). Tras aquella época maravillosa de micros, eeproms,etc. la verdad es que quedó todo en un limbo que se vino a reactivar hace unos años con las apariciones de los Arduino, Raspberry, etc. y su punto culminante fue cuando tuve que hacer mi trabajo de fin de grado hace unos años en el que tube que "darlo todo" con una placa LPC1769 que lleva un procesador de la familia Cortex-M3.<br />
La verdad es que me divertí muchísimo ya que es un mundo de procesadores que te permiten hacer cosas en real time, algo que nunca había hecho yo, y además me permitió utilizar protocolos como I2C, jugar con puertos ADC, o configurar la escritura sobre dispositivos con protocolos (a mi modo de ver) ya avanzados como 1-Wire.<br />
Esto siempre me ha hecho pensar que bien explicados estos dispositivos pueden ser una ayuda en las escuelas de nuestro país enorme. Son dispositivos súper baratos, sencillos incluso de construir, los cuales con una protoboard y un par de comandos tienen para el alumno una recompensa inmediata, y que además al ser muy muy sencillos permite realizar pequeñas modificaciones dándole al alumno un placer mental instantáneo al conseguir e manera sencilla su objetivo.<br />
Creo que el cambio de rumbo ya se va dibujando, ahora detallémoslo.<br />
<br />
<span style="font-size: large;"><b>¿Cual es mi objetivo?</b> </span><br />
Como buen fan de todas estas cosas, mi objetivo será proporcionar de manera sencilla y mediante pequeños y fáciles laboratorios la capacidad a cualquiera de iniciarse en este mundillo. Me encantaría que estas pequeñas fichas que vamos a ir desarrollando se pudieran utilizar en centros educativos sin restricción alguna.<br />
Los trabajos iniciales no van a ser originales míos, creo que ha mucho trabajo ya hecho en el mundo anglo sajón pero que por alguna limitación de idioma no está disponible. Mi labor en estos casos será proporcionar una ficha de laboratorio y un vídeo de la práctica idéntica, o con pequeñas modificaciones y mejoras. Por supuesto siempre con la referencia al dueño original de la ficha.<br />
<br />
<b><span style="font-size: large;">¿Y como seguimos?</span></b><br />
Pues en los próximos días iré publicando diferentes artículos de introducción basados sobre todo en Arduino. Creo que Arduino es muy muy accesible tanto económicamente, donde tenemos placas por menos de 5$US, como a la hora de desarrollar su interface es extremadamente sencillo.<br />
<br />
Espero veros por aquí, y cualquier pregunta, duda o curiosidad estoy a vuestra entera disposición.<br />
<br />
Saludos y ¡un gran verano lleno de proyectos!juanenhttp://www.blogger.com/profile/10568860932364873034noreply@blogger.com0España40.463667000000008 -3.749220000000036614.545040000000007 -45.057814000000036 66.382294 37.559373999999963tag:blogger.com,1999:blog-5880097051595808461.post-42309719332635963932013-09-01T11:03:00.000+02:002013-09-01T11:03:16.534+02:00Certificación en Windows Server 2012<span style="font-family: Verdana, sans-serif;">Como suele ocurrirme en todas las vacaciones, retomo algunos del los temas que tenía por ahi aparcados. Este año ha coincidido con la renovación de mi certificación de como formador oficial de Microsoft (MCT o Microsoft Certified Trainer). </span><div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Esto me ha llevado a darme cuenta que mis obligaciones laborales han hecho que descuide mi formación técnica, y sobre todo mis certificaciones, las cuales la última data del año 2009 concretamente en Julio.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Así como un primer paso realista me he decidido a actualizar mis certificaciones como MCITP Enterprise Administrator 2008 a las nuevas y alucinantes versiones de Windows Server 2012.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Tras indagar un pelín he descubierto que la formación que Microsoft ofrece a las personas interesadas en certificarse ha mejorado un mundo la verdad, tenemos montones de webcasts, formaciones online, tests, y los siempre imprescindibles libros de MS Press con la calidad que acostumbran.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Para que os hagáis una idea, aquí os expongo los materiales que estoy utilizando yo para intentar actualizar mi certificación como MCITP a lo que ahora se denomina MCSA Windows Server 2012 (Microsoft Certified Solutions Associate), no confundir con el antiguo MCSA aunque se parece bastante.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><b>Objetivo:</b></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">El objetivo es conseguir la <a href="https://www.microsoft.com/learning/en-us/mcsa-windows-server-certification.aspx" target="_blank">certficación MCSA Windows Server 2012</a>, la cual se puede conseguir por dos vías.</span></div>
<div>
<ul>
<li><span style="font-family: Verdana, sans-serif;">Si no tienes certificación previa: Aprobando los examenes 70-410, 70-411, 70-412</span></li>
<li><span style="font-family: Verdana, sans-serif;">Si ya tienes una certificación previa: Aprobando el examen 70-417</span></li>
</ul>
</div>
<div>
<br /></div>
<div>
<span style="font-family: Verdana, sans-serif;"><b>Como conseguirlo:</b></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">El primer lugar al que recurrir, es a la Microsoft Virtual Academy, que la tienes aquí:</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">http://www.microsoftvirtualacademy.com</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Mi recomendación es que cuando te asocies digas que tu país es USA ya que sino el número de cursos que aparecen son muy reducidos, o si aparecen son muy tarde. Eso si, esto requerirá que tengas un nivel de inglés mínimo para entender los cursos on-line. Te adelanto que es muy sencillo de seguir el ingles ya que se preocupan de pronunciar y vocalizar muy bien.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Para el caso que nos ocupa, te recomiendo este curso:</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><a href="http://www.microsoftvirtualacademy.com/Content/ViewContent.aspx?et=1784&m=1777&ct=13359#fbid=M6USwrHykOr" target="_blank">Windows Server 2012 Training: Technical Overview</a></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Serie que cubre todos los aspectos de los tres examenes necesarios. Aunque tengas las certificaciones previas, si estás algo oxidado, como es mi caso, te recomiendo que hagas todos los cursos. Al menos conseguiras la satisfacción de los puntos que te da la MVA :-).</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Adicionalmente para cualquier certificación es importante practicar, practicar, practicar. En mi caso tengo en casa dos equipos pequeñitos (dos proliant ml110 con un dual core) con hyper-v montado sobre el que realizo mis propios laboratorios. Esto me permite probar los comandos de PowerShell, configuraciones, cambios, etc. El estar virtualizados me da la posibilidad de romper cosas y recuperarlas a su estado original en pocos minutos. Algún día subiré el esquema de mi mini laboratorio.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Por último, y para mi siempre imprescindibles, los libros de MS Press, en mi caso voy a recomendar el que corresponde al examen 70-417, que podéis encontrar en vuestras librerías habituales, yo lo encontré en amazon y disponible en versión kindle por un precio muy razonable de 17€, recomendado.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><a href="http://www.amazon.es/Exam-Ref-70-417-Upgrading-ebook/dp/B00AA36RTA/ref=wl_it_dp_o_pC_nS_nC?ie=UTF8&colid=2FKJ2XIX7GQCF&coliid=I3UJK5OON2SSXA" target="_blank">Exam Ref 70-417: Upgrading Your Skills to MCSA Windows Server 2012</a></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><b>Algunos consejos:</b></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Hay un vídeo muy muy chulo elaborado por el equipo de MCT del blog Born to Learn (imprescindible para la gente que nos apasiona el mundo MS), en el cual te proponen el reto de conseguir la certificación en 90 días, y durante 57 minutos te explican los puntos claves para conseguir esta certificación. Recomiendo altamente que le echéis un ojo, merece la pena invertir esa hora.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Video: <a href="http://borntolearn.mslearn.net/mcsa90/?vid=412ExamPrep#fbid=frHJS-ppom9?WindowsServer2012" target="_blank">Free certification prep. tools</a></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Espero que si este post os ha servido de algo paséis por aquí a decirlo. Cualquier duda estoy a vuestra disposición.</span></div>
juanenhttp://www.blogger.com/profile/10568860932364873034noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-72899681189974810682013-02-02T14:32:00.000+01:002013-02-02T14:32:14.771+01:00Peticiones<div style="text-align: justify;">
Mantener un Blog como este o cualquier otro es una tarea bastante complicada que requiere algunos puntos importantes como: disciplina, conocimiento, algo que contar, esfuerzo. Sinceramente tengo algunas de ellas no a partes iguales, pero hay una que muchas veces escasea y hace complicado el mantener vivo un Blog, y es el "algo que contar".</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Por esto es que a través de este <i>post </i>os pido a los poquitos que visitáis el Blog que pongáis en comentarios problemas puntuales con los que os habéis encontrado o que tenéis para que podamos tratarlos. Deben ser problemas concretos en situaciones concretas. No pidáis generalidades del tipo, tengo que desplegar una infraestructura de correo electrónico para 15.000 personas como lo harías. Se trata de problemas como los veis en el Blog hasta ahora, cosas o situaciones concretas.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Responder a este post, e intentaré contestarlas a todas mediante <i>posts</i>. Por supuesto no prometo tiempo de respuesta, y priorizaré las entradas que considere más interesantes para todas las personas.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
¡Gracias!</div>
Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-57797634747276188902013-02-02T14:26:00.002+01:002013-02-02T16:45:44.016+01:00Tarjetas de red fantasma en WindowsUn problema habitual con el que nos encontramos actualmente es cuando migramos entornos del mundo físico al virtual son esas tarjetas de red que el sistema de P2V también se trae configuradas al mundo virtual, pero que realmente no existen ya que nuestro entorno virtual crea nuevos interfaces o tarjetas.<br />
<br />
Además de tener el problema de los controladores que quedan por ahí huefanos, la definición de las tarjetas, no tendrían mucha importancia si no fuera por que la tarjeta se ha quedado con la configuración IP de la máquina física y esto impide que volvamos a configurar las nuevas tarjetas con la misma IP.<br />
<br />
La verdad es que hay un montón de sitios en los que explican como hacerlo, y yo suelo recurrir a la página de <a href="http://blogs.technet.com/b/davidcervigon/" target="_blank">David Cervigon</a> un mago del mundo Microsoft, que durante muchos años fue MVP y ahora se ha pasado realmente al lado del mal ;-), el tiene un gran articulo sobre como gestionar este punto, <a href="http://blogs.technet.com/b/davidcervigon/archive/2008/04/08/c-mo-eliminar-la-informaci-n-de-tarjetas-de-red-que-ya-no-est-n.aspx" target="_blank">en este enlace</a>.<br />
<br />
Pero bueno al grano, como encontramos y borramos estas tarjetas, por que estar están El método más sencillo a mi modo de ver, es hacer que el <i>Administrador de Dispositivos</i> nos las muestre, para ello abrimos una ventana de DOS, ya sabéis, inicio->CMD y listo.<br />
<br />
En esta ventana establecemos la variable de entorno:<br />
<br />
<div style="text-align: center;">
<span style="font-family: Courier New, Courier, monospace;">set devmgr_show_nonpresent_devices=1</span></div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBCnXNLByv3LF4qr4mEq0VJcFRStF4V85b0DKLd6YRfV4mmuJqxOicKvMFV0T9M3ZS-AsEXnk0bcGF5vtPUHuob89-XuBdfsH19RgI-cWb9M2xYJ7ceznKSXs5nOshnBVsDK1pZK3Il6UO/s1600/show_non_present_devices.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBCnXNLByv3LF4qr4mEq0VJcFRStF4V85b0DKLd6YRfV4mmuJqxOicKvMFV0T9M3ZS-AsEXnk0bcGF5vtPUHuob89-XuBdfsH19RgI-cWb9M2xYJ7ceznKSXs5nOshnBVsDK1pZK3Il6UO/s400/show_non_present_devices.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
De esta manera, ahora al arrancar el<i> Administrador de Dispositivos</i>, podremos mostrar los dispositivos que están instalados pero no se encuentran físicamente presentes en la máquina, para ello desde la misma ventana escribimos: "start devmgmt.msc2". Es importante abrirlo en la misma ventana, para que la consola de Administración de Dispositivos tenga esa variable de entorno y permita visualizar los dispositivos.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Por defecto el <i>Administrador de Dispositivos</i> tiene la opción de "Mostrar dispositivos ocultos" desactivada, para ello iremos al menú Ver, y ahí le activamos la opción como se muestra en la imagen.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3j-cE4vfFgygjKwKSI4_nN04BxC-zEcrEVs5RmpwOT9rscVdMWVNW1r_GWjl7mTgIgJWlYqeZAPcMZ0oUq0w8QyLmUBxhMRCHhpb2ATyAXWUF795cNe95eJFJ7tiG9yb77k_rvwLctw37/s1600/devmgm_show_hidden_devices.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="281" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3j-cE4vfFgygjKwKSI4_nN04BxC-zEcrEVs5RmpwOT9rscVdMWVNW1r_GWjl7mTgIgJWlYqeZAPcMZ0oUq0w8QyLmUBxhMRCHhpb2ATyAXWUF795cNe95eJFJ7tiG9yb77k_rvwLctw37/s400/devmgm_show_hidden_devices.png" width="400" /></a></div>
<br />
Con esta opción activada, la visión de nuestro <i>Administrador de Dispositivos</i> cambia, y nos muestra los dispositivos ocultos, en este caso es una máquina virtual que se ha convertido en un entorno de vmWare viniendo de un Blade (o cuchilla) BL460G3 que como veis trae las tarjetas de HP NC532i que son las que queremos eliminar ya que mantienen la configuración de IP antiguas:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNn3POlLLZUvuUTmrtan3zz4359Qo8ArhbyxB1n99pBMo6HGvEz8Ao5C9IsWiWUUo2giUTdt7LY7-rlIWpBLV6cMLxAu82c8vg0s9Jra27kR87OK0k922WeoxfMZ3pXnq9ABakhG8JSzsj/s1600/devmgr_hidden_devices.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="281" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNn3POlLLZUvuUTmrtan3zz4359Qo8ArhbyxB1n99pBMo6HGvEz8Ao5C9IsWiWUUo2giUTdt7LY7-rlIWpBLV6cMLxAu82c8vg0s9Jra27kR87OK0k922WeoxfMZ3pXnq9ABakhG8JSzsj/s400/devmgr_hidden_devices.png" width="400" /></a></div>
<br />
Ahora los siguientes pasos son sencillos, simplemente sobre la tarjeta que deseamos eliminar, pulsaremos botón derecho y elegimos la opción desinstalar. Esto nos eliminará la interface obsoleta y con ello la configuración IP quedando libre para configurarla en nuestras tarjetas.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEid-42jxpUm0JE-yTAuCb_Nq1wsLetcBB4uPEBodE6rUPKpqhs_KxqXmTsheVO_BaUqQDKaj39tOz-WLIUo-I5ZQajV7mx9BWIk7TgKhFuhZrgPBYEEEUUlojjYALqrQ2SajkwVtlijYsx_/s1600/uninstall_hidden_device.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="281" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEid-42jxpUm0JE-yTAuCb_Nq1wsLetcBB4uPEBodE6rUPKpqhs_KxqXmTsheVO_BaUqQDKaj39tOz-WLIUo-I5ZQajV7mx9BWIk7TgKhFuhZrgPBYEEEUUlojjYALqrQ2SajkwVtlijYsx_/s400/uninstall_hidden_device.png" width="400" /></a></div>
<br />
Confirmamos, la desinstalación y estamos listos, repetimos el paso para todas las tarjetas heredadas:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFIuPg9z0MGD8CWB_Cz39rYD4tEW8ff0JTs5k5PsTeaIvJ9eyGVKZ88ARFE9XOJTEPdPxLLPQi-FDXMybUQ1wC0EpDBC0plzH-m-UHHNttc2RwB35OOb5V3JVS9v44p6_pquQEModZnA0U/s1600/hidde_device_confirm_uninstall.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="280" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFIuPg9z0MGD8CWB_Cz39rYD4tEW8ff0JTs5k5PsTeaIvJ9eyGVKZ88ARFE9XOJTEPdPxLLPQi-FDXMybUQ1wC0EpDBC0plzH-m-UHHNttc2RwB35OOb5V3JVS9v44p6_pquQEModZnA0U/s400/hidde_device_confirm_uninstall.png" width="400" /></a></div>
<br />
Se que es un articulo super sencillo, pero siempre viene bien tenerlo a mano, ya sabéis si tenéis el Blog de JuanEn en vuestros favoritos aquí tendréis siempre estos artículos considerar que el Blog es como una base de conocimiento o referencia para vuestro trabajo diario.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0Copiapó, Región de Atacama, Chile-27.366359 -70.332236999999964-29.170056 -72.914023999999969 -25.562662 -67.750449999999958tag:blogger.com,1999:blog-5880097051595808461.post-75892302824977180872013-01-24T01:44:00.001+01:002013-01-24T01:44:02.880+01:00Relación de confianzaAprovechando que mi vida estos dos últimos meses ha dado un pequeño giro y he vuelto a mi pasado de técnico con esas noches sin dormir, ese problema que nadie más ha tenido, que no existe en Google etc. y que los reyes me han traído un flamante equipo nuevo ya ahora estoy 100% movilizado. Vamos a ver si me animo y retomo el tema, aunque como ya avanzo me temo que será por poco tiempo. Desgraciadamente a mi vuelta a España me volveré a alejar de esta ilusión de mi relación con la tecnología.<div>
<br /></div>
<div>
Bueno, para la vuelta aunque tengo muchas cosas que contar ya que el proyecto que estamos llevando a cabo es bastante complejo os contaré como recuperar la relación de confianza entre un equipo (puede ser un equipo de un usuario o un servidor, no importa) y un dominio de Directorio Activo.</div>
<div>
<br /></div>
<div>
El punto es muy sencillo, cuando tenemos estos errores suele ser por que bien el equipo ha estado mucho tiempo desconectado del controlador, o por que el usuario ha hecho alguna barbaridad (o el técnico, que también). </div>
<div>
<br /></div>
<div>
Como sabéis un equipo es un objeto dentro de directorio activo, al igual que puede ser un nombre de usuario (o más correctamente un usuario), y este como tal necesita servicios del directorio activo (oyes como me llamo, como se llama el dominio, dame una ip, etc.) y para mantener la seguridad el sistema lo que hace es que este objeto equipo, le asigna un nombre de usuario y contraseña, como a los usuarios. </div>
<div>
<br /></div>
<div>
El nombre del equipo es sencillo, es como lo llamáis cuando instaláis WINDOWS, si no os acordáis podéis mirarlo en Mi PC (botón derecho, propiedades, y ahí está) o bien con un "ipconfig /ALL", os pego la imagen que queda más friki ;-)</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-B7JD2suR_T48mGd9ozyLZk6HxauPBbN8w4UL0pi5xy6HX2GLbgcJMVEcBYqUEl1MHqrbrYQlDDUFZHnx5-IdXVBVwA3d87dr-PzjePue_nUBLoiIdHhGeltNmIKMDy-XuKBcyAXso_3s/s1600/cmd_nombre_host.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="123" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-B7JD2suR_T48mGd9ozyLZk6HxauPBbN8w4UL0pi5xy6HX2GLbgcJMVEcBYqUEl1MHqrbrYQlDDUFZHnx5-IdXVBVwA3d87dr-PzjePue_nUBLoiIdHhGeltNmIKMDy-XuKBcyAXso_3s/s400/cmd_nombre_host.png" width="400" /></a></div>
<div>
<br /></div>
<div>
Bien, en este caso ya tenemos el nombre del host, que es "AmSTablet", el primer paso será buscar el equipo en el directorio activo (esto ya para otro día), una vez que lo tenemos hacemos click sobre el objeto con el botón derecho del ratón, y tenemos una opción que dice restaurar contraseña. Hacemos click.</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9ctKparAX10OmxrqDF5YGnWiTckDq2oIcXwdFr18d0SozLOVUBI202TIs-lzk-nw_SNhBkMzzMbi7mo4pKF2m5_vrxkv7sTuaoxy5zo_79QZFHmC-mKH7_y8eI-dMtCIUrIEh4wpp1661/s1600/computer_pwd_reset.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="218" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9ctKparAX10OmxrqDF5YGnWiTckDq2oIcXwdFr18d0SozLOVUBI202TIs-lzk-nw_SNhBkMzzMbi7mo4pKF2m5_vrxkv7sTuaoxy5zo_79QZFHmC-mKH7_y8eI-dMtCIUrIEh4wpp1661/s320/computer_pwd_reset.png" width="320" /></a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
Con esto, el directorio activo ha "roto" la confianza definitivamente ya que ha cambiado la contraseña del objeto equipo, y el equipo no sabe cual es. Los siguientes pasos los realizaremos sobre el propio equipo. Para ello nos vamos a la pantalla de añadir/quitar equipo del dominio.</div>
<div>
<br /></div>
<div>
¡Atención! y esto es muy importante, aseguraros de conocer la contraseña de un usuario local del equipo con permisos de administración, o si la cosa no va bien tendréis auténticos problemas.</div>
<div>
<br /></div>
<div>
Bien, una vez con la pantalla de unir al dominio lo que vamos a hacer es justo lo contrario, elegiremos un grupo de trabajo, no importa el nombre, y nos pedirá las credenciales de un usuario de dominio para hacer ese trabajo (separarlo del dominio). No hará toda la parafernalia que ya conocemos, pero OJO, no reiniciemos el equipo aunque nos lo diga. Sin salir de la misma pantalla, volvemos a hacer el paso inverso, y unimos de nuevo el equipo al dominio. Esta vez si reiniciaremos el equipo.</div>
<div>
<br /></div>
<div>
Si todo ha ido bien, podremos comprobar en el visor de sucesos que el equipo ya tiene su relación de confianza, y todos esos mensajes feos, ha desaparecido.</div>
<div>
<br /></div>
<div>
Espero que os sirva. Disfrutar.</div>
<div>
<br /></div>
<div>
Saludos.</div>
Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-422094712605502882011-12-03T19:12:00.001+01:002011-12-03T19:17:49.331+01:00Esto se termina...Hola a todos tras un año desconectado.<br />
<br />
Ha sido un año de muchos cambios en mi vida tanto laboral como personal y he estado muy falto de tiempo y la verdad también de ganas. De hecho en varias ocasiones me he planteado seriamente cerrar el blog, y la verdad es que aun no he tomado una decisión sobre el destino final.<br />
<br />
El origen de este blog era contar mi día a día como técnico de sistemas, que problemas me enfrentaba en mi trabajo diario y como los solucionábamos. Con el objeto de ayudar a otros que o bien por tiempo o por tener menos experiencia pudieran necesitarlo.<br />
<br />
Pero desafortunadamente (para este blog) mi vida dio un cambio en Marzo del año pasado dejando de lado mi gran pasión por el mundo IT y reorientando mi actividad laboral más hacía el área comercial de proyectos en una gran compañía. Si es cierto que requiere un importante componente técnico pero de ninguna manera del modo que tenía antes. Podemos decir que aquí leo algún articulo según la necesidad del cliente, rozamos la tecnología, y nos focalizamos en vender proyectos. Eso si, mucha metodología, comunicación con el cliente, seguimiento, etc. Un rollo en definitiva.<br />
<br />
Bueno, al menos hasta final de año el blog permanecerá vivo y coleando así que si alguien quiere mantener algún articulo que lo copie, por que es posible que este blog muera con el año.<br />
<br />
Gracias a todos los que alguna vez habéis enviado un comentario o agracedimiento. No sabéis lo que eso ha significado.<br />
<br />
Gracias.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com1tag:blogger.com,1999:blog-5880097051595808461.post-48292255730589576212011-02-09T08:49:00.009+01:002011-02-09T22:45:04.107+01:00Configuración de una tarjeta de red en un Cluster Hyper-VAnoche nos tocaba realizar una intervención de las teoricamente sencillas, pero que en nuestro mundo nunca son sencillas y al final se terminan complicando. Básicamente tenemos un cluster de Hyper-V con 4 máquinas virtuales en dos Hosts con Win2k8 R2 Enterprise. Cuando hicimos las pruebas en laboratorio todo fue perfecto y la máquina virtual con la que hicimos experimentos de caidas etc. funciono sin problemas.<br /><br />La intervención en uno de los hosts implicaba apagarlo, para ello decidimos que moveríamos todas las máquinas virtuales al otro host y listo. Pues nada, a darle al botoncito del "Quick Migrate" todo fue bien, hasta que de repente una de las máquinas (la más improtante para variar) decidió que :<br /><br /><div style="TEXT-ALIGN: center">'Virtual Machine XXXX03' failed to start<br /></div><br />Nada, a dar vueltas, nos hemos equivocado en el calculo de memoria, de cores, pero nada todo correcto, una vuelta por los visores de sucesos y nos encontramos con estos errores:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyKw1eWa4dZqWuTOvTZldxY5mQF_sY7gAGUNAdY4Zeu_4vE5wz1oIlxvnK1H7JYoZ8YQGjoAwoBCTlg5-YO8N_nut4mjkmOCRIVbhqrymqxTeHONseLuSRW7a3c1cJkuZjKV8eVG5mQWXx/s1600/HYPER-V-FO-FALLO1.png"><img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 400px; DISPLAY: block; HEIGHT: 280px; CURSOR: pointer" id="BLOGGER_PHOTO_ID_5571601831924446354" border="0" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyKw1eWa4dZqWuTOvTZldxY5mQF_sY7gAGUNAdY4Zeu_4vE5wz1oIlxvnK1H7JYoZ8YQGjoAwoBCTlg5-YO8N_nut4mjkmOCRIVbhqrymqxTeHONseLuSRW7a3c1cJkuZjKV8eVG5mQWXx/s400/HYPER-V-FO-FALLO1.png" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPjdO2pCOR-lENqjjzlIEYd_Ulh9Iwl5Rv-fBTDZ1br7mRr9imSGGTe-JVPtgamZZJLrxiG4rzRip8RRvzOH6E4-__DuyuPMpPzm02KOsDlN9b9oViL8I4AtRpGvjW1dptoUdvdEQ52tzl/s1600/HYPER-V-FO-FALLO2.png"><img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 400px; DISPLAY: block; HEIGHT: 278px; CURSOR: pointer" id="BLOGGER_PHOTO_ID_5571602023251145250" border="0" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPjdO2pCOR-lENqjjzlIEYd_Ulh9Iwl5Rv-fBTDZ1br7mRr9imSGGTe-JVPtgamZZJLrxiG4rzRip8RRvzOH6E4-__DuyuPMpPzm02KOsDlN9b9oViL8I4AtRpGvjW1dptoUdvdEQ52tzl/s400/HYPER-V-FO-FALLO2.png" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJ9qsgeROFdGbtzU_fLLBWWFrV7R8ZeJ98ZjyuhVSqqiOYVbtMN1-rwZJA4i3tDqbEvNrqpQvfYqPjGOrhRFbnvHaaZrbuRcH4YVPGlck9WfwWZrkGerFW_jnbhJ70szkJzvCn3Jvt5vW3/s1600/HYPER-V-FO-FALLO3.png"><img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 400px; DISPLAY: block; HEIGHT: 277px; CURSOR: pointer" id="BLOGGER_PHOTO_ID_5571602193675945986" border="0" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJ9qsgeROFdGbtzU_fLLBWWFrV7R8ZeJ98ZjyuhVSqqiOYVbtMN1-rwZJA4i3tDqbEvNrqpQvfYqPjGOrhRFbnvHaaZrbuRcH4YVPGlck9WfwWZrkGerFW_jnbhJ70szkJzvCn3Jvt5vW3/s400/HYPER-V-FO-FALLO3.png" /></a><br />Ummmm, vaya, parece que algo en la red no va demasiado bien, revisamos los datos de tarjetas, de los switches, la visibilidad, etc. Aparentement todo correcto, una pequeña investigación nos llevo a ver que cuando tienes un cluster en Failover en Hyper-V las mismas herramientas que tienes en la MMC de Hyper-V las tienes en la caracteristica de Failover (vamos ya lo sabiamos pero siempre pensamos que eran identicas), pero una pequeña prueba (de las que mi profesor de matemáticas llamaba de idea feliz) hizo que al entrar en la configuración de la máquina virtual pero usando la herramienta de Cluster de repente la configuración de la red aparece como "Erronea", simplemente un cambio en la configruación de la red usando esta herramienta:<br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7Gt7A3le6jTqxNNfaQvOGhBWWXg8xKUHUBE-G9OYPgAOuta1C0tQT4vKJpgsu8_96KYOai1yoCWU5JxmxMwxttVePTLbKobMqBZ9UILSS-83Aker7AR5PzNP0b3jKiReOOAoph_-S86W4/s1600/HYPER-V-fo-Settings.png"><img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 400px; DISPLAY: block; HEIGHT: 233px; CURSOR: pointer" id="BLOGGER_PHOTO_ID_5571635174464013122" border="0" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7Gt7A3le6jTqxNNfaQvOGhBWWXg8xKUHUBE-G9OYPgAOuta1C0tQT4vKJpgsu8_96KYOai1yoCWU5JxmxMwxttVePTLbKobMqBZ9UILSS-83Aker7AR5PzNP0b3jKiReOOAoph_-S86W4/s400/HYPER-V-fo-Settings.png" /></a>Una investigación por el Technet de Microsoft nos llevo a decubrir que es imperativo que la configuración de cualquier parametro de una máquina virtual que pertenezca a un cluster se debe llevar a cabo desde la herramienta de cluster no desde la MMC de Hyper-V u ocurrirán cosas como estas.<br /><br />Estás advertido, disfruta.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-9497037410332006482011-01-28T22:52:00.002+01:002011-01-28T23:17:20.149+01:00Componentes de integración en máquinas CentOS 5 o superiorHoy vamos a dar el pequeño detalle para la instalación de los componentes de integración de Hyper-V en las máquinas Linux basadas en CentOS 5.4 o superior. Lo primero que debemos hacer es actualizar nuestro kernel y librerías a las últimas versiones, para ello desde nuestra máquina virtual ya instalada y configurada (por supuesto con adaptador heredado, ya que el sintetico no funcionará) ejecutamos el siguiente comando:<br /><br /><span style="font-size:85%;"><span style="font-family: courier new;">yum update</span></span><br /><br />Esto nos validará todas las actualizaciones, que aceptaremos, instalaremos, y reiniciamos la máquina con el último kernel disponible.<br />Ahora vamos a necesitar las últimas Herramientas de Integración de Hyper-V que a fecha de hoy las tienes <a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=eee39325-898b-4522-9b4c-f4b5b9b64551">aquí</a> para descargar.<br /><br />Bien, ejecutamos el ejectuable, valga la redundancia, y esto nos deja en un directorio una imagen .ISO que montaremos para la máquina virtual.<br /><br />Para montar la imagen usaremos este comando:<br /><br /><span style="font-size:85%;"><span style="font-family: courier new;">mkdir /mnt/cdrom<br />mount /dev/cdrom /mnt/cdrom</span><br /><span style="font-family: courier new;">cd /mnt/cdrom</span></span><br /><br />Si no tenemos instaladas las herramientas de desarrollo en nuestro sistemas usaremos el repositorio de CentOS para hacerlo:<br /><br /><span style="font-size:85%;"><span style="font-family: courier new;">yum groupinstall "Development Tools"</span></span><br /><br />Creamos el directorio donde instalaremos las herramientas y copiamos todos los archivos del CD-ROM a este directorio:<br /><br /><span style="font-size:85%;"><span style="font-family: courier new;">mkdir /opt/LinuxIC</span><br /><span style="font-family: courier new;">cp -R /mnt/cdrom/* /opt/LinuxIC</span><br /><span style="font-family: courier new;">umount /mnt/cdrom</span></span><br /><br />ahora simplemente iremos a compilarlas:<br /><br /><span style="font-size:85%;"><span style="font-family: courier new;">cd /opt/LinuxIC</span><br /><span style="font-family: courier new;">make</span><br /><span style="font-family: courier new;">make install</span></span><br /><br />Al ejecutar el make debemos fijarnos que no nos de error alguno, sino el make install no tendrá sentido. Con esto habríamos terminado. Si estamos utilizando la versión x64 de CentOS necesitamos un pasito más, para ello montamos el CD-ROM de CentoOS número 1, e instalamos el paquete "adjtime":<br /><br /><span style="font-size:85%;"><span style="font-family: courier new;">mount /dev/cdrom /mnt/cdrom</span><br /><span style="font-family: courier new;">rpm –ivh /mnt/cdrom/Centos/adjtimex-1.20-2.1.x86_64.rpm</span></span><br /><br />si no tenemos el CD-ROM podemos hacerlo con el comando yum:<br /><br /><span style="font-size:85%;"><span style="font-family: courier new;">yum install adjtimex.i386</span></span><br /><br />Si queremos finalmente validar que todos los componentes de integración están funcionando, lo podemos comprobar con el siguiente comando:<br /><br /><span style="font-size:85%;"><span style="font-family: courier new;">/sbin/lsmod | grep vsc</span></span><br /><br />Un último comentario, recordar que los dispositivos de red de los adaptadores sinteticos son denominados sethX, donde X es el número de interfaz, por ejemplo eth0 se convierte en seth0.<br /><br />Hasta la próxima.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-8167410744889951872011-01-27T08:50:00.007+01:002011-02-05T11:28:20.769+01:00Backup casero para SQL ServerTodos los que nos movemos en este mundillo conocemos los agentes de Backup de diferentes fabricantes y los precios que se gastan. En muchas ocasiones en el caso de los SQL Server simplemente necesitamos una copia monda y lironda de la base de datos sin ninguna floritura más. Pagar el dinero que cuestan estos agentes en muchas ocasiones no está justificado, y me he encontrado con situaciones en las que el técnico hace cosas como parar la Base de datos para hacer el backup y luego arrancarla, con los consiguente problemas de tiempo, riesgo de que no arranque, etc. etc.<br /><br /><br />Por ello aquí va un pequeño método sobre como realizar un backup de SQL Server en caliente. El sistema funcionará de la siguiente manera, un fichero bat/cmd se ejecutará con la periodicidad indicada en nuestro programador de tareas, este fichero pasara una serie de parametros a un script SQL que nuestro servidor entenderá, y a su vez este script SQL llama a un procedimiento almacenado dentro del nuestro SQL Server que es el encargado de realizar el DUMP.<br /><br /><br />En primer lugar crearemos el script que llamará al procedimiento almacenado y le pasara los parametros, creamos un fichero por ejemplo llamado "fullbackup.sql":<br /><br /><br /><span style=";font-family:courier new;font-size:85%;" >USE [master]</span><br /><span style=";font-family:courier new;font-size:85%;" >exec expressmaint</span><br /><span style=";font-family:courier new;font-size:85%;" >@database = '$(DB)',</span><br /><span style=";font-family:courier new;font-size:85%;" >@optype = 'DB',</span><br /><span style=";font-family:courier new;font-size:85%;" >@backupfldr = '$(BACKUPFOLDER)',</span><br /><span style=";font-family:courier new;font-size:85%;" >@reportfldr = 'c:\backupBD\reports\',</span><br /><span style=";font-family:courier new;font-size:85%;" >@verify = 1,</span><br /><span style=";font-family:courier new;font-size:85%;" >@dbretainunit = '$(DBRETAINUNIT)',</span><br /><span style=";font-family:courier new;font-size:85%;" >@dbretainval = '$(DBRETAINVAL)',</span><br /><span style=";font-family:courier new;font-size:85%;" >@rptretainunit = ' copies',</span><br /><span style=";font-family:courier new;font-size:85%;" >@rptretainval = 2,</span><br /><span style=";font-family:courier new;font-size:85%;" >@report =1</span><br /><br />Esta sentencia SQL lo que va a hacer es coger lo parametros que le pasemos cuando la llamemos con nuestro script o fichero BAT (se ven claramente los parametros que comienzan por $), y ejecutará el procedimiento almacenado que tenemos que subir como veremos ahora a nuestro sql server.<br /><br /><br /><br />El fichero BAT que ejecuta este script es un modelo como sigue:<br /><br /><br /><span style=";font-family:courier new;font-size:85%;" >"c:\Archivos de Programa\Microsoft SQL Server\90\Tools\Binn\sqlcmd -S .\ -i"c:\BackupBD\fullbackup.sql" -v DB="BAS</span><span style=";font-family:courier new;font-size:85%;" >EDEDATOS" -v BACKUPFOLDER="c:\BackupBD\BackupBBDD\" -v DBRETAINUNIT="days" -v DBRETAINVAL="1"</span><br /><br /><br />Por supuesto tendrás que adaptar las rutas de tu Script a tu entorno. Este comando tendrás que meterlo en un fichero .BAT que será el que des a tu programador de tareas para ejecutar.<br /><br /><br />Por último solo nos quedará, introducir el procedimiento almacenado en nuestro SQL Server, el que contiene la base de datos que queremos realizar copia:<br /><br /><br /><br />- Abrimos nuestra herramienta de gestión de SQL Server, SQL Server Management Studio en mi caso, y sobre la base de datos [master] creamos un nuevo procedimiento almacenado:<br /><br /><br /><img style="text-align: center; margin: 0px auto 10px; width: 400px; display: block; height: 196px;" id="BLOGGER_PHOTO_ID_5566775054233562210" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglLzs708SmQYRge4O_yrtKj9d0ZbSF5tbkvUP1Dz8qvmF9RIOLo-CnLIJJMz-FzIaGviD0gpvIQ6HTk-ijWHTWIqkxsCZhN9mFTN4UkR2DdkJciCZIeZmGG5OkDp90fuNk0q4gZLXNbtjo/s400/blog_proc_almacenado.png" border="0" /><br />Una vez que nos lo cree, tendremos que pegar dentro el contenido de este fichero, y el procedimiento almacenado se debe llamar "expressmain", si cambiaramos el nombre del procedimiento debemos corregirlo en el fichero "fullbackup.sql".<br /><br /><br /><a href="http://www.juanen.com/blog/uploaded_files/expressmaint.rar">Procedimiento Almacenado</a><br /><br /><br />Una vez preparado, el sistema nos dejará listo por un lado la copia de seguridad de la base de datos en el directorio indicado (BACKUPFOLDER este parametro va en el .BAT) y un informe del estado de la copia de seguridad en el directorio de reportes (reportfldr, este parametro va en el fullbackup.sql).<br /><br />[Actualización 05/02/2011]<br /><br />He detectado un error en el fichero para la creación del procedimiento almacenado ya que el comando utilizado que estaba en la descarga es "ALTER" y debería ser "CREATE" ya lo tienes corregido en la descarga para bajar nuevamente.<br /><br />Por otro lado algunos usuarios han detectado este problema al ejecutar el script:<br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvZ8zS38iQhfvc2_6-uOQLrCCRjGh0HxNVk5GNqCKa2LTryNWxzlgrCU7rTfq5gEGcSHH8hRoFBSRb1kwO81SDbkReCGd3OBwqdn_IpnugCJA8MfFLw79k0p3cfSd9b3lnLkFpLNxAgBMD/s1600/error_xp_cmdshell.png"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 71px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvZ8zS38iQhfvc2_6-uOQLrCCRjGh0HxNVk5GNqCKa2LTryNWxzlgrCU7rTfq5gEGcSHH8hRoFBSRb1kwO81SDbkReCGd3OBwqdn_IpnugCJA8MfFLw79k0p3cfSd9b3lnLkFpLNxAgBMD/s400/error_xp_cmdshell.png" alt="" id="BLOGGER_PHOTO_ID_5570148828826664322" border="0" /></a><br />Esto básicamente indica que la opción xp_cmdshell no está activada en el configurador de superficie del SQL Server, simplemente abrete el SQL Server Surface Configuration y en la opción de Configuración de Superficie para Caracteristicas, activas la casilla al lado de la opción "xp_cmdshell".<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOWBm6lJm9W2r55AzHSC_33toAqGnVWOgad6OVj80sNEFiftVedafmb853hKSJfxdVxUh3dkQQwvNKlLu5DpzA-10pnA8js5qvppB1G19Y9xofOqQ1_gGwmU0Qey2GfXXuDTjMOygSKypJ/s1600/activar_xp_cmdshell.png"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 315px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOWBm6lJm9W2r55AzHSC_33toAqGnVWOgad6OVj80sNEFiftVedafmb853hKSJfxdVxUh3dkQQwvNKlLu5DpzA-10pnA8js5qvppB1G19Y9xofOqQ1_gGwmU0Qey2GfXXuDTjMOygSKypJ/s400/activar_xp_cmdshell.png" alt="" id="BLOGGER_PHOTO_ID_5570149672759593746" border="0" /></a><br />Espero que os sirva.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-41501899243582191712010-10-14T23:45:00.006+02:002010-10-15T00:16:58.550+02:00Creación de maquetas con Windows 7Se que este post no va muy en la linea de los últimos en que pretendo orientar al campo de virtualización en entornos de Microsoft. Esta necesidad ha ocurrido con un cliente en los últimos días y por eso aportamos la solución aquí.<br />El cliente ha preparado una maqueta de un sistema basandose en la versión de Windows 7 Professional que viene preinstalado en un equipo HP dc8100SFF, al intentar hacer el sysprep con objeto de hacer el reseal de la maqueta y desplegarla resulta que da un error y no hay forma de hacer el reseal, tras una investigación hemos detectado que Microsoft y por ende sysprep no soporta realizar el reseal de un sistema operativo al que ya se le hizo previamente, como es el caso de los sistemas preinstalados en equipos de fabricantes.<br /><br />Por ello en este caso tuvimos que recuperar un DVD OEM estandard para instalar el sistema operativo de 0 y que nunca hubiera sufrido un reseal previo. Aprovechando esta circunstancia vamos a explicar como hemos realizado la maqueta con exito.<br /><span style="font-family:verdana;font-size:100%;"> <span style="font-weight: bold;">-</span> <span style="font-weight: bold;">PASO 1</span> <span style="font-weight: bold;">-</span></span><br /><br />En primer lugar arrancaremos el equipo con el CD de instalación de Windows 7, el metodo es el mismo para cualquier tipo de SKU (tipo de licencia o producto) da igual que sea OEM, licencia por volumen o Retail, lo importante es que previamente no hubiera sido pasado por un sysprep.<br /><br />Instalamos el sistema operativo de manera estandard con el DVD original, o bien desde un servidor de implementación, o si tenemos un archivo wim al que le hayamos realizado personalizaciones podremos utilizarlo de la misma manera (las personalizaciones pueden ser añadir drivers, logotipos, urls, etc., igual me animo y escribo otro contando como personalizar el OS).<br /><br />Si en tu caso tienes una imagen WIM necesitarás un CD con WinPE que incluya la utilidad imagex dentro de el para hacer la instalación final. También necesitarás un medio en el que tengas la imagen wim de Windows 7 a instalar en el equipo. Pincha el disco USB que contenga la imagen WIM antes de arrancar el equipo, introduce el CD de WinPE y arranca el sistema. Esto arrancará una edición de Windows reducida para hacer el despliegue de las maquetas.<br /><br />Lo primero que haremos será crear las particiones, la manera más sencilla es crear un archivo previamente con la distribución de las particiones que queremos crear en el sistema, la recomendación es crear 3 particiones:<br /><br /><ol><li>Sistema - Partición pequeña impresindible para que el sistema bote.</li><li>OS - Partición que albergará el sistema operativo y los datos de este (podemos crear una cuarta partición para los datos)</li><li>Recovery - Partición que contendrá una imagen del sistema operativo instalado con objeto de restaurarlo si fuera necesario en el futuro.</li></ol>Para realizar esto crearemos un archivo de texto similar al siguiente:<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVnCCMBexlVF76s-ldkDTR4Hvq7PwqPfIIvoHeNLjj5Pg9d7JbSN6CRzqpgFi_coOtO7553uoRuIfpC9joLsAkGuVA91cEt1g-TIyDRV9xzyKJpNfhPhhC5vMcKPDw9CvCZ0hR63qowLt5/s1600/DiskPartScript-txt.png"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 314px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVnCCMBexlVF76s-ldkDTR4Hvq7PwqPfIIvoHeNLjj5Pg9d7JbSN6CRzqpgFi_coOtO7553uoRuIfpC9joLsAkGuVA91cEt1g-TIyDRV9xzyKJpNfhPhhC5vMcKPDw9CvCZ0hR63qowLt5/s400/DiskPartScript-txt.png" alt="" id="BLOGGER_PHOTO_ID_5528024920692882306" border="0" /></a><br />Aquí crearemos una partición R: con 2,5Gb de espacio, una partición S: con un espacio de 100Mb y una última partición C: con el resto de espacio disponible. Este archivo lo tendremos en el disco usb, y desde la ventana de comandos del entorno WinPE ejecutaremos el archivo (ojo, esto eliminará todas las particiones del disco existentes):<br /><br /> DISKPART /s G:\DiskPartScript.txt<br /><br />Tras la ejecución del comando tendremos nuestro disco particionado, ahora necesitamos restaurar la imagen WIM del disco USB a la partición C:\, para ello usaremos este comando:<br /><br /> IMAGEX /apply G:\Windows7.wim 1 C:\<br /><br />Esto extraerá la imagen wim sobre la unidad C:, solo nos falta hacer que el sistema bote, para ello usaremos el siguiente comando:<br /><br /> BCDBOOT C:\WINDOWS<br /><br />[pendiente de subir el sistema de recovery]<br /><br />Con esto conseguiríamos desplegar el sistema de Windows 7 desde una imagen WIM preconfigurada. Reiniciamos el sistema y arrancará nuestro nuevo y flamante Windows 7.<br /><br /><span style="font-weight: bold;font-family:verdana;" >-</span> <span style="font-weight: bold;font-family:verdana;" >PASO 2</span>: Personalización <span style="font-weight: bold;font-family:verdana;" >-</span><br /><br />Una vez que tenemos instalado nuestro Windows 7 deberemos comenzar a personalizarlo, no es necesario que activemos la licencia, ya que el SYSPREP la eliminará.<br /><ul><li>Instalar los drivers que puedan faltar del sistema</li><li>Instalar los paquetes de software que deseemos distribuir con nuestra maqueta ya preisntalados. Antivirus, ofimática, lector de PDFs, etc.<br /></li></ul><span style="font-weight: bold;font-family:verdana;" >-</span> <span style="font-weight: bold;font-family:verdana;" >PASO 3</span>: Re-seal <span style="font-weight: bold;font-family:verdana;" >-</span><br /><br />Una vez que hayamos hecho la personalización, simplemente deberemos ejecutar el comando SYSPREP:<br /><br /> c:\windows\system32\sysprep\sysprep.exe<br /><br />Aquí es importante que elijamos las siguientes opciones, que abstraerá la imagen del hardware y hará que sea instalable en cualqueir hardware, pero ya incluirá los drivers que hallamos puesto, con lo que si es el mismo modelo se configurará automáticamente:<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilsMEeQ-r80kdjY40m8cgZiM7GRti1EcvY45Y6DxLulUi6q0FlkTJfx6tP0UDpNtgxtFlhodUtm3GHtCjQ1VEU_gS3d8w1fvLuAvsfYFY1dpveSpWHB87NHU2-NE7oxP1tmB4_-Q4vU-jm/s1600/sysprep-win7.png"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 352px; height: 263px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilsMEeQ-r80kdjY40m8cgZiM7GRti1EcvY45Y6DxLulUi6q0FlkTJfx6tP0UDpNtgxtFlhodUtm3GHtCjQ1VEU_gS3d8w1fvLuAvsfYFY1dpveSpWHB87NHU2-NE7oxP1tmB4_-Q4vU-jm/s400/sysprep-win7.png" alt="" id="BLOGGER_PHOTO_ID_5528028750404842562" border="0" /></a><br />Es importante seleccionar la opcion OOBE, Generalizar y luego Apagar, sobre todo Apagar, ya que si elegimos reiniciar haremos el reseal pero el sistema volverá a iniciarse y reconfigurarse. Una vez que termine el sistema se apaga y está listo para clonar.<br /><br />La clonación en el siguiente articulo...Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com1tag:blogger.com,1999:blog-5880097051595808461.post-7879305145381213672010-10-02T21:00:00.005+02:002010-10-02T21:24:57.384+02:00Ampliación de discos VHD con Instantáneas (parte 2/3)<div style="text-align: center;"><br /></div>En la primera parte finalizábamos el articulo dejando en el aire dos posibles soluciones para recuperar el sistema una vez que nos hemos cargado nuestros archivos diferenciales, por ejemplo si hemos montado en una máquina viva directamente el fichero .vhd y este ha sido modificado, dejando inservibles la cadena de ficheros de disco diferenciales llamados .avhd.<div><br /></div><div>Los ficheros .avhd funcionan de la siguiente manera, cuando creamos una instantánea de una máquina virtual el sistema congela el fichero .vhd de los discos duros y queda como solo lectura, a continuación crea un fichero .avhd y lo encadena co</div><div>n el primer .vhd, a partir de ese momento cada archivo que sea modificad se guardará completo en este nuevo fichero .avhd. Esto tiene sus ventajas e inconvenientes, la principal ventaja es que si montamos un fichero .avhd con una aplicación que lo permita automáticamente podremos recuperar el archivo que necesitemos completo ya que no guarda la diferencia a nivel de archivo desde que lo congelamos hasta ahora, sino una copia completa del archivo. Esto por contra tiene el problema del gran gasto de disco duro que sufriremos ya que se copia como digo el archivo completo y no las diferencias, pensar en servidores que funcionen con Bases de Datos como SQL Server o Microsoft Exchange, sistemas en los que es fácil encontrarnos con ficheros de base de datos de varios gigas de tamaño, esto hará que los ficheros .avhd crezcan rápidamente.</div><div style="text-align: center;"><br /></div><div>Esto nos va a permitir que ante una situación en la que queden inservibles los ficheros .avhd por ejemplo por que hemos ampliado el tamaño del disco sin consolidarlos, podamos recuperar las modificaciones posteriores, manualmente eso si.</div><div><br /></div><div><b>¿Cómo sacar información de un fichero .avhd?</b></div><div><br /></div><div>Los ficheros avhd no son otra cosa que ficheros vhd que contienen en su cabecera un id de enlace a su avhd o vhd padre de manera que podamos mantener un orden en la cadena. Simplemente deberemos descargar alguna de las utilidades que permiten montar ficheros vhd, renombrar el fichero .avhd a .vhd y montarlo con esta utilidad, veremos todos los archivos que contiene el disco diferencial, los cuales podremos copiar y res</div><div>taurar sin problemas.</div><div><br /></div><div><b>¿Que utilidades existen para montar ficheros .vhd?</b></div><div><br /></div><div>A día de hoy hay bastantes la verdad, las más conocid</div><div>as son vhdmount las cuales permiten montar el disco vhd desde el administrador de discos de un Windows Vista o Windows 7, o una utilidad gráfica la cual la verdad yo prefiero como <a href="http://arainia.com/software/gizmo/overview.php?nID=4">Gizmo Drive</a>.</div><div><br /></div><div><b>Recuerda que:</b></div><div><br /></div><div>Nunca amplíes un volumen de Hyper-V el cual tenga instantáneas, antes elimina todas las instantáneas y apaga la máquina virtual hasta que se consoliden todos los discos, lo verás en la consola de Hyper-V como evoluciona. Si no lo haces así perderás todos tus discos diferenciales.</div><div><br /></div><div>Si tienes que mover un conjunto de discos de ubicación (por conjunto entiende un volumen compuesto por un .vhd y uno o varios .avhd) muevelos todos j</div><div>untos, aseguraté que siempre coges el .avhd correcto que será siempre el más nuevo, si aun así tienes dudas utiliza en la consola de Hyper-V la herramienta "Inspeccionar disco", y nos vamos al directorio donde tenemos los discos .avhd, elegimos el más reciente y tendremos una pantalla como la siguiente:</div><div><br /></div><div><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggdQHEmbZchUea8hoYa4dbO8_iqdjfSS9Xc8klDSNfHhJQT00CVpNqLtF4NJ4GYomH6LCUyOWeUmF59g3ty6_WwzQ_eoInAjdGTwIit9jtGTftBxv-hiC54slZ_LqJtxldh3z4eKLjJcbD/s400/inspeccionar_disco_hyperv-img1.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 228px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5523530830225962402" /></div><div><br /></div><div>Si pinchamos en inspeccionar veremos una imagen similar con el siguiente disco en la cadena en sentido a llegar al fichero original .vhd. Simplemente para asegurarnos que ese .avhd es el último en la cadena cada vez que pinchamos en inspeccionar nos fijamos que aparezcan en la cadena todos los archivos que tengamos en el directorio, si nos falta alguno quiere decir que ese .avhd que nos falta es posterior al que pensábamos que era el último en la cadena. </div><div>Esto es bastante manual pero permite saber el orden de los .avhd por si no te fías de las fechas o al moverlos de volumen has perdido esa información.</div><div><br /></div><div><br /></div>Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-17013620624492996542010-08-23T17:51:00.005+02:002010-08-23T18:03:57.124+02:00Monitorización de Hosts Hyper-V Server con NagiosDesde hace bastante tiempo he estado usando Nagios para la monitorización de mis propias máquinas así como la de algunos clientes para los que trabajo. Todo ha ido perfectamente hasta que hace unos meses comenzamos a desplegar en algunos de ellos Hyper-V Server o Hyper-V Server R2.<br /><br />Esto hizo que los monitores habituales de uso de procesador así como de memoria dejaran de funcionar, despues de bastante investigación vimos que la falta de roles en estos sistemas también ha acabado con los contadores (performance counter logs) sobre todo los que dependen de las instancias "Processor" y "Memory".<br /><br />El cliente NSClient++ por defecto monitoriza el contador "\Processor(_Total)\%Processor Time" el cual como he comentado en las versiones de Hyper-V Server ha desaparecido, para darnos una visión mucho más granular sobre la monitorización del procesador (podemos ver, a nivel logico de procesador, de core, el uso por máquina virtual, etc.). En este caso deberemos monitorizar la siguiente instancia que nos dará la información que estamos buscando:<br /><br />"\Hyper-V Hypervisor Virtual Processor(_Total)\% Total Run Time"<br /><br />Con esta entrada tendremos la visibilidad que estamos buscando sobre el consumo global del procesador a nivel de Host. Para hacer que el cliente NSClient++ monitorize esa entrada WMI simplemente editaremos el fichero NSC.ini que se encuentra en el directorio donde hemos instalado el cliente. En el encontraremos una sección denominada [Check System] (y si no estuviera la añadimos) e incluiremos esta linea:<br /><br />SystemTotalProcessorTime="\Hyper-V Hypervisor Virtual Processor(_Total)\%Total Run Time"<br /><br />Reinicia el servicio, y ¡voila!. Queda la linea de la memoria pero esa la dejo para ti.<br /><br />Saludos.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com1tag:blogger.com,1999:blog-5880097051595808461.post-22941679954498364892010-08-15T19:51:00.001+02:002010-08-15T19:52:18.910+02:00Ampliación de discos VHD con Instantáneas (parte 1)<p class="MsoNormal">Nuevamente vamos a intentar retomar la disciplina de al menos semanalmente incluir un nuevo artículo en este blog. El principal motivo de la demora se debe a que el objetivo final era plasmar en este blog las incidencias atípicas o complejas que como técnico me surgían día a día y como las habíamos resuelto. Desgraciadamente en los últimos tiempos mi vida está en otros lares más que solucionar incidentes en la gestión y organización del equipo de técnicos que tengo en la empresa para la que trabajo. Bueno al lio.<o:p></o:p></p> <p class="MsoNormal">Esta vez el problema que teníamos era el siguiente, servidor virtual sobre Hyper-V (corriendo en un Windows 2008 R2)<span style="mso-spacerun:yes"> </span>con varias máquinas virtuales, una de ellas en su volumen E: se había quedado sin espacio suficiente y teníamos que ampliarlo. Utilizando el asistente de la consola de Hyper-V acometieron la ampliación del fichero VHD con éxito, todo funcionó a la perfección.<o:p></o:p></p> <p class="MsoNormal">El problema vino cuando los usuarios nos reportaron que les faltaba información entre dos fechas concretas (más o menos unos 15 días), es decir el último dato que tenían era de hace 15 días, y volvían a tener información desde el mismo día de la ampliación pero en medio no había ni un solo byte.<o:p></o:p></p> <p class="MsoNormal">Tras una pequeña investigación nos dimos cuenta que habíamos cometido un grave error de novato, vamos con la parte técnica. En Hyper-V al igual que en otros sistemas de virtualización permiten obtener instantáneas de la máquina virtual, esto implica básicamente que el sistema congela el fichero que contiene el volumen del que obtenemos la máquina virtual (.VHD en el caso de Hyper-V) y crea un nuevo disco diferencial en el que va guardando los cambios a partir de ese momento (en Hyper-V son ficheros .AVHD), si creáramos una nueva instantánea el sistema congelaría el anterior fichero diferencial y crearía un nuevo fichero diferencial (nuevo fichero .AVHD).<o:p></o:p></p> <p class="MsoNormal">El problema en las soluciones Hyper-V es que cuando ampliamos el disco hay que tener en cuenta previamente que NO TENGAS INSTANTANEAS CREADAS. Es condición imprescindible que los ficheros de disco del volumen que vas a realizar la ampliación están ya consolidados (recuerda que para consolidar los discos debes eliminar las instantáneas que existan, y apagar la máquina para que el sistema comience la consolidación de los discos).<o:p></o:p></p> <p class="MsoNormal">Nuestro problema empieza a verse claro, se realizó la ampliación del volumen sin haber eliminado si quiera las instantáneas que existían, y mucho menos haber consolidado los discos avhd con el vhd original. El sistema amplio el fichero vhd y lo puso en la máquina virtual como el nuevo disco valido, descartando de esta manera los ficheros diferenciales que existían y por tanto perdiendo los datos desde ese momento hasta la fecha en que se hizo la primera instantánea (15 días en nuestro caso).<o:p></o:p></p> <p class="MsoNormal">Ahora si te ha ocurrido algo como esto tienes un problema, si tienes un backup reciente, no es tal problema, pero si resulta que no hay backup de ese volumen y además te das cuenta varios días después del problema (aquí había un fin de semana por en medio), tienes que recuperar la información que has perdido de alguna manera, ya que en la ampliación del volumen VHD el sistema no borra los ficheros AVHD pero los desune del vhd original. Así que tu información está pero no es accesible. Dos soluciones:<o:p></o:p></p> <p class="MsoListParagraphCxSpFirst" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><span style="mso-ascii-font-family:Calibri;mso-fareast-font-family:Calibri; mso-hansi-font-family:Calibri;mso-bidi-font-family:Calibri"><span style="mso-list:Ignore">-<span style="font:7.0pt "Times New Roman""> </span></span></span>Solución 1: Deshacer los cambios y dejar el volumen como estaba incluyendo los ficheros AVHD.<o:p></o:p></p> <p class="MsoListParagraphCxSpLast" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><span style="mso-ascii-font-family:Calibri;mso-fareast-font-family:Calibri; mso-hansi-font-family:Calibri;mso-bidi-font-family:Calibri"><span style="mso-list:Ignore">-<span style="font:7.0pt "Times New Roman""> </span></span></span>Solución 2: Obtener la información que necesitamos extrayéndola de los ficheros AVHD.<o:p></o:p></p><p class="MsoListParagraphCxSpLast" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><br /></p><p class="MsoListParagraphCxSpLast" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1">fin [fin parte 1]</p>Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com1tag:blogger.com,1999:blog-5880097051595808461.post-1499981049007806372009-09-20T18:23:00.008+02:002009-09-20T22:16:46.946+02:00Espacio en disco, vhd, sabado noche, y alcohol<div style="text-align: center;"><br /></div>Siempre he pensado como escribir blogs con post a diario, y si puede ser con algo de sentido del humor pues mejor que mejor. La verdad es que no es una de mis virtudes, así que vamos a ver si al menos nos ponemos el reto de actualizar este dichoso blog una vez a la semana, algo que debería ser sencillo para un tío como yo que es animal de costumbres.<div style="text-align: center;"><br /></div><div>Siguiendo la linea de contar mis experiencias en la faceta de técnico, anoche me ocurrió algo que quizas os haya ocurrido y hayáis visto de manera sencilla como solucionar, pero a mi me imponía bastante, ya que se trataba de un problema con un sistema en producción (apagado en ese momento por el problema) el cual había que tratar con sumo cuidado, mi amigo Exchange 2007.</div><div style="text-align: center;"><br /></div><div>El problema básicamente consistía que nuestro Operations Manager me lanzó una alarma durante la tarde, diciendo que el volumen C: estaba por debajo del umbral de espacio permitido, así que nada, sesión de TS y efectivamente, 4 Gb libres en C: (es un volumen de 250Gb) y cayendo empicado. Que las máquinas se suspendieran era cuestión de minutos, así que opté por la solución de apagarlas de inmediato (ahora entenderéis por que).</div><div style="text-align: center;"><br /></div><div>El problema del espacio en C: era algo recurrente, ya había ocurrido previamente en otras ocasiones, y tenía en mente haber puesto solución, pero esta semana revisando el sistema de copias vi que curiosamente el fichero VHD de una de estas máquinas, tenía fecha fija en junio de 2009. Esto me hizo pensar, que los ficheros VHD estaban creciendo de manera desorbitada en otro lugar ya que sabía que los ficheros de las dos máquinas virtuales deberían medir 100Gb y 20Gb, y evidentemente algo estaba ocupando los 250Gb y crecía deprisa.</div><div style="text-align: center;"><br /></div><div>La primera opción fue ir a ver las instantaneas de las máquinas virtuales, pero ninguna tenía ninguna activa, dandole vueltas no podía ser nada más que eso que creciera tan deprisa, así que echamos un ojo al directorio de instantaneas por defecto "C:\ProgramData\Microsoft\Windows\Hyper-V\Snapshots", y voila, dos ficheros de 118Gb y otro de 48Gb, bien pues nada un breve vistazo a technet, y verificamos que el problema está en que solo se realiza la mezcla (merge) cuando la máquina está apagada, así que tuvimos una buena idea, es solo tema de esperar y listo.... tic tac tic tac....</div><div style="text-align: center;"><br /></div><div>tras un rato largo, llega al 29% del mezclado, y desaparece el mensaje..... ay! dios. una horrible sospecha, no será que va a necesitar espacio para hacer el merge de los ficheros vhd y avhd (los avhd son los ficheros de los snapshots). Efectivamente 0 bytes libres. Bueno tras un rato de googlear resulta que encuentro como de manera sencilla podemos mezclar un VHD con un AVHD, pero el problema es que tengo 2 y no se cual es el primero de los dos :-( (en un futuro post hablaremos como mezclar dos vhd). Así que la única opción que me va quedando es buscar más sitio.</div><div style="text-align: center;"><br /></div><div>El método es de lo más tonto, y sencillo. Exportar la máquina a un disco con espacio suficiente, borrar la máquina y los vhd, y volverla a importar en el disco con espacio. Así de simple... Como se hace, pues vamos al lio.</div><div style="text-align: center;"><br /></div><div>En la máquina que tenemos el problema elegimos la opción de exportar:</div><div style="text-align: center;"><br /></div><div><img src="http://www.juanen.com/blog/uploaded_images/export_VM_hyper-v-766525.jpg" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 168px;" border="0" alt="" /></div><div style="text-align: center;"><br /></div><div>A continuación nos solicitará donde queremos exportar la máquina virtual, este export necesita por supuesto que vaya a un disco donde tengamos espacio suficiente. Elegimos la unidad, y el sistema se encargará de en el export mover todos los archivos necesarios, de configuración, vhds, snapshots (instantaneas), etc. con la diferencia que los archivos xml de configuración serán cambiados a ".exp".</div><div><br /></div><div><img src="http://www.juanen.com/blog/uploaded_images/export_path_hyper-v-792655.jpg" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 102px;" border="0" alt="" /></div><div style="text-align: center;"><br /></div><div style="text-align: left;">Cuidado no marquéis la opción de exportar solo la configuración de la máquina virtual (Export only the virtual machine configuration) ya que entonces no exportará ni los vhd ni los avhd.</div><div style="text-align: left;"><br /></div><div style="text-align: left;">Ahora solo toca esperar, al final en el path que hemos dicho tendremos todos los datos de nuestra máquina exportados y disponibles, y la máquina original donde estaba. Es momento para borrarla y liberar el espacio. Una vez borrada desde la opción importar de Hyper-V vamos a volver a recuperar nuestra máquina. Ojo, antes de importarla pongamos los ficheros de toda la máquina donde queramos que se quede, por ejemplo yo use para exportar el path "v:\vms\export" y no me gusta que la máquina en producción se quede así, algo mejor como "V:\VMs", así que mueve los ficheros, y vamos al importar.</div><div style="text-align: center;"><br /></div><img src="http://www.juanen.com/blog/uploaded_images/import_VM_hyper-v-756361.jpg" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 151px;" border="0" alt="" /><div style="text-align: center;"><br /></div><div style="text-align: left;">A continuación nos solicitará el path donde están los archivos, ojo por que lo que nos está pidiendo es el directorio donde están los archivos de la máquina virtual, por ejemplo, si no movimos la máquina de directorio, y la exportamos a "V:\VMs\export" lo que tendremos que elegir es el directorio "V:\VMs\export\MAQUINA".</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><img src="http://www.juanen.com/blog/uploaded_images/import_path_hyper-v-783598.jpg" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 134px;" border="0" alt="" /></div><div style="text-align: left;">En las opciones de importar hay varios temas importantes que detallo:</div><div style="text-align: left;"><br /></div><div style="text-align: left;">- Mantener el GUID, si no hemos borrado la máquina original y es el mismo host en el que importamos, es importante que genere un nuevo GUID por que sino tendremos problemas. No importa que las máquinas se llamen igual se diferencian por el GUID no por el nombre. (Off-Topic: esto funciona y se ve perfectamente en el complemento de Hyper-V sin embargo en el System Center VMM si las máquinas se llaman igual no es capaz de mostrarlas, tendrás que ir al complemento de Hyper-V y renombrar una de ellas que en el si verás las dos).</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;">- El directorio que importemos tenía unos ficheros .exp con los datos de la exportación, al importar estos son convertidos a ficheros de configuración .xml y ya no se podrá volver a importar esa máquina del directorio.</div><div style="text-align: left;"><br /></div><div style="text-align: left;">- Probablemente (bueno seguro) perderás la configuración de la/s tarjetas de red, así que si quieres que todo vaya bien, antes de arrancar la máquina entra en la configuración y vuelve a configurarlas en la máquina virtual (si es el mismo host, arrancará según las configures perfectamente)</div><div style="text-align: left;"><br /></div><div style="text-align: left;">- Y si eres como yo y tu objetivo final es que los discos se mezclen (merge) entonces deberás dejar la máquina apagada :-)</div><div style="text-align: left;"><br /></div><div style="text-align: left;">A disfrutar.</div>Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-9619042980366587682009-08-12T13:38:00.007+02:002009-08-12T14:02:45.822+02:00Actualización firmware HTC Advantage x7510Hace bastante tiempo que no posteo en este blog, y hoy he tenido que verificar si es posible la actualización de esta máquina, la HTC Advantage x7510 de un firmware original a un firmware identico pero en castellano.<div><br /></div><div>Antes de empezar señalar que este método es solamente para propositos educativos, y que el uso del mismo es totalmente ilegal ya que si no disponeis de la licencia en castellano, el uso de otro firmware diferente al que te ha sido entregado con la máquina original es ilegal, es una de las restricciones que tiene la licencia, así que tu mismo. Por supuesto tu garantía queda 100% inutilizada.</div><div><br /></div><div>------------------------------------------------</div><div>Vuelta atras, si por algún motivo necesitaras volver atras puedes hacerlo sin dejar demasiado rastro, para ello necesitas deshacer los pasos aquí hecho, re-flasheando el firmware original del que deberías haber hecho copia, y luego reinstalando el SPL original, en el post de <i>cmonex </i>tienes los enlaces para descargar el SPL original, y algunos firmwares también originales.</div><div><br /></div><div>Espero que te sirva.</div><div>Saludos.</div><div><br /></div><div>-------------------------------</div><div>Lo primero que tenemos que verificar son los siguientes puntos:</div><div><br /></div><div>- PC con XP o Vista, y 1 puerto USB 1.1 o superior.</div><div>- Permisos de administrador para ejecutar las aplicaciones.</div><div>- Si tienes vista bajate el último Mobile Center de Microsoft y actualiza tu equipo, el mobile center última versión está <a href="http://www.microsoft.com/windowsmobile/en-us/help/synchronize/device-center.mspx">aquí</a>.</div><div>- La HTC debe tener al menos el 50% de la batería cargada.</div><div><br /></div><div>Con todos estos integrantes, vas a necesitar dos actualizaciones para la HTC, lo primero será lo que se denomina "Hard-SPL", digamos que es el encargado de cargar el sistema operativo, y este viene "capado" para que solo puedas actualizar el sistema operativo para el que tienes comprada la HTC (misma versión, mismo idioma, fabricante, etc.). Puedes descargar una versión de "<i>cmonex</i>" que funciona con las HTC que se han comercializado en españa. tienes una versión <a href="http://forum.xda-developers.com/attachment.php?attachmentid=126621&d=1225597822">aquí</a>. </div><div><br /></div><div>Por último y para acabar con las herramientas que necesitamos por ahora necdesitas el firmware que vas a instalar, por ejemplo si tu objetivo es instalar el firmware de Windows Mobile 6.1 en Castellano, puedes descargar una versión modificada denominada WWE de <a href="http://rapidshare.com/files/192023317/x7510_xTep_1.01_WWE.rar">aquí </a>o la versión ESN de <a href="http://rapidshare.com/files/191999923/x7510_xTep_1.01_ESN.rar">aquí</a>.</div><div><br /></div><div>Bien, ya tienes todo, te recomiendo que también te descargues las itsutils que te permitirán hacer una copia de seguridad del firmware de tu HTC, pero eso queda para otro post. Las herramientas las tienes <a href="http://nah6.com/~itsme/itsutilsbin-20090515.zip">aquí</a>.</div><div><br /></div><div><br /></div><div>Vale, vamos al lio, lo primero es verificar que la HTC la tienes conectada con tu ActiveSync o con el Mobile Center, para probarlo lo mejor es abrir el explorador y ver que puedes navegar por las carpetas de la HTC, esto no lo voy a explicar aquí, si quieres modificar el firmware tienes que saber hacer eso ;-). Si esto te funciona y te has bajado las itsutils puedes ejecutar desde la linea de comandos el comando "pdocread.exe -l" el cual te dará un listado y de las diferentes areas del firmware, es importante verificar que no hay errores.</div><div><br /></div><div>Si hasta aquí todo va correcto, es momento de modificar el SPL, por defecto la versión que traen las HTC es la versión 3.05.000, para ello descomprime el software que descargaste, y ejecuta el comando x7510_HSPL365.exe, arrancará un wizard, leelo con atención, y avanza hasta el final. Aseguraté que la PDA tiene batería suficiente antes de empezar, y por supuesto que tu equipo informático (sobre todo si es portatil) no se apaga, suspende, etc. El proceso de actualizar el SPL viene a durar 1 minuto no mucho más, verás como la HTC se reinicia al iniciar el proceso a una pantalla llena de colorines, y luego aparece una barra de progreso que se llenará hasta el 100%.</div><div><br /></div><div>Una vez terminado, reiniciará la máquina, y verás que no hay diferencias significativas más alla del cambio de número de version del SPL. Deja que arranque completamente la HTC hasta la pantalla "<i>Today</i>", y vuelve a asegurarte que tienes batería, más de un 50%.</div><div><br /></div><div>Ahora si vamos a modificar el windows mobile por la versión que deseemos, cogemos el paquete que hayamos descargado y nuevamente ejecutamos el .exe de actualización, en nuestro ejemplo lo que buscamos es actualizar al idioma actual y nos hemos bajado el paquete de xtep que incluye windows mobile 6.1 (igual que el que traia) pero una versión en castellano, por lo que ejecutamos el actualizador de la versión ESN que se llama x7510Wrapper.exe. El proceso es similar a la actualización del SPL, pero en esta ocasión nos llevará aproximadamente 8 minutos, nuevamente insisto en las precauciones habituales (batería, no apagar, cables, etc.).</div><div><br /></div><div>Una vez finalizada esta actualización el sistema se reinicia, y esta vez tardará un poco más de lo normal en arrancar, ya que instala el nuevo firmware con la pantall en negro bastante rato. Cuando arranqueis la primera vez estará como cuando sacada de la caja, toda la información se habrá perdido completamente. Y hemos terminado... configura tu HTC y disfruta.</div><div><br /></div><div>---------------</div><div><span class="Apple-style-span" style="font-size: x-small;">Fuentes:</span></div><div><span class="Apple-style-span" style="font-size: x-small;">Backup HTC: </span><a href="http://forum.xda-developers.com/showthread.php?t=334680"><span class="Apple-style-span" style="font-size: x-small;">http://forum.xda-developers.com/showthread.php?t=334680</span></a></div><div><span class="Apple-style-span" style="font-size: x-small;">Firmware modificado Español: </span><a href="http://forum.xda-developers.com/showthread.php?t=475780"><span class="Apple-style-span" style="font-size: x-small;">http://forum.xda-developers.com/showthread.php?t=475780</span></a></div><div><span class="Apple-style-span" style="font-size: x-small;">SPL modificado: </span><a href="http://forum.xda-developers.com/showthread.php?t=441684"><span class="Apple-style-span" style="font-size: x-small;">http://forum.xda-developers.com/showthread.php?t=441684</span></a></div><div><span class="Apple-style-span" style="font-size: x-small;"><br /></span></div><div><span class="Apple-style-span" style="font-size: x-small;">Agradecimiento por la info y todo el merito para xda-developers, en especial a xtep, y cmonex.</span></div><div><br /></div><div><br /></div>Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-79823822317788080892008-12-24T00:13:00.001+01:002008-12-24T00:13:21.785+01:00Licenciamiento y Software Original<p>El licenciamiento de productos de software es algo así como los costes de los CDs de música o los DVD de vídeo. La gente tenemos una curiosa teoría por la que la cultura debería ser gratuita y de amplio acceso a todo el mundo, y en parte tienen razón, la cultura es una de las grandezas del ser humano que nos diferencia de los animales (bueno y no a todo el mundo). Pero también es cierto que la cultura la tiene que producir alguien, al cual le gusta comer, beber, vivir, etc. todos los días exactamente igual que a nosotros. Pero es que además la cultura es un bien prescindible, incluso me atrevería a decir que en ciertos aspectos es un lujo. Lo que quiero decir con esto es que el acceso a música, o películas, o series, etc. son temas totalmente superfluos por los que deberíamos entender que quien invierte su tiempo, talento, y recursos en producir ese bien quiere ganar algún dinero, pocos son los artistas que no tienen un ingreso adicional y quieren regalar su trabajo. Si no estamos dispuestos a pagar por ello es que no lo necesitamos, y mucho peor no lo valoramos. No vamos a entrar en discusiones del tipo y si luego no me gusta, y si es malo?, hoy en día tenemos múltiples maneras de ver, oír, o probar el producto antes de comprarlo.</p> <p>Ahora tras esta introducción, la vamos a convertir en lo que el software es a la empresa privada, es un bien que es producido por personas a las que les gusta comer, beber, vivir, etc. es un bien que en el caso de una empresa SI es necesario, es imprescindible hoy en día, podríamos encontrar la justificación que es un bien necesario no como la música ya que sino mi empresa no funciona, Vd. puede pasar sin oír música o sin ver una película, pero yo sin mi Office no puedo trabajar. Correcto, estoy de acuerdo contigo. Pero...</p> <p>Si la conclusión a la que tu mismo llegas es que es una herramienta imprescindible para tu trabajo, por que no estás dispuesto a pagar por ello, por que la electricidad es imprescindible para tu trabajo, y no puenteas el cable de luz en el transformador de la distribuidora. O los picos que usan tus operarios son necesarios para su trabajo, y no te planteas ir a la ferretería y decirle oyes véndeme un pico y te robo otros 49 picos, joer no voy a pagar por 50 no?, si me preguntan ya enseño la factura de un pico.. es muy sorprendente que no nos planteemos esto con el software.</p> <p>El software es una herramienta más dentro de tu empresa, igual que una excavadora, una mesa, o el paquete de folios de la fotocopiadora. Por que cuando haces tu plan de negocio, o cuando calculas cuanto cobrar por tus servicios, igual que incluyes el coste de personal, servicios, etc. no incluyes el coste del software que es IMPRESCINDIBLE para tu día a día.</p> <p>La excusa, es que es muy caro. Si por supuesto, también lo hay más barato, incluso gratuito (si, si, para cualquier solución existe una alternativa gratuita, si, incluido tu ERP). El software vale lo que vale, cuando compras una máquina de imprimir, no le cuestionas al tio por que vale 600.000€, o cuando compras un coche para tu comercial no le dices al concesionario, joer, 18.000€ de coche, al contrario, lo asumes, inicias un plan de amortización y lo incluyes en tu actividad diaria. El software es lo mismo, es una herramienta sin la que tu día a día no sería posible.</p> <p>Como he dicho existe software libre, pero haz una prueba muy simple, en tu próxima entrevista a por ejemplo un perfil comercial o administrativo, pregúntales, ¿usa Vd. office?, ¿sabe Vd. usar Open Office?. Cuanto cuesta Microsoft Office, 400€ la suite más amplia (no la más alta de gama), uy que caro por cada empleado madre mía, bien eso son 10€/mes/empleado en 3 años, crees de verdad que es caro?, ahora pregunta cuanto cuesta un curso de OpenOffice, 200/300€/empleado, más las 40 horas de empleado en el curso, estamos hablando de cerca de 1.000€ de coste, sin añadir la falta de experiencia que no podemos valorar.  ¿Realmente crees que la licencia es tan cara?...</p> <p>Piénsalo un poco, el software es una herramienta imprescindible para tu trabajo, y como tal deberás comprarla.</p> Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-28928023034415704332008-11-15T17:28:00.004+01:002008-11-15T17:48:42.273+01:00Sistemas virtualizados<div>Bueno, comenzaremos planteando algunos cambios que me obligan a este post. La empresa para la que vengo trabajando desde hace algún tiempo deja de existir durante este mes de Noviembre para incorporarse en un proyecto más ambicioso, pero como este blog no trata de mi anterior empresa, vamos al lio.</div><br /><div></div><br /><div>Dentro del nuevo proyecto, soy el responsable de la gestión y administración de los recursos IT internos a la compañía. Como en toda buena integración o migración de compañías es imposible que todo esté en la fecha que marcan los jefes, y entre otras cosas algo que no tenemos operativo a día de hoy (Sabado 15 de Noviembre) son las máquinas nuevas que soportarán la infraestructura. Esto implicaría el retraso de la mudanza con los costes añadidos que eso lleva, el trastorno para los clientes, los empleados, etc. Por ello hemos decidido tomar una decisión de emergencia y es "Virtualicemos".</div><br /><div></div><br /><div>Por que hemos decidido virtualizar, la respuesta es sencilla, por que tenemos máquinas para ello :-), no, la realidad es que el virtualizar nos permite experimentar en un entorno en producción real (aunque ya teníamos alguna experiencia previa) el manejo de los sistemas virtuales, y por otro lado nos permite que una vez que tengamos aquí las máquinas físicas reales, de una manera extremadamente sencilla podrémos migrar las máquinas virtuales a las reales como máquinas virtuales.</div><br /><div></div><br /><div>Como resumen de las ventajas:</div><br /><div>- Funcionamiento en fechas.</div><br /><div>- Puesta en marcha de la infraestucutra necesaria abstrayendola del hardware.</div><br /><div>- Movimiento de máquinas virtuales de la infraestructura temporal a definitiva en minutos.</div><br /><div>- Desde el minuto 0 tenemos un laboratorio de pruebas y muestra para clientes.</div><br /><div>- Adquisición de conocimientos y experiencia en nuevos entornos y herramientas de MS.</div><br /><div>- Posibilidad de ensayo/error muy sencillo (tiras la máquina y levantas una nueva).</div><br /><div></div><br /><div>Toda la infraestructura ha sido montada sobre dos máquinas que detallo a continuación:</div><br /><div>- [VM01] Clonico con placa Gigabyte P48SX, micro Dual Core E660, 8Gb de memoria DDR2/667, 4 discos SATA, 2 RAID1, y 2 de 500Gb para almacenar los VHD y datos.</div><br /><div>- [VM02] Proliant ML110G4 (si, si, lo se), 4Gb de memoria (hemos intentado meter 8Gb pero imposible, si todos los módulos son iguales), micro XEON a 1,8Ghz, y un disco de 146Gb SATA (suficiente para almacenar dos 2008 core con roles de dns, dhcp, iis, y poco mas).</div><br /><div></div><br /><div>El software que estamos utilizando para virtualizar es Hyper-V RTM, en el VM01 tenemos un 2008 x64 Enterprise, con el Rol de Hyper-V instalado y System Center Virtual Machine Manager 2008. En el VM02 tenemos Windows 2008 Hyper-V Edition (es gratis!).</div><br /><div></div><br /><div>Utilizamos SCVMM08 para toda la gestión de la infraestrucutra, y la verdad es que funciona de manera espectacular, no como la beta que madre mia que castigo, mantenemos las librerías con diferentes máquinas en diferentes combinaciones, así como las ISOs de los productos que tenemos que instalar de manera centralizada, no nos tenemos que preocupar de copiar o mover archivos, o estampar ISOs, SCVMM08 se encarga de toda esa gestión, es un producto muy espectacular.</div><div> </div><br /><div></div><img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://www.juanen.com/blog/uploaded_images/IMG_0312-727077.JPG" border="0" /><br /><div></div><br /><div></div><br /><div>Bueno como muestra, os dejo simplemente una foto de donde estamos montando los cacharritos para que os murais de envidia, vosotros en casa durmiendo la siesta y otros aqui disfrutando como cosacos con mi amigo el Hyper-V ;-)</div>Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-55430778694186805932008-09-26T16:56:00.004+02:002008-09-26T17:09:32.850+02:00PROBLEMAS CON NTBACKUP Y LAS INSTANTANEAS<div><div>Cualquier administrador de sistemas sobre Windows 2003 conoce los problemas que tiene basar la política de copias de seguridad en la herramienta NTBACKUP. Al igual que comentaba en el anterior articulo las carencias de la herramienta de gestión de Microsoft Exchange, lo mismo pasa con NTBackup que te obliga a comprar un software decente de copias de seguridad si realmente quieres garantizarte que todo funciona correctamente. </div><div> </div><div>Es muy habitual encontrarte con un problema al utilizar NTBACKUP y es que al hacer la copia (crítica por otro lado) del "System State" de Windows 2003 obtengas un error como el siguiente:</div><div><br /><br /></div><div></div><img style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.juanen.com/blog/uploaded_images/errorNTBACKUPyVSS-792356.jpg" border="0" /><br /><div>Este error en principio un poco críptico viene seguido de este otro evento, que da algo más de información y claramente nos lleva a pensar a un problema con la base de datos MSDE SQL Server:</div><div> </div><div><img style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.juanen.com/blog/uploaded_images/errorNTBACKUPyVSS_6008-772080.jpg" border="0" /></div><br /><br /><div>Bien, este es un problema conocido cuando has instalado una versión runtime de SQL Server puede ocasionar que la librería SQLVDI.DLL se "des-registre" provocando que todo el sistema de instantaneas de volumen falle, incluida la copia del System State que se apoya en estas.</div><br /><div>La solución es extremadamente sencilla, simplemente iendo a "Archivos de Programa\Microsoft SQL Server\80\COM" y ejecutando "REGSVR32 SQLDVI.DLL" quedará solucionado el problema. </div><div> </div><div>Problema complejo (o raro) para una solución extremadamente sencilla. Si queréis más detalles técnicos aquí están:</div><br /><div><cite>http://support.<b>microsoft</b>.com/kb/<b>830575</b></cite><br /></div><br /><div>Saludos.</div></div>Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-14902770370340113882008-09-24T22:56:00.002+02:002008-09-24T23:11:30.067+02:00Gestión de colas en Exchange<div>Un problema con el que os habréis encontrado en multiples ocasiones, sobre todo si tratáis con diversos clientes, es la gestión de las colas de correo en diferentes sistemas. En particular hoy voy a hablar de Exchange que es con el que más me toca pelear últimamente.</div><br /><div>Desde hace unos meses hacía aquí es bastante habitual que algún simpaticon te bombardee tu servidor SMTP con millones de correos con un mismo origen hacía todo tipo de combinaciones dentro de tu dominio, es decir hacía: <a href="mailto:a@midominio.com">a@midominio.com</a>, <a href="mailto:ab@midominio.com">ab@midominio.com</a>, <a href="mailto:abc@midominio.con">abc@midominio.con</a>, etc. hasta dar con todos los posibles destinatarios.</div><br /><div></div><br /><div>Borrar esa cantidad ingente de correos (yo suelo encontrarme con entre 15.000 y 20.000 en muchas máquinas) es una tarea dificil, sobre todo cuando los destinos son múltiples dominios, ya que como sabéis Exchange la gestión de colas te la separa por dominio de destino de correo:</div><br /><div></div><div><img style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.juanen.com/blog/uploaded_images/colaExchange-751617.jpg" border="0" /></div><div> </div><div>Y claro, cuando tienes 16.000 correos, a 2-5 correos por cola, pues puedes imaginarte, una locura borrar todo ese correo.</div><div> </div><div>Siempre tenemos algún amigo simpaticon que se ha currado una herramienta que te hace la vida más facil, y que normalmente pierdes horas trabajando por no echar un minuto en buscarla, así que aquí va la herramienta definitiva para los administradores que nos permite gestionar desde la linea de comandos las colas de exchange:</div><div> </div><div><a href="ftp://ftp.microsoft.com/pss/Tools/Exchange%20Support%20Tools/Aqadmcli/">ftp.microsoft.com/pss/Tools/Exchange%20Support%20Tools/Aqadmcli/</a></div><div> </div><div>Viene a ser algo así como: "Advanced Queue Administration Client", es un sencillo interfaz de lineas de comandos, muy potente y que te permite hacer mil diabluras en las colas de correo de tu Exchange 2000/2003 (en 2007 habla con tu amigo la PowerShell). Para el ejemplo que pongo si deseamos borrar los 16.000 correos con origen <a href="mailto:ebay@ebay.it">ebay@ebay.it</a> (como te pille te mato, como odio a los spammers), tendríamos un comando de este tipo:</div><div> </div><div><em>delmsg flags=SENDER,sender=yo@midominio.com</em> </div><div> </div><div>con esto borraríamos todo los mensajes de origen <a href="mailto:yo@midominio.com">yo@midominio.com</a>, si por el contrario queremos borrar la cola completa pues más sencillo:</div><div> </div><div><em>delmsg flags=ALL</em> </div><div> </div><div>Como he dicho una herramienta muy potente y muy versatil desde la linea de comandos.</div><div> </div><div>A disfrutarla. Saludos.</div>Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com5tag:blogger.com,1999:blog-5880097051595808461.post-66125606878624641412008-08-18T23:52:00.002+02:002008-08-19T00:01:08.583+02:00Hacia la certificaciónHan sido dos años de dimes y diretes, y parece que el horizonte de la certificación como MCSA está proximo (espero que en un par de semanas a lo sumo). La verdad es que cuando empiezas parece que hay un largo recorrido por delante y efectivamente así es. Pero cuando te pones en serio a trabajar sobre ello realmente no es tan complicado como puede parecer en un primer<br />momento.<br /><br />La premisa básica para obterner la certificación a mi modo de ver es tener una amplia experiencia manejando los sistemas en los que quieres tener ese nivel de experto, esa experiencia yo me atrevería a decir que es un 60%-70% del aprobado, ya que esa es la cantidad de pregutnas que tendrás en el examen que con la experiencia y un poco de cabeza puedes contestar sin problemas. ¿Por que digo un poco de cabeza?, sencillo, muchos de nosotros que trabajamos o venimos de trabajar en PYMES o para ellas, manejamos infraestructuras pequeñas, de entre 2 y 10 servidores, y hasta unos 70-100 equipos clientes, con como mucho 5 delegaciones. Muchas de las cuestiones que se presentan en las certificaciones sobre todo para MCSA y MCSE se refieren a grandes corporaciones, en las que la infraestructura suele ser miles de equipos, decenas de servidores, y multiples "branch offices", pero al final la solución es la misma para 2 servidores que para 100, solo con un pelin de lógica se sabe la respuesta (y experiencia por supuesto).<br /><br />Queda un 30-40% de respuestas para las que debes estudiar y debes estudiar duro, primero con los "Self-Paced" de Microsoft que son de muy alta calidad (olvidate de los MOC y de los cursos presenciales, me he gastado una fortuna y aun no conozco ningun curso presencial bueno). En segundo lugar utiliza test de prueba como los de Mesasure-Up o Testking (los de última generación) que simulan los examenes a la perfección sin hacer las trampas de copiar las preguntas literales del examen.<br /><br />Mi próximo reto es el 70-620, o lo que es lo mismo "Configurando Windows Vista" el cual la verdad tengo muchas esperanzas ya que realmente el estudio al menos me está resultando extremadamente sencillo, ya que en el libro no hay prácticamente nada que no haya visto en mi día a día de uso del Vista desde hace casi un año, como digo el 70% del examen lo tengo del día a día, un 30% me falta de caracterisitcas que nunca he usado (y posiblemente ni yo ni mis clientes usen jamas) o cuestiones que Microsoft decide que se han de hacer de determinada manera por que ellos creen que esa es la mejor.<br /><br />Bueno simplemente desearme suerte, y espero a vuelta de fin de semana añadir este examen al curriculum... el siguiente... la próxima semana.<br /><br />Animaros y estudiar, cualquier pregunta o curiosidad que no viole el AUP del examen, estoy a vuestra disposición.<br /><br />Saludos.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com2tag:blogger.com,1999:blog-5880097051595808461.post-53462574073031554512008-06-25T18:43:00.003+02:002008-06-25T18:53:40.597+02:00Sharepoint y Reporting ServicesHay un problema conocido en Office Sharepoint Server 2007 (sharepoint 3.0 no lo soporta) en integrar Reporting Services si además estás utilizando autenticación por formularios, por el que si el acceso a tu sitio lo realizas por cualquier URL que no sea la "Predeterminada" o "Default" da un error de Seguridad el servicio de Reporting Services en modo integrado.<br /><br />Según MSDN simplemente lo único que debes hacer es que los Reportes del servicio de RS se haga por la URL predeterminada, pero claro si tu quieres tener diferentes URLs (como tiene el 90% de la gente) para permitir accesos desde la intranet o desde la extranet no es posible.<br /><br />Bien obviando este inconveniente que espero que solucionen con el SP3 de SQL Server, hoy nos hemos encontrado con un problema en un cliente en el que al hacer el cambio, y poner la url como predeterminada el Reporting ha dejado de funcionar, no da el error de seguridad pero nos informa de que el servicio de Reporting Services no está instalado o bien configurado.<br /><br />Ha sido una pequeña lucha, ya que además es una granja quien soporta este sharepoint con 1 Backend corriendo SQL Server, y (actualmente) un frontend soportando el acceso de los clientes. El problema se agravaba ya que este cambio lo habíamos realizado con anterioridad en otros entornos y había funcionado sin problemas, pero en este caso fallaba.<br /><br />Una pequeña pensada sobre la evolución del sistema, nos llevo a ver que problemas sufrimos durante la implementación, y uno de los mayores problemas que hemos tenido siempre, ha sido con la resolución de nombres, de hecho durante la implementación hemos tenido que tirar del fichero HOSTS en multiples ocasiones (el cliente no nos dejaba tocar su DNS). Esto nos llevo a intentar hacer un ping a las URL de los frontend desde el mismo frontend para descubrir que no resolvía el nombre (si el XP que usabamos el cliente), inmediatamente tras resolver este problema, el sistema comenzo a funcionar perfectamente.<br /><br />Previamente ya tuvimos algunos problemas sobre la "llegada" de los frontend hacía los servidores de SQL server justamente por la resolución de nombres.<br /><br />Por ello, es extremadamente importante que cuando implementes una solución de Sharepoint (aunque sea sencilla) tengas claro que nombes de host utilizarás, interna y externamente y que tengas claro que los DNS van a resolver adecuadamente las IPs internas, externas, etc. Technet tiene documentación sobre la planificación de este aspecto muy detallada, te ahorrarás muchisimo trabajo.<br /><br />Cualquier comentario es bienvenido.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-42637887601269174272008-05-30T13:17:00.002+02:002008-05-30T13:23:29.220+02:00Y essooooo... digo y otroooooo...70-Bueno, ha sido duro, han sido pocas horas de sueño esta última semana, pero al final hemos pasado. El 70-291 ya está en mi bolsillo. Cuando empece a estudiar el "Self Paced" del 70-291 comence con muchisimo animo ya que era eminentemente un tema de redes que la verdad creo que me manejo bastente bien, DHCP, DNS, rutas, etc. Pero la verdad es que cuando te metes un poco en profundidad la cosa se complica, el apartado sobre todo de solución de problemas (throubleshot) es bastante complejo, ya que muchas operaciones que tu sueles hacer de una determinada maner, Microsoft decide que es mejor de otra manera (por ejemplo, yo no restauraría jamas un servidor DHCP como dice microsoft, también es cierto que no manejo redes de miles de computadoras).<br /><br />Bueno mi recomendación es que te atrevas con este examen, con el apoyo del libro se simplifica, pero también es cierto que es interesante sobre todo que vayas con un poco de práctica en los apartados de IPSec y protocolos de encriptación, CHAP, EAP, etc. (aunque de estos a mi no me cayo ninguna, dios me van a echar por revelar información).<br /><br />Si te animas, aquí me tienes para cualquier duda.Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0tag:blogger.com,1999:blog-5880097051595808461.post-56648137137358726422008-05-18T23:16:00.002+02:002008-05-18T23:30:44.760+02:00Exchange y antivirus para cliente (desktop pc)Esta vez el problema ha sido de rápida solución, aunque es el típico problema que yo denominaría (al igual que hacía un profe mio de matemáticas) de idea feliz.<br />La cosa comenzó un Miercoles por la tarde, en que un amigo me pidio que le echara un ojo a su exchange ya que llevaba un par de días volviendose loco con el ya que había conseguido que levantara en varias ocasiones pero la mayor parte del tiempo estaba caido sin funcionar, y esto le estaba causando un gran trastorno en su cliente por que más de 50 personas estaban sin servicio de correo.<br />Puestos manos a la obra, diagnosticamos de manera rápida que el problema estaba en la propia máquina de Exchange, ya que los DNS, firewalls, sistemas anti-spam/antivirus frontales estaban operando correctamente, y sin embargo el servicio SMTP del Exchange no estaba levantado. Un siguiente vistazo también nos mostró de manera rápida que las bases de datos de Exchange (publica y de buzones) no estaban tampoco montadas, click con botón derecho montar, pero sin exito, por lo que nos vamos a ver que dice nuestro gran amigo el visor de sucesos.<br /><br />La verdad es que esta vez el "Event Viewer" no daba gran información, pero si me llamo la atención un evento de la controladora SCSI que tiene la máquina en la que trabajamos (HP/Compaq con una SCSI y un RAID5 para almacenar datos) en que reportaba un disco fallando, un vistazo a la máquina física nos muestra que el disco 1 del RAID esta marcado como en fallo. Esto nos aclara un primer problema, el Exchange no es capaz de montar las bases de datos, ya que no es que estén corruptas (el RAID5 las preserva) sino que el tiempo que tarda de acceso a las bases de datos es gigantesco y Exchange se cansa de esperar. Por lo que tomamos la decisión de mover las bases de datos a una unidad a parte de este RAID5 en que tenemos espacio suficiente, sin tolerancia a fallos, pero es una emergencia hasta que llegue el disco sustituto. Para que os hagáis una idea, el almacen de buzones ocupa 6,7Gb y tardo aproximadamente 25 minutos en mover ese archivo al nuevo disco temporal, lo que explica que Exchange y por ende el conector SMTP se aburrieran de esperar y no montaran los almacenes y el conector SMTP no funcionara.<br />Bien, movemos los almacenes (45 minutos despues) montamos los almacenes, y perfecto a la primera, problema solucionado...o no....<br /><br />Evidentemente el primer problema, está solucionado pero el servicio sigue sin funcionar, el servicio anti-spam no es capaz de entregar el correo al Exchange, sin embargo el Exchange si es capaz de sacarlo hacia fuera, y OWA y los Outlook funcionan correctamente. Bien, echemos un vistazo al puerto 25 a ver que pasa. Hacemos un telnet a la ip publica del la máquina Exchange, y nada, timeout (y el servicio está corriendo), hacemos un telnet a localhost al puerto 25 y ahi está nuestro Exchange perfectamente, recibe correo, pero evidentemente no nos sirve, nadie podrá llegar a localhost desde fuera que es lo que necesitamos.<br /><br />Venga, algo se ha quedado tonto, reiniciamos la máquina a ver que pasa. Idem. Vale, a esa IP le ocurre algo extraño, pero curiosamente el resto de servicios funciona sin problemas, IIS, etc. Añadimos una segunda IP y ocurre lo mismo, no hay forma de conectar con el servicio, solo con localhost. Tras una charla con el amigo que pidió la ayuda descubrimos que esto es algo que había pasado previamente y había desaparecido de manera misteriosa. Pues bien, en ese momento aparece la "idea feliz", ya está, el antivirus....<br /><br />Hay algunos antivirus, como en este caso el McAfee instalado, que reconfiguran el Outlook o el cliente de correo que tengamos para que sean los propios antivirus los que escuchen en el puerto 25 y todo lo que salga por ahi sea revisado por el propio antivirus. Aquí lo que estaba ocurriendo es que cuando el McAfee arrancaba antes que el servicio SMTP de Exchange ocupaba el puerto 25 haciendo que el servicio SMTP no pueda "bindearse" a las IPs públicas de la máquina que el ocupaba. Desinstalando McAfee...funcionando a la perfección.<br /><br />Moraleja, jamas, jamas, jamas, instales un antivirus de cliente en un servidor, y si instalas un antivirus de los que se venden de servidor de ficheros, asegurate que solo escanea los ficheros que debe, si quieres un antivirus para Exchange hay soluciones muy buenas expresas para Exchange, por eso suelen añadirle al nombre del antivirus al final "for Microsoft Exchange"Juan E. Gómezhttp://www.blogger.com/profile/16980742856808079975noreply@blogger.com0