cesnavarra 2008-boletín 6

28
Título Integración de Silverlight BluePrint con Sharepoint Texto A comienzos de este año Microsoft liberalizó Silverlight BluePrint, un conjunto de ejemplos y recursos sobre el uso de la tecnología Silverlight en SharePoint. Estos ejemplos, que se pueden descargar desde la página http://www.ssblueprints.net/sharepoint/, contienen además de las propias aplicaciones el código fuente de las mismas, documentación y videos explicativos. Aunque son numerosas las páginas que mencionan este paquete de software y servicios, ninguna explica claramente cómo integrar dichos ejemplos en nuestra aplicación SharePoint. Viendo esta necesidad he decidido realizar una sencilla explicación sobre cómo integrar estos ejemplos y cualquier otra aplicación básica de Silverlight con SharePoint. Para ello nos centraremos en el caso más sencillo que se trata de una WebPart en la que aparece el típico mensaje de “Hello World” interactivo. Lo primero que tenemos que hacer es instalar el plugin de Silverlight en nuestro servidor. Tras descargarnos la carpeta “.zip”, con todos los archivos de la aplicación, de la página mencionada anteriormente, lo primero que hacemos es ejecutar el instalador “Setup.exe” en el servidor, y si todo se realiza con normalidad nos aparecerá la pantalla que se ve en la Figura1. Si nos da algún tipo de error, debemos asegurarnos de que el servicio de Windows SharePoint Administration está arrancado. Para ello abrimosHerramientas administrativas > Servicios y lo comprobamos. Si no está funcionando, deberemos arrancarlo.

Upload: cein

Post on 03-Jul-2015

692 views

Category:

Documents


0 download

DESCRIPTION

respuesta digital

TRANSCRIPT

Page 1: Cesnavarra 2008-boletín 6

Título Integración de Silverlight BluePrint con Sharepoint

Texto A comienzos de este año Microsoft liberalizó Silverlight BluePrint,

un conjunto de ejemplos y recursos sobre el uso de la tecnología

Silverlight en SharePoint. Estos ejemplos, que se pueden

descargar desde la

página http://www.ssblueprints.net/sharepoint/, contienen además

de las propias aplicaciones el código fuente de las mismas,

documentación y videos explicativos.

Aunque son numerosas las páginas que mencionan este paquete

de software y servicios, ninguna explica claramente cómo integrar

dichos ejemplos en nuestra aplicación SharePoint. Viendo esta

necesidad he decidido realizar una sencilla explicación sobre cómo

integrar estos ejemplos y cualquier otra aplicación básica de

Silverlight con SharePoint. Para ello nos centraremos en el caso

más sencillo que se trata de una WebPart en la que aparece el

típico mensaje de “Hello World” interactivo.

Lo primero que tenemos que hacer es instalar el plugin de

Silverlight en nuestro servidor. Tras descargarnos la carpeta “.zip”,

con todos los archivos de la aplicación, de la página mencionada

anteriormente, lo primero que hacemos es ejecutar el instalador

“Setup.exe” en el servidor, y si todo se realiza con normalidad nos

aparecerá la pantalla que se ve en la Figura1.

Si nos da algún tipo de error, debemos asegurarnos de que el

servicio de Windows SharePoint Administration está arrancado.

Para ello abrimosHerramientas administrativas > Servicios y lo

comprobamos. Si no está funcionando, deberemos arrancarlo.

Page 2: Cesnavarra 2008-boletín 6

Figura1

Para comprobar que todo se está realizando correctamente,

abrimos el Internet Information Services Manager, y comprobamos

si se ha copiado la carpeta ClientBin de nuestra aplicación y si

tenemos en ella los archivos HelloSilverlight10.js y

HelloSilverlight10.xaml.

Page 3: Cesnavarra 2008-boletín 6

Figura2

El siguiente paso es activar la aplicación para que se pueda

implementar con SharePoint. Para ello, si contamos con permisos

de Administrador, desde la página de nuestro sitio SharePoint raíz,

pinchamos en la pestaña Site Actions>Site Settings>Modify All Site

Settings> Site Collection Administration> Site Collection Features y

activamos la aplicación deseada, como se puede ver en las Figuras

3 y 4. Si no contamos con dichos permisos, tendremos que hacer

lo mismo pero desde la pantalla Central de Administración o

solicitar este cambio.

Page 4: Cesnavarra 2008-boletín 6

Figura3

Page 5: Cesnavarra 2008-boletín 6

Figura4

Una vez activada esta característica de nuestra colección de sitios,

lo único que nos falta es añadir la WebPart con nuestra aplicación

Silverlight. Para ello desde la página donde la queremos añadir

pinchamos en Site Actions > Edit Page >Add Web Part y

seleccionamos nuestro WebPart de ejemplo, tal como se ve en la

Figura5.

Page 6: Cesnavarra 2008-boletín 6

Figura5

El resultado final sería el siguiente:

Page 7: Cesnavarra 2008-boletín 6

Figura6

Como aquí no se observa la interactividad de dicho WebPart, yo

recomendaría que cada persona intentara añadir a sus aplicaciones

este ejemplo o cualquiera de los incluidos en Silverlight BluePrint,

para comprobar los resultados. Asimismo, podemos revisar los

ficheros “.js” y “xaml” de ejemplo, para aprender su uso. También

existen otros ejemplos con los que se podría probar, como el que

se encuentra en la siguiente

página: http://www.triplewood.com/triplewood/html/SharePoint20

07.aspx

Creando y utilizando este tipo de aplicaciones, podemos conseguir

que nuestro sitio sea más atractivo y más dinámico.

Categ

orías

CES Microsoft

Tema Desarrollo

Autor Goretti Ortigosa Rada

Page 8: Cesnavarra 2008-boletín 6

Mes Junio

Año 2008

Boletín

06

Título Clustering y Hyper-V

Texto El pasado 16 de Junio tuvimos el gusto de acoger en el Salón de

Actos de los CES a los evangelistas de Microsoft TechNET José

Parada y David Cervigón. Su charla sobre Windows Server 2008 y

Hyper-V despertó un gran interés entre los asistentes, más aún en

cuanto se mezclaban en una misma frase las palabras “Hyper-V” y

“alta disponibilidad”.

Así que, siguiendo ese hilo, este mes me planteo hablar sobre

Hyper-V y clustering como alternativa barata, fiable y práctica para

soluciones IT de alta disponibilidad.

La primera y más simple alternativa sería montar nuestras

máquinas virtuales (VM, Virtual Machines) sobre nodos físicos en

alta disponibilidad. Esta configuración se denomina Host

Clustering y resulta la solución más simple. De este modo se

puede montar cada servicio o aplicación que precisa Alta

Disponibilidad (HA, High Availability) en múltiples VMs que tienen

HA. Si una VM no está disponible sólo ese servicio hará el

desplazamiento del servicio al otro nodo (denominado en inglés “fail

over” y que usaremos de aquí en adelante por brevedad), siempre

que cada VM tenga su propia unidad lógica de almacenamiento, o

LUN. Como en toda máquina “real”, el fallo de una VM que ejecute

múltiples servicios hace que todos esos servicios no estén

disponibles. Por lo tanto, aquí será el criterio particular de cada

caso el que nos indique que nivel de “granularidad” queremos al

organizar nuestros servicios en las VMs en HA:

Si cada servicio es especialmente crítico como para

preferir aislarlo de otros problemas, o se tiene la

experiencia de que sus actualizaciones sean más

frecuentes de lo que fuera deseable precisando un reinicio en cada ocasión, o su consumo de recursos

puntualmente se dispara (con o sin motivo aparente, es otro cantar…) nos resultará de interés “independizarlo”

Page 9: Cesnavarra 2008-boletín 6

en su propio nodo de VMs. Claro está que esto nos

dificultará el mantenimiento, pero en esto como en otras cosas de la vida “no pain no gain”

Si los servicios o aplicaciones a “clusterizar” no

presentan esas exigencias y lo que queremos lograr es

que el tiempo en el que no se encuentre disponible cualquiera de ellos sea el menor posible, podemos optar

por agruparlos en una (o varias) VMs que hagan el failover, de manera que nuestro esfuerzo sea menor.

Pero claro, esto será como los castillos de naipes: si cae uno, el resto va con ellos.

En general, aplicar una mezcla de estas dos opciones con el criterio

apropiado en cada caso será la mejor opción. Hay que tener en

cuenta que cada VM requiere su parte de recursos (memoria, CPU,

I/O) en nuestras máquinas físicas, así que habrá que tener en

cuenta su capacidad y nuestros requerimientos (por ejemplo,

respondiendo a preguntas como: ¿Soportarán nuestras máquinas

físicas todas las VMs corriendo a la vez en un punto del tiempo? ¿Se

podrá producir alguna vez esto? ¿Afectará al rendimiento percibido

por los usuarios? ¿Y al real? ¿Es esto importante?...)

Para el almacenamiento podremos usar iSCSI, canales de Fibra o

SAS (SCSI por puerto Serie). Cuando la máquina física y la VM

estén en ejecución, el administrador podrá hacer un failover a otra

máquina física de la VM, y el usuario sólo percibirá una espera de

unos pocos segundos. Por detrás, el gestor de Cluster guarda el

estado actual de la VM en el almacenamiento compartido, lo para

en el primer nodo físico y lo arranca en el segundo nodo. También

monitoriza el estado de los VMs, de modo que si el S.O. cae, se

cuelga o da una pantallita azul, puede ser automáticamente

recuperado aunque en este caso el usuario sí percibirá la espera

mientas el estado de la VM se carga e inicializa (el uso de

aplicaciones que toleren fallos en la comunicación o “pervasivas”

minimizará el impacto negativo en estos casos).

Como se ha visto, el modelo Host Clustering monitoriza el estado

del S.O. virtual, pero no se fija en el estado del servicio o aplicación

dentro de la VM. Para esto se dispone del modelo

denominado Guest Clustering. Este modelo permite el uso de

aplicaciones y servicios de alta disponibilidad en la capa virtual, y se

soporta completamente en Windows Server 2008. Para establecer

esta configuración instalaremos el elemento de „Failover Clustering‟

en varias VMs y luego procederemos a definir el cluster con ellas

Page 10: Cesnavarra 2008-boletín 6

como si fueran nodos físicos. Todas estas VMs pueden usar el

mismo almacenamiento compartido iSCSI que guardará el estado

de las aplicaciones ejecutándose en la VM. Incluso se puede realizar

una validación de la configuración del cluster en las VMs para

asegurarnos de que el componente „Failover Clustering‟ funciona

correctamente. Lo que nos facilita esta configuración es la

monitorización de la salud de nuestros servicios y aplicaciones con

la posibilidad de trasladarlos de VM si sufren algún problema.

Mediante la combinación de los dos modos Host

Clustering y Guest Clustering podemos obtener alta

disponibilidad en las capas física y virtual. Un ejemplo de esta

configuración combinada sería el siguiente:

Los nodos Físico-A1 y Físico-A2 forma un Host cluster

físico. Son los nodos que soportan los servidores

Page 11: Cesnavarra 2008-boletín 6

virtuales VM-1A, VM-2A y VM-3A. Estos VMs realizan su

desplazamiento entre los nodos Físico-A1 y Físico-A2 obteniendo HA en la capa física.

Los nodos Físico-B1 y Físico-B2 forma un Host cluster

físico. Son los nodos que soportan los servidores

virtuales VM-1B, VM-2B y VM-3B. Estos VMs realizan su desplazamiento entre los nodos Físico-B1 y Físico-B2

obteniendo HA en la capa física.

Los nodos virtuales VM-1A y VM-1B forman un cluster

en la capa virtual.

Los nodos virtuales VM-2A y VM-2B forman un cluster

en la capa virtual.

Los nodos virtuales VM-3A y VM-3B forman un cluster

en la capa virtual.

Las aplicaciones y servicios obtienen HA en la capa

virtual y pueden hacer fail over, mientras que las VMs obtienen su HA en la capa física, donde pueden hacer

fail over. Esto permite la HA en ambas capas.

Como en cualquier otra solución de cluster, el proceso más

complejo a nivel hardware será la configuración de los discos para

la definición de las LUNs de cada cluster. Sin embargo, Hyper-V nos

proporciona dos ventajas significativas sobre las soluciones de

cluster “tradicionales”:

- Menor coste, por el ahorro que supone el uso de VMs

- Mayor flexibilidad dado que podemos definir tantas VMs

como nuestro hardware sea capaz de soportar y distribuir las aplicaciones o servicios como queramos

entre ellas.

En cuanto al 'como hacerlo' lo mejor es referirse a la guía paso a

paso publicada en el blog de Robert

Larsonhttp://blogs.technet.com/roblarson/archive/2007/12/17/buil

ding-a-host-cluster-with-hyper-v-beta-1.aspx que ofrece con todo

lujo de detalles qué debemos hacer para montar nuestras VMs

en Guest Clustering.

Para más información incluyendo representaciones gráficas de

diversos escenarios de uso se puede consultar el blog de José

Barreto (en inglés):

http://blogs.technet.com/josebda/archive/2008/06/17/windows-

server-2008-hyper-v-failover-clustering-options.aspx

Categ CES Microsoft

Page 12: Cesnavarra 2008-boletín 6

orías

Tema Arquitectura

Autor Rafael Flores Yoldi

Mes Junio

Año 2008

Boletín

06

Título Peopleware.

Texto '...este libro desarrolla un diálogo práctico sobre cómo

los programas son escritos por personas, y en especial cómo los escriben los equipos de personas.' ('Una

explicación de la Programación Extrema. Aceptar el cambio.' Kent Beck.)

En 1987 se editó un libro que se ha convertido en todo

un clásico de la literatura acerca de la gestión de proyectos y equipos dedicados al desarrollo de software.

No en vano su título completo es: 'Peopleware. Productive Projects and Teams.'

Que en el ámbito de la literatura técnica un libro

mantenga su vigencia a los 20 años de su publicación,

resulta meritorio. Que, por ejemplo, enAmazon esté valorado mayoritariamente con 4 ó 5 estrellas indica,

además, la aceptación que tiene entre el público.

El caso es que nos encontramos con una obra que trata un tema tan aséptico como es el desarrollo de software

pero haciendo hincapié en que esa tarea la realizan personas. Y esto es algo que a veces se olvida: el

software es desarrollado por personas y para personas.

Creo que la mejor forma de reseñar este libro es reproduciendo las frases que más me marcaron cuando

lo leí, y que coincidían con mi experiencia a la hora de coordinar un equipo de desarrollo de software:

· Los problemas más serios en la gestión de

desarrollo de software no son de origen técnico sino sociológico.

Page 13: Cesnavarra 2008-boletín 6

· Los desarrolladores deben poder 'perder' tiempo

leyendo, discutiendo, pensando... · Las personas no trabajan mejor bajo presión:

sólo trabajan más rápido. · Todos tendemos a vincular nuestra propia

autoestima con la calidad de lo que producimos.

· El trabajo burocrático tiende a expandirse hasta llenar toda la jornada.

· La función del mánager no es hacer que las personas trabajen sino hacer posible el trabajo para esas

personas. · Un buen entorno físico incide en la productividad.

No se puede trabajar a gusto en un lugar sin ventanas. Las personas trabajan mejor con luz natural.

· Para cualquiera que se dedique a tareas de desarrollo, diseño, programación, el flow es

imprescindible. (Por flow quieren indicar un estado y unas condiciones de profunda, meditativa, implicación).

· Las interrupciones (teléfono, email) son obstáculos hacia la cordura en lo que se refiere a las

condiciones de trabajo. Debe haber períodos de total

ausencia de interrupciones. · Las personas, a todos los niveles, necesitan dejar

su sello en el lugar físico donde trabajan. · La fórmula del éxito es:

o Elegir la gente apropiada. o Hacerla feliz de forma que no quiera irse.

o Hacer que se sienta cómoda. · La necesidad de uniformidad es un signo de

inseguridad en la gestión de personas. · La gestión de personas requiere pensamiento

holístico, juicio heurístico e intuición basada desde la experiencia. (Hmmm: necesité del diccionario para

entenderlo. Holismo: Doctrina que propugna la concepción de cada realidad como un todo distinto de la

suma de las partes que lo componen. De heurística elijo

esta acepción: manera de buscar la solución de un problema mediante métodos no rigurosos, como por

tanteo, reglas empíricas, etc.). · A la hora de elegir un candidato aunque la última

decisión recae en ti, sería conveniente que sus futuros compañeros lo conozcan durante el proceso de selección

y te transmitan sus impresiones. · Una documentación voluminosa es parte del

problema, no de la solución. · El volumen total de estándares impuestos a las

personas debería ser descrito en no más de diez

Page 14: Cesnavarra 2008-boletín 6

páginas.

· Un jelled team es un grupo de personas fuertemente unida en el que el total es mayor que la

suma de sus partes. Una vez que un equipo empieza a alcanzar el estado de jell, las probabilidades de éxito

aumentan de forma impresionante. Entonces no necesita

ser gestionado en un sentido tradicional, y mucho menos motivado. Estos equipos se caracterizan por su

estabilidad, fuerte sentido de la identidad, sentido de pertenecer a un grupo diferente, percibir el producto que

hacen como propio y disfrutar con lo que hacen. (¡Sí! 'Jell' es gelatina. Yo prefiero denominarlo 'gominola').

· Las técnicas para acabar con un equipo son: o Gestión a la defensiva.

o Burocracia. o Separación física.

o Fragmentación del tiempo de las personas. o Disminuir la calidad del producto.

o Plazos de entrega falsos. · El mejor jefe es aquél que gestiona una y otra

vez sin que los miembros de su equipo sepan que son

gestionados. · Una situación de trabajo que daña tu autoestima

es, en sí misma, dañina. · La supervisión visual está destinada a los

reclusos, no a los desarrolladores. · La estructura de un equipo es una red, no una

jerarquía.

Pero lo que mejor califica a este libro es, en mi opinión, este comentario de Ed Yourdon: 'Recomiendo

fervientemente que compres una copia de este libro para ti y otra para tu jefe. Y si tú eres un jefe, entonces

compra un ejemplar para cada miembro de tu departamento y otro para tu jefe.'

En resumen: muy recomendable. Casi imprescindible.

Referencia: PEOPLEWARE Productive Projects and Teams. 2nd ed.

Tom DeMarco & Timothy Lister. Dorset House Publishing

Si quieres enviar algún comentario o sugerir temas a tratar en otros artículos, escribe a:

curtasun[simboloArroba]cein.es

Categorías General

Tema Varios

Page 15: Cesnavarra 2008-boletín 6

Autor Carlos Urtasun

Mes Junio

Año 2008

Boletín 06

Título SHORT CUTS, atajos de teclado.

Texto “Short cuts”… Un estupendo film de Robert Altman de

1993, con un gran reparto: Madeleine Stowe, Julianne Moore, Jennifer Jason Leigh, Tim Robbins,Matthew

Modine, Anne Archer, Chris Penn, Tom Waits, Peter Gallagher, Andie MacDowell, Jack Lemmon, Robert Downey

Jr. etc. Narra las historias de varias familias, personas que intentan

amoldarse al mundo laboral: policías, maquilladoras, conductores, cantantes de jazz, médicos, especialistas en

sexo por teléfono, comentaristas de televisión, camareras... gente con múltiples que historias paralelas se entrecruzan

en un momento dado. Esta estructura creó escuela en muchos de los films posteriores de los noventa.

Estos últimos años he estado desarrollando cierta debilidad

por los atajos de teclado. Después de unos cuantos años programando me estorbaba tener que coger un ratón, no

tenia tiempo, solo debía escribir líneas de código; El tema de coger el ratón se complicó más ahora que

existen entornos modernos que están repletos de herramientas chulas como compilar, ejecutar, los “step

over“ , “step into” del “debugger” , el “intellisense”, las utilidades derefactorización, etc. todas ellas asociadas a

algún shortcut; Más tarde tuve mi primer portátil y no llegaba a acostumbrarme al “touchpad”, me cuesta

mogollón escribir documentos en Word (o lo que sea), con lo que siempre me intentaba enterar cómo se activaba la

negrita, el subrayado, la cursiva... Bueno podéis observar que se generó una necesidad por soltar el ratón.

Aparte de mis experiencias personales, los atajos de

teclado fueron creados desde hace mucho tiempo (recuerdo herramientas gráficas aunque en modo texto que ya las

tenían), con el objetivo no sólo de ahorrar tiempo sino de evitar dependencias con el ratón, muchas herramientas

aceptan la personalización de “shortcuts”, por parte del usuario. Básicamente un atajo del teclado es una

Page 16: Cesnavarra 2008-boletín 6

combinación de teclas que permite hacer algo en el

ordenador más rápido que si lo hiciéramos con el ratón. Además Ni qué decir la importancia que tienen los

atajos para las personas discapacitadas o con problemas de accesibilidad.

En fin concretando un poco, como en informática en

general todo comienza a tener su propio universo y como tal tiende a ser inabarcable, encontraréis muchas

recopilaciones de “shortcuts”; La que yo os presento es una recopilación de los atajos que me han parecido más útiles y

que más fácil vais a poder aplicar, son atajos genéricos y los voy a agrupar por teclas, muchos están basados en las

teclas “alt” y “ctrl” y podrían funcionar en otros sistemas operativos con los gestores de ventanas activados.

Para ordenar un poco el tema os presento los atajos en orden alfabético y luego agrupados por el contexto en el

que tienen su función; También por facilitaros el trabajo os los pongo en formato tabla, os será mas fácil de imprimir y

tenerlos como plantilla; Os va a costar memorizarlos al principio, así que poco a poco.

Finalizando y para los que os haya convencido este tema o

ya estéis habituados os dejo un link con 200 shortcuts sobre Windows, firefox, gmail, total commander etc.

http://www.smashingmagazine.com/2007/07/20/developers-alarm-200-hotkeys-to-boost-your-productivity

Tecla alt: Los atajos sobre la tecla ALT deberían ser estándar, por lo que es posible que algunas

combinaciones funciones en otros sistemas operativos

con gestores de ventanas. Contexto del Explorador de Windows:

alt + d: nos posiciona en la barra de herramientas de la ventana del explorador activa.

alt + flecha arriba: nos desplaza la vista del marco del navegador donde este situado el foco, al

siguiente nivel jerárquico de la vista. alt + flecha izquierda/derecha: nos desplaza la

vista del navegador a través del histórico de vistas recorrido hasta llegar al nivel jerárquico de la vista

actual. alt + enter: muestra las propiedades del elemento

seleccionado del marco de la derecha.

Teclas Fin / inicio: último y primer elemento de la

Page 17: Cesnavarra 2008-boletín 6

ventana.

Teclas F: estas teclas han perdido con paso del tiempo

cierto peso sin embargo creo que las siguientes merecen

una mención. Contexto del Explorador de Windows:

F2: te permite renombrar el elemento seleccionado.

F3: despliega la ventana de búsquedas. Tiene una ventaja sobre el ctrl + F que vale la pena

comentar: si estamos situados sobre una carpeta, restringe la búsqueda al contenido de esa carpeta.

F4: muestra las rutas de la vista actual con respecto a la navegación a través del sistema de

ficheros. F5: refresca la vista actual.

F6: mueve el foco de selección a través de los elementos interactivos de la vista del navegador.

F11: modo todo pantalla, lo habilita y lo

deshabilita. El efecto se repite en el “Internet Explorer”.

Tecla ctrl:

Imprescindibles:

ctrl + x: cortar.

ctrl + c: copiar.

ctrl + v: pegar. ctrl + z \ y: deshacer \ rehacer.

ctrl + p: imprimir

ctrl + s: salvar.

ctrl + o: abrir fichero.

Contexto Explorador de Windows:

ctrl + e: selecciona todo lo que aparece en la ventana de navegación.

ctrl + n: abre en otra ventana el contenido de la ventana de navegación que se está visualizando.

ctrl + f / ( F3 ): despliega la ventana de búsquedas.

Sólo en Windows Vista:

ctrl + shift + enter: te permite confirmar la

elevación de los permisos de la aplicación/ejecutable seleccionado.

Contexto de ventanas con listas de

elementos:

Ctrl + a: selecciona todos los elementos del

documento o ventana. Ctrl + fin: nos posiciona el foco en el último

Page 18: Cesnavarra 2008-boletín 6

elemento del documento o ventana. Ctrl + home: nos posiciona el foco en el primer

elemento del documento o ventana. Ctrl + Flecha izquierda/derecha + espacio: nos va

a permitir seleccionar grupos de elementos discontinuos.

Ctrl + d: mueve a la papelera de reciclaje o borra los elementos seleccionados.

Contexto en general:

ctrl + w / Alt + F4: cierra tu ventana actual.

ctrl + esc: despliega menú de inicio. ctrl + tab: nos desplazamos por la barra de

tabulación con las aplicaciones que tenemos

abiertas en la sesión. ctrl + shift + esc: administrador de tareas.

Ctrl + Windows + f: busca máquinas en la red (en caso de estar en un Dominio).

Ctrl + Windows + tab: te permite navegar por las aplicaciones abiertas desde la barra 3D pero

usando las teclas de desplazamiento izq/der. Es necesario tener activado el “Aero” y los efectos 3D

del Windows Vista.

Tecla Shift: Además de permitirnos usar el segundo símbolo asignado a una tecla del teclado, da mucho

juego a la hora de hacer selecciones de elementos, etc. Explorador / Listas de elementos:

Shift + flecha izquierda / derecha: permite seleccionar más de un elemento en el sentido de la

flecha elegida. Shift + F10: nos muestra el menú equivalente al

botón derecho del ratón cuando seleccionamos un elemento con el ratón.

Shift + suprimir: borra directamente el elemento

seleccionado sin pasar por la bandeja de reciclaje.

Tecla Windows: tecla curiosa que apareció a partir del

Windows 95 por más que sea odiada, ignorada etc. Sin embargo también está provista de combinaciones

bastantes útiles:

Windows + d: minimiza o vuelve a desplegar todas las aplicaciones que no estén ya minimizadas

actualmente sobre el escritorio. Windows + e: te despliega el Explorador de

Windows. Windows + f: despliega la herramienta de

búsquedas de Windows. Windows + l: te permite cambiar de usuario de

Page 19: Cesnavarra 2008-boletín 6

sesión, y bloquear la actual. Windows + Pausa (alrededor del teclado numérico):

te despliega las propiedades del sistema. Windows + r: despliega el menú de ejecutar.

Windows + t: permite navegar por las aplicaciones abiertas pero desde la barra del menú de inicio.

Con el AERO, “gadgets” y los efectos 3D del Windows Vista activados.

Windows + tab: te permite navegar por las aplicaciones abiertas desde la barra 3D.

Windows + barra de espacio: te trae a un primer plano todos los “gadgets” y te permite

seleccionarlos.

Windows + g: te permite navegar por la barra de “gadgets”.

Tecla Bloq-Num:

Bloq-Num + *: en el explorador de Windows, si

tenemos un directorio seleccionado, nos va a

desplegar todo el árbol de directorio que cuelga del directorio seleccionado, no hacer sobre “c:\” ,

obviamente hay demasiadas carpetas. El despliegue de directorios se hace en el “frame”

izquierdo del navegador.

Bloq-Num + +: como el anterior, sin embargo sólo

muestra el primer nivel que cuelga del directorio seleccionado.

Bloq-Num + -: si el directorio seleccionado esta desplegado lo recoge.

Bloq-Num + Flechas de Dirección: hace el efecto combinado de los dos anteriores hacia la izquierda.

Equivale al ”+” y hacia la derecha equivale al “–“.

Categoría

s General

Tema Varios

Autor Enrique Muro Arbizu

Mes Junio

Año 2008

Boletín 06

Page 20: Cesnavarra 2008-boletín 6

Título TDT: herramientas para desarrollo MHP (Parte 2)

Texto En la primera parte definimos el entorno de programación. En esta segunda parte profundizaremos en las alternativas de un

entorno de pruebas complementando la parte cubierta en el artiúclo anterior proponiendo un sistema completo para el

desarrollo y prueba de aplicaciones MHP.

Entorno de pruebas

Existen dos formas de plantear las pruebas de las aplicaciones

en MHP desarrolladas.

La primera de ellas, es usar un emulador, tal y como se ha

comentado en la sección de desarrollo. Estos son un buen punto de partida. Su uso permite evitar muchas de las complejidades del desarrollo de aplicaciones en MHP. Son una

buena alternativa a otras soluciones más caras, aunque no son recomendables para desarrollar aplicaciones que se van a

desplegar en una red real para su puesta en producción.

Además, un emulador no puede simular la eficiencia de un decodificador real. Esto es debido, parcialmente, a la

diferencia de hardware, pero también por la naturaleza de la aplicación desarrollada, por las alteraciones sufridas a su paso

por un TS (transport stream), por el tiempo de carga en el decodificador, etc. Igualmente, los emuladores no pueden probar las características intrínsecas del la codificación MPEG,

los eventos, la información del servicio, etc. Por tanto, los emuladores son un valor añadido al kit de desarrollo de la

aplicación, pero no son aptas para un entorno de pruebas lo más real posible.

La segunda forma, es comprar un sistema de desarrollo de un

proveedor de MHP. Compañías como ADB, Osmosys, Panasonic, IRT, y otras cuentan un la versión de desarrollo de

sus decodificadores (set-top-boxes, STB) en torno a los 1000€. No es muy barato, pero es una inversión que merece la pena si se busca profundizar en la tecnología MHP de forma

seria y para fines productivos, puesto que resuelven muchas de las carencias que presentan los emuladores. Para poder

ejecutar las aplicaciones en el STB, es necesario cargarlas previamente. Esto dependerá del STB elegido, pudiendo ser a través de un puerto Ethernet, cable serie, entrada coaxial,

etc.

¿Nos vale con todo esto? Desgraciadamente no. Cada

fabricante ha implementado MHP a su manera, por tanto, el que tengamos una aplicación funcionando en un entorno de desarrollo y en uno o dos descodificadores hardware no nos

garantiza que funcione o se vea bien en todos los del mercado. Resumiendo, la aplicación se comportará de forma

Page 21: Cesnavarra 2008-boletín 6

distinta en diferentes receptores.

Si cada fabricante facilitase las herramientas para cargar aplicaciones por puerto serie, nos bastaría con comprar una

pila de descodificadores representativa del mercado. No obstante, esto no suele ser así.

En cualquier caso, si se van a desarrollar aplicaciones en un

entorno real, merece la pena seleccionar diferentes receptores de diferentes marcas para comprobar la

interoperabilidad. No tienen porque tratarse de STB de desarrollo, pero es conveniente tener diferentes STB de desarrollo o emuladores para cubrir el mayor espectro de

posibilidades si el presupuesto no da para más.

Si por el contrario, el presupuesto si que da para más, es

conveniente dar el siguiente paso: montar un cabecera de televisión.

Esto es, dotarnos de la infraestructura necesaria para generar

el stream de video sobre el cual irán las aplicaciones MHP. De esta forma, las aplicaciones MHP se cargarán en el deco a

través del cable coaxial, de igual modo que en un entorno real.

Esta opción es muy atractiva porque se acerca más a la

realidad y permite medir más parámetros, como por ejemplo, la carga del ancho de banda en función del número de

aplicaciones MHP, o en general, medir y probar características específicas del transport stream (TS).

Partimos del hecho de que la generación de un stream de

video y datos real mediante una solución puramente de hardware es muy cara. No obstate, dicho stream de video y

datos tambień puede generarse mediante una solución mixta de hardware y software. Esta consiste en:

Un sistema de play-out por software: generación del TS

a la velocidad correcta. Un sistema de hardware que adapta y envía el TS

generado por software a un formato que pueda entender el STB. Esto es, una tarjeta moduladora que envía la señal mediante un cable coaxial al STB.

Esta es la forma más económica de obtener un laboratorio de pruebas real y fiable. Existen soluciones en este sentido Open

Source, no obstante, por el momento no son herramientas fiables en la creación y envío del TS.

Conclusión Solamente con el empleo de los emuladores no se simulan

Page 22: Cesnavarra 2008-boletín 6

todas las características de un entorno real, cayendo en el

riesgo de construir aplicaciones MHP que no funcionen o que lo hagan de forma ineficiente, por tanto, la inversión en la

construcción de un laboratorio de pruebas es muy recomendable.

De todas las opciones disponibles, la creación de un

laboratorio de pruebas mediante herramientas hardware resulta muy cara. Siendo la alternativa mixtas de hardware y

software una solución que permite la simulación de todos los parámetros del TS reales de forma fiable y óptima además de ser mucho más económica.

Categorías CES OpenSouce/Java

Tema Varios

Autor Raúl Sanz de Acedo

Mes Junio

Año 2008

Boletín 06

Título Configuración de las máquinas Linux servidor y cliente para tener

repositorios remotos con Subversion (Parte 2)

Texto En el artículo anterior se comenzó a explicar cómo configurar una

máquina en la que estaría instalado un repositorio de Subversion

para que se comunicara con otra máquina en la que se instalaría un

Servidor Web y que sería la que gestionara las peticiones a este

repositorio. En él se dieron los pasos iniciales para la preparación de

la máquina. En este otro artículo, se explicará en detalle la

configuración de los servicios Iptables y SELinux.

CONFIGURACIÓN DE IPTABLES:

En este caso hay que configurar tanto el acceso al servidor web que

está en el puerto 80 como a los servicios asociados

con nfs y subversion. Subversion funciona sobre el puerto 3690 y

nfs sobre el 2049. Con el servidor de nfs además hay que dejar

pasar al servicio portmap que corre en el puerto 111 y otros servicios

asociados. Estos otros servicios tienen puertos que en principio

variarán cada vez que se inicie el servicio. Para ello lo mejor es

fijarlos. Se necesitan 6 puertos que estén libres. Para eso se

consulta la lista de puertos empleados en el fichero /etc/services y se

ve que a partir del 10008 hay un rango libre lo suficientemente

amplio como para contener los puertos a fijar. Se eligen los puertos

Page 23: Cesnavarra 2008-boletín 6

entre el 10010 y el 10015 para fijarlos. Así quedarían los puertos

asociados al funcionamiento de nfs:

• 111: portmap (tcp/udp)

• 2049: nfs (tcp/udp)

• 10010: example lockd (tcp)

• 10011: example lockd (udp)

• 10012: example statd/status (tcp/udp)

• 10013: example statd/status outgoing (tcp/udp)

• 10014: example mountd (tcp/udp)

• 10015: example rquotad (tcp/udp)

Para fijarlos se añade al final del fichero /etc/modprobe.conf la

siguiente línea:

options lockd nlm_tcpport=10010 nlm_udpport=10011

Con esto se fija el puerto del servicio lockd a 10010 (tcp) y

10011(udp). Para fijar el resto puertos para los servicios que

necesita emplear nfs se modifica el fichero /etc/sysconfig/nfs

añadiendo estas líneas:

# NFS port numbers

STATD_PORT=10012

STATD_OUTGOING_PORT=10013

MOUNTD_PORT=10014

RQUOTAD_PORT=10015

En este punto se debe reiniciar el ordenador para que esta

configuración se emplee.

Si se quieren hacer pruebas sin que los cambios sean permanentes

en el servicio, se pueden emplear las sentencias iptables –I tabla

posicion …, pero para dejarlas fijas y que se tengan en cuenta cada

vez que arranque la máquina, hay que escribirlas sobre el fichero

/etc/sysconfig/iptables. Las reglas a aplicar son sobre la máquina

con Apache:

-A RH-Firewall-1-INPUT -p tcp --dport 80 -j ACCEPT

Page 24: Cesnavarra 2008-boletín 6

-A RH-Firewall-1-INPUT -p tcp --dport 3690 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp --dport 3690 -j ACCEPT

y sobre la máquina con el repositorio de subversion:

-A RH-Firewall-1-INPUT -p tcp --dport 3690 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp --dport 3690 -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp --dport 2049 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp --dport 2049 -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp --dport 111 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp --dport 111 -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp --dport 10010 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp --dport 10011 -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp --dport 10012:10015 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp --dport 10012:10015 -j

ACCEPT

CONFIGURACIÓN DE SELINUX:

La política que más va a proteger el ordenador en SELinux es

enforcing y targeted. Con esto se sigue la política por defecto.

Para que todo funcione y se muestren todas las restricciones

impuestas por SELinux, se puede ejecutar:

setenforce 0

Se ejecutan los distintos programas. Esto creará dentro de audit.log

unas líneas que se identifican porque tienen type=AVC. Estas son

líneas en las que dicen las restricciones de la política que aparecen y

los programas que las provocan. Si no se tiene activado audit.log,

estos mensajes se mostrarán en messages.

Tras esto y después de comprobar que la actualización de las

políticas a través del yum no ha resuelto el problema, habrá que

repasar los booleanos de selinux para ver si se puede dar más

permisos o no a las operaciones.

Los booleanos que pueden afectar son:

• allow_httpd_anon_write

Page 25: Cesnavarra 2008-boletín 6

• allow_httpd_bugzilla_script_anon_write

• allow_httpd_mod_auth_pam

• allow_httpd_nagios_script_anon_write

• allow_httpd_squid_script_anon_write

• allow_httpd_sys_script_anon_write

• allow_nfsd_anon_write

• httpd_builtin_scripting

• httpd_can_network_connect

• httpd_can_network_connect_db

• httpd_can_network_relay

• httpd_disable_trans

• httpd_enable_cgi

• httpd_enable_ftp_server

• httpd_enable_homedirs

• httpd_rotatelogs_disable_trans

• httpd_ssi_exec

• httpd_suexec_disable_trans

• httpd_tty_comm

• httpd_unified

• nfs_export_all_ro

• nfs_export_all_rw

• nfsd_disable_trans

• portmap_disable_trans

• use_nfs_home_dirs

Para ver el estado de todos los booleanos impuestos por SELinux, se

ejecuta:

getsebool –a

Y para cambiar el estado permantentemente de uno o varios de

Page 26: Cesnavarra 2008-boletín 6

ellos:

setsebool –P booleano1=0/1, booleano2=0/1, …

Si activando estos booleanos, no se solucionan los problemas

entonces se deberá recurrir a crear una política local de seguridad.

Lo primero que hay que hacer es descargarse mediante yum el

módulo selinux-policy-devel:

yum install make selinux-policy-devel

Este módulo permitirá la creación de políticas locales para solucionar

algunas de las restricciones impuestas.

Para guardar las políticas se creará una carpeta por ejemplo

selinux.local. Esta carpeta puede situarse en cualquier

directorio. Para los siguientes pasos se exigen privilegios de root.

Se entra en ella y se ejecuta la sentencia: chcon –R –t usr_t .

Con esto se dice que el tipo de usuario de la carpeta será usr_t.

Una vez hecho esto, se hará un link al makefile del paquete de

desarrollo es decir,

ln –s /usr/share/selinux/devel/Makefile

Esto permitirá ejecutar el comando make y compilar las políticas

locales.

Para crearlas se puede utilizar el script audit2allow, que a partir de

un fichero en el que haya logs con type=AVC sacará las reglas que lo

solucionan.

El empleo que se puede dar es:

audit2allow –a –o ficheroSalida

Con la opción –a lo que hace es leer todos los posibles ficheros que

contengan mensajes con type=AVC. También se puede utilizar la

opción –i ficheroEntrada. Con –o se designa el fichero de salida en el

que se quiere que se vuelquen esas reglas. Si se utiliza –R se

implementan ya en la política directamente, pero a mí esta opción

me dio fallos.

Entonces lo que hay que hacer para crear un fichero que implemente

una política local es seguir esta estructura:

policy_module (nombre_fichero_sin_extension, X.Y.Z)

Page 27: Cesnavarra 2008-boletín 6

#X.Y.Z son los números de versión, pueden ser cualquiera, pero

interesa ir cambiándolos cada vez que haya cambios para ver que se

ha cargado correctamente el nuevo módulo.

require {

type tipo_Selinux;

}

#En este apartado irán todos los tipos empleados en las reglas

### REGLAS OBTENIDAS CON EL SCRIPT audit2allow.

Ejemplo de fichero (solucionar problemas con squid):

policy_module(localmisc, 0.1.0)

require{

type squid_t;

}

#Squid connecting to and communicating with other caches

corenet_tcp_connect_http_cache_port(squid_t)

corenet_tcp_sendrecv_http_cache_port(squid_t)

Una vez creado el fichero adecuado siguiendo esa estructura hay que

darle extensión te. Se guarda en la carpeta selinux.local que se

había creado antes, se ejecuta el make y se crea un fichero con

extensión pp. Será este fichero el que se emplee para incluir la

política.

Se usará:

semodule –i modulo.pp

Para comprobar si se ha cargado la versión correcta del plugin, se

puede ejecutar:

semodule –l

ENLACES DE INTERÉS:

Iptables

http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch14_:_Linux_Firewalls_Using_iptables

http://www.redhat.com/magazine/010aug05/departments/tips

Page 28: Cesnavarra 2008-boletín 6

_tricks

SELinux

http://www.centos.org/docs/5/html/Deployment_Guide-en-US/sec-sel-admincontrol.html

http://www.city-fan.org/tips/BuildSeLinuxPolicyModules

Categ

orías

CES OpenSouce/Java

Tema Varios

Autor Blanca Cubas Cruz

Mes Junio

Año 2008

Boletí

n

06