Friday, September 11, 2009
Me parece curioso este post de Jon Flanders http://www.masteringbiztalk.com/blogs/jon/PermaLink,guid,6119f82a-86c3-4ef2-baee-d4697a479a56.aspx donde nos explica porque ya no posteaba nada sobre BizTalk.
La verdad es que yo mismo veía el fin de BizTalk cercano con la llegada de Dublin, pero eran rumores infundados?? No lo sé, seguramente ha habido un gran debate interno en Microsoft sobre este tema, pero Microsoft sorprendió diciendo que sacaría la versión 2009 (en vez de llamarla R3 como parecía al principio) y tenía intención de continuar este ritmo de releases cada 2 años aproximadamente. Al menos por ahora Microsoft sigue apostando por este producto y a mi me parece buena idea.
En cualquier caso los expertos de BizTalk no tienen porque temer por su futuro, aun si Dublin reemplazara a BizTalk, la experiencia en entornos de integración (correlaciones, enrutamiento basado en contexto, transacciones de larga duración, compensaciones,...) les posicionará mejor que al resto de técnicos. De momento tenemos que estar contentos porque Jon vuelve a hablar de BizTalk en su blog :-)
Tuesday, July 14, 2009
No hay escusa para no probar las soluciones BizTalk. Es la única forma de garantizar que lo que hemos hecho funciona, nos permite dormir tranquilos :-), evita errores de regresión y nos exime de culpas en muchos casos. La escusa de que es dificil de probar ya no vale, está claro que al principio del desarrollo la curva de esfuerzo será mayor pero un desarrollo pequeño de 2 meses y sólo un desarrollador ya le saca provecho y agilidad, os lo digo por experiencia.
En este caso voy a hablar de un nuevo framework, BizMock, estoy muy relacionado con él, ya que lo utilicé cuando todavía no había salido a la luz, gracias a su creador, Pierre Milet, con quien tuve el placer de trabajar en un proyecto, pude conocer este framework, hacer de beta tester y resolver algún bug, pocos ;-).
Las bondades son muchas, lo importante es que simplemente cambiando los bindings y usando el adaptator BizMock simulas sistemas externos, sin acoplamientos. Lo que va a hacer es seguir los pasos que tú le definas en las pruebas, a través de código c# y a través de lo que se denomina "fluent interface", donde aprovechando el IntelliSense el propio Visual Studio nos dice las posibilidades que tenemos simulando una escritura natural.
Se puede incorporar en los procesos de Integración Continua, donde, una vez compilado y desplegado automáticamente, se lanzan estos tests a modo de pruebas unitarias de nuestras orquestaciones.
Volvemos al tema de la agilidad, hay que automatizar tareas, como desarrolladores teneis que promoverlo, desarrollar soluciones BizTalk no requiere de mucho esfuerzo de desarrollo, pero sí de muchas tareas repetitivas que nos llevan mucho tiempo a la larga, compilación, despliegue, bindings, pruebas manuales,... Tampoco vale la escusa de que en tu empresa no montan Team Foundation, todos sabemos que msbuild lo puedes ejecutar en local, y encima, mucho del trabajo está hecho, para BizTalk hay tareas msbuild que te permiten hacer practicamente cualquier cosa.
Os animo a usar estos frameworks y a automatizar vuestras tareas, me lo agradecereis ;-)
Aqui os dejo los enlaces:
http://blogs.msdn.com/pierreml/archive/2009/02/13/bizmock.aspx
http://www.codeplex.com/bizmock
Saludos,
Tomás
Thursday, July 02, 2009
Ayer fue mi primer día desde hace 2 años en el que ya no soy MVP. Ha sido un año lleno de cambios profesionales, he cambiado de empresa, he dejado el desarrollo, la consultoría, la formación, las ponencias y hoy el MVP... Ahora estoy en infraestructura de sistemas de producción, en cliente final e intentando mejorar los procesos de puesta en producción, administración, pruebas de carga y resolución de problemas in situ, desde dentro de una empresa y gestionando equipos de trabajo repartidos por todo el mundo, todo un reto para mi, y para mi inglés jejeje. Otro de mis objetivos desde hace un tiempo ha sido equilibrar mi vida profesional y personal, antes estaría en un 70 - 30 y ahora intento que sea un 50 - 50.
Como dije hace un tiempo la vida son ciclos. En este nuevo ciclo mi participación y ayuda a la comunidad no la he priorizado y por tanto Microsoft nombrará a otro que haya hecho más méritos, lo tenía claro desde hace tiempo. Esto hace que sea un reconocimiento muy muy valorado, por la dificultad de conseguirlo y el esfuerzo necesario para mantener el reconocimiento, tendría que estar remunerado jejejejejeje. Pero esta dificultad me hace estar más orgulloso si cabe.
En cualquier caso estoy muy contento de estos 2 años, han sido un regalo para mí, o más bien un sueño (no regalan nada :-DDD ), ya que hace 10 años iba a charlas de varios mvps y los veía muy lejos y con admiración.
He conocido mucha gente interesantísima, me ha hecho entender muy bien este mercado y mi capacidad y un poco ser dueño de mi destino supongo que gracias al prestigio que te confiere. Saco muchas cosas positivas y yo creo que nada negativo. Y me ha permitido tener la suerte de ir 4 veces a Redmon (Seattle, USA), cuartel general de Microsoft, para interactuar con los equipos de producto y con el resto de mvps.
Esos Summit quedarán en mi recuerdo ;-)
Un saludo
Monday, June 29, 2009
Herramienta de gran utilidad para realizar tests de carga de servicios WCF. Genera el código necesario para realizar pruebas de carga desde VS 2005 y VS 2008.
http://wcfloadtest.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=26377#DownloadId=66052
Saludos.
Thursday, June 25, 2009
La verdad es que no me termina de convencer el hecho de utilizar BizTalk para acceso directo a base de datos usando su adaptador de SQL. No me gusta porque crea un acoplamiento muy fuerte.
En un proyecto que estuve se decidió utilizar este adaptador pero cada modificación de los procedimientos almacenados implicaba tener que modificar los esquemas en BizTalk. Personalmente siempre aconsejo dejar claramente definidos los contratos y si se necesita acceder a base de datos hacerlo a través de un componente .Net de manera transaccional, es mucho más fácil de probar de manera unitaria. Hay que tener en cuenta que los procesos BizTalk suelen ser complejos, a veces pueden durar mucho tiempo y se puede producir un error en cualquier punto, cuando realizamos acceso a las bases de datos de negocio es importante tener cuidado para no generar inconsistencias y la mejor forma es hacerlo a través de componentes .net transaccionales, utilizar el tratamiento de excepciones, los bloques de compensación y subcribirte a los mensajes de error.
En cualquier caso os paso un post sobre el nuevo adaptador SQL WCF muy mejorado con respecto al anterior adaptador SQL:
http://www.packtpub.com/article/soa-capabilities-in-bizTalk-wcf
Saludos.
Thursday, June 04, 2009
Hace no mucho tiempo tuve el placer de trabajar en un proyecto realizado sobre BizTalk 2006 R2. Fue un proyecto en esencia muy diferente a los que estaba aconstumbrado, ya que se realizó para un hospital de Zaragoza (Mutua de Accidentes de Zaragoza - MAZ). En la práctica, fue un proyecto de integración y se siguieron las mismas técnicas de desarrollo que habiamos realizado en anteriores proyectos: patrones de integración, tests unitarios, tests de integración, automatización de todo el proceso de compilación, despliegue, configuración,...
La problemática a resolver consistía en integrar unos dispensadores de medicamentos robotizados que entendían HL7 con el HIS (Health Information System) del Hospital que no entendía HL7.
En este proyecto pude conocer de primera mano el acelerador HL7, que nos permitió desarrollar con muchísima agilidad.
Una vez acabado el proyecto y subido a producción sin incidencias la guinda fue nuestra participación en el programa TAP de Microsoft para la migración del proyecto a BizTalk 2009, se hizo sin problemas y se convirtió en el primer BizTalk 2009 en Producción de España.
Más detalles en el Case Study realizado por Microsoft: http://www.microsoft.com/spain/biztalk/2009/case-studies.aspx
Saludos.
Wednesday, May 13, 2009
Sólo le he podido echar un vistazo, me interesa muchísimo porque estoy preparando algo similar. Se trata de 2 videos, de una hora cada uno, donde se pone en práctica la guia para realizar un laboratorio de pruebas de rendimiento para BizTalk con el objetivo de escalar el entorno. Espero que lo disfrutéis.
BizTalk 2009 – End to end performance testing (1/2)
http://channel9.msdn.com/posts/johanlindfors/BizTalk-2009--End-to-end-performance-testing/
BizTalk 2009 – End to end performance testing (2/2)
http://channel9.msdn.com/posts/johanlindfors/BizTalk-2009-End-to-end-performance-testing-22/
Y esta es la guia que os comento:
Managing a Successful Performance Lab
http://www.microsoft.com/downloads/details.aspx?FamilyID=60e8c48e-2139-40d0-98fa-78233b3b64cf
Saludos.
Desde mi nuevo punto de vista, desde infraestructura, ciertamente las preocupaciones son diferentes al desarrollo de soluciones BizTalk. Desde desarrollo nos preocupamos de una correcta arquitectura, extensibilidad, rendimiento,... Infraestructura es otro cantar, lógicamente un entorno de producción requiere hacer chequeos diarios, mensuales y anuales del sistema, la mayor preocupación es la salud del sistema, la recuperación ante desastres, redundancia, balanceo, alta disponibilidad...
Para ayudar a esos administradores de sistemas BizTalk existen una serie de utilidades, usadas por los propios ingenieros de soporte de Microsoft:
PAL(Performance Analysis of Logs Tool) http://www.codeplex.com/PAL: Para analizar los logs de contandores de rendimiento, incluye un juego de contadores especialemente seleccionados para BizTalk. Genera un informe con los resultados, coloreados según el grado de riesgo.
BizTalk Best Practices Analyzer http://www.microsoft.com/downloads/details.aspx?familyid=dda047e3-408e-48ba-83f9-f397226cd6d4&displaylang=en: Hace un estudio de la instalación y configuración de BizTalk.
LoadGen http://www.microsoft.com/downloads/details.aspx?FamilyID=c8af583f-7044-48db-b7b9-969072df1689&DisplayLang=en: Herramienta para generar carga y poder realizar tests de rendimiento.
PssDiag: Viene incluida una versión específica para BizTalk con el DVD del producto. Es una herramienta de diagnóstico de errores de base de datos y problemas de rendimiento
MsgBoxViewer http://blogs.technet.com/jpierauc/pages/msgboxviewer.aspx: Otra fantástica herramienta de diagnóstico, con queries personalizables y reglas.
SCOM http://www.microsoft.com/systemcenter/opsmgr/: Bueno es un producto, pero vital para administrar un entorno BizTalk, gracias a su Management Pack específico para BizTalk
Y como recursos a destacar:
BizTalk Server Documentation: http://msdn.microsoft.com/en-us/biztalk/aa937673.aspx
Managing and successful performance Lab: http://www.microsoft.com/downloads/details.aspx?FamilyID=60e8c48e-2139-40d0-98fa-78233b3b64cf
BizTalk Server Operations Guide: http://www.microsoft.com/downloads/details.aspx?FamilyID=5251F103-329D-4F8D-95B5-64F99F2F6DFC
Installing and Configuring BizTalk Server in a Multi Computer Environment: http://www.microsoft.com/downloads/details.aspx?FamilyID=df2e8a88-fb23-49a4-9ac7-d17f72517d12
BizTalk Server Performance Optimization: http://www.microsoft.com/downloads/details.aspx?FamilyID=98ecf11a-9a8e-4939-8cef-2bc5536dc792
Saludos.
Y os preguntareis, qué .... tiene que ver BizTalk 2009 y XBox 360??... En principio nada :-P pero teniendo en cuenta que BizTalk es un integrador y ajusta perfectamente en escenarios típicos de cadenas de suministros, ehhh bueno y un detalle sin importancia, que Microsoft es el creador de ambos productos, pues blanco y en botella:
http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000004118
Saludos.
Tuesday, April 07, 2009
Nuestro compañero Saravana Kumar ha hecho un magnífico trabajo al recopilar, a modo de documentación de producto, los posts de los bloggers de BizTalk más importantes. Está organizado practicamente igual que la documentación del producto y cuenta con un buscador.
Aqui os dejo el enlace:
http://blogdoc.biztalk247.com
Saludos.
Tuesday, March 31, 2009
Hola de nuevo, ya hace tiempo que no posteo, la verdad es que he estado algo liado y desconcentrado, ya que he cambiado de empresa hace 2 semanas. Sí, asi es, he dejado ilitia después de 4 años, estos años han sido muy intensos, los más intensos de mi vida profesional y donde saco un balance muy positivo. La vida son ciclos y creo que era el momento de empezar uno nuevo con ilusiones renovadas.
Ahora paso a formar parte del Grupo Santander como responsable de infraestructura BizTalk a nivel corporativo. Todo un cambio, desde el punto de vista técnico, ya que he cambiado el desarrollo y arquitectura por infraestructura, y tambien desde el punto de vista de responsabilidad.
Desde que empecé con BizTalk hasta la fecha he pasado por todas las fases del desarrollo de soluciones, desde la toma de requisitos, estimación de recursos y tareas, diseño de arquitectura, desarrollo, automatización de builds y pruebas, test funcionales, subidas de entorno, hasta la mejoras de rendimiento. Ahora tengo la oportunidad de mejorar los procesos desde punto de vista de sistemas realizando estándares corporativos y, probando y proponiendo herramientas, productos, técnicas... Creo que es enriquecedor en este aspecto, aunque está claro que no es una tarea sencilla.
Y nada, os seguiré contando mis impresiones sobre este mundillo como hasta ahora,...
Saludos.
Thursday, March 12, 2009
Muy interesante el uso de Oslo y su lenguaje "M" para generar un lenguaje mucho más "friendly" que nos crea los scripts de despliegue msbuild.
http://www.sabratech.co.uk/blogs/yossidahan/2009/03/oslo-based-solution-for-deploying.html
Me empieza a gustar Oslo :-DDDDDD
Friday, December 19, 2008
Pues eso parece. BizTalk en su versión 2009 no tiene HAT propiamente dicha. Su funcionalidad ha sido incluida en la Consola de Administración, buena noticia sin lugar a duda ya que desde la esta Consola podremos resolver cualquier incidencia, consultar instancias en ejecución y consultar el tracking. Quedarán reminiscencias de la HAT ya que la depuración de una orquestación nos abrirá la misma pantalla que estábamos acostumbrados, pero eso es lo de menos.
De esta manera se nos hace mucho más fácil, por ejemplo, buscar una instancia procesada en una fecha determinada:
Anteriormente se tenía que hacer de esta manera http://blogs.clearscreen.com/tomas/archive/2007/01/15/5969.aspx
Saludos.
Friday, October 17, 2008
En el PDC nos explicarán un poco más lo que será Oslo y de qué se compone, pero ya nos dán unas pinceladas.
Oslo se compondrá de 3 herramientas: un diseñador gráfico, llamado "Quadrant", un leguaje de modelado llamado "M", para especificar DSLs y modelado de datos, y un repositorio relacional que permite que los modelos disponibles sean accesibles desde otras herramientas y componentes .Net.
Oslo incluye soporte para UML, BPMN y BPEL a través del diseñador gráfico y almacena todos los artefactos y diagramas conceptuales en una base de datos SQL Server.
A los desarrolladores sólo nos queda esperar un poco para poder disfrutar de Oslo y ver con nuestros propios ojos como Microsoft resuelverá el diseño de arquitecturas basadas en modelos.
Un saludo.
Sunday, September 07, 2008
Ocho años después de la primera versíon de BizTalk Server (2000) se planea el lanzamiento de la versión 2009 para principios de año. Este es el nuevo logo de la siguiente versión del producto:

También se hace público que Microsoft lanzará una release cada 2 años como mínimo, asegurando a sus cliente que continuará dando soporte de este producto en el futuro.
Y del futuro, es obligado hablar de Oslo. Y nos confirman que los clientes que han apostado por BizTalk y quieran beneficiarse de las ventajas de Oslo lo harán sin más, sin necesidad de actualización ninguna.
Os dejo algunos links sobre el tema:
http://www.microsoft.com/biztalk/en/us/roadmap.aspx
http://www.microsoft.com/presspass/features/2008/sep08/09-05BizTalk.mspx
Saludos
Friday, August 22, 2008
Pues como siempre es aconsejable empezar por el principio, me he dispuesto a montar una máquina virtual con la R3 de BizTalk. De primeras he montado el SQL Server 2008 sin problemas. Acto seguido, era el turno del Visual Studio 2008. En este caso si que me he encontrado con un pequeño error, aunque si que es verdad que me ha preocupado al menos durante unos minutos. Lo poco que he tardado en encontrar la solución en el blog de ElBruno.
El error es el siguiente
---------------------------
Microsoft Visual Studio 2008 Setup
---------------------------
Error 1330. A file that is required cannot be installed because the cabinet file d:\cab4.cab has an invalid digital signature. This may indicate that the cabinet file is corrupt.
---------------------------
OK
---------------------------
Es un error conocido que se produce al instalar VS 2008 en una máquina virtual desde una iso. La solución, muy simple, copiar el contenido de la iso en la máquina virtual y ejecutar desde allí el setup.
El nuevo reto es instalar la R3...
Aquí podéis ver en detalle como resolver el error: http://geeks.ms/blogs/elbruno/archive/2008/05/20/vs2008-microsoft-visual-studio-2008-setup-error-1330.aspx
Saludos.
Wednesday, July 23, 2008
Hola de nuevo,
Pues nada, quería agradecer al programa MVP que, por un año más, me permitan participar del mismo. Este nuevo "año" viene cargado de novedades, como la release de BizTalk 2006, la R3, que ya os iré contando que novedades trae, y poco a poco más información sobre Oslo. De momento yo estoy en modo vacacional, ya que en 3 días estaré disfrutando del sol y la playa y haré un poco de turismo por Portugal.
Nos vemos a la vuelta, saludos!!!!
Friday, July 11, 2008
En BizTalk Server 2006 R2, cuando en un SendPort se selecciona el Pipeline de envío BTAHL72XSendPipeline en ejecución nos da el siguiente error.
Event Type: Error
Event Source: BizTalk Server 2006
Event Category: BizTalk Server 2006
Event ID: 5720
Date: Date
Time: Time
User: N/A
Computer: ComputerName
Description:
There was a failure executing the send pipeline: "BTAHL72XPipelines.BTAHL72XSendPipeline, BTAHL72XPipelines, Version=1.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Source: "BTAHL7 2.X Assembler" Send Port: "HL7_SP" URI: "C:\Labs\HL7_Outbound\%MessageID%.txt" Reason: Specified cast is not valid.
La solución se puede encontrar en un hotfix del acelerador.
http://support.microsoft.com/kb/941261/en-us/
Saludos.
Tuesday, July 08, 2008
En la creación de un mensaje HL7 se debe crear un mensaje Multipart con 3 partes. Está documentado que los nombres de las partes deben ser los siguientes:
BodySegments
MSHSegment
ZSegments
Ojo con la "s" del final, el de MSH está en singular.
Saludos.
Saturday, June 14, 2008
Durante las sesiones de presentación de Bill Gates y Oliver Sharp en el TechEd se anunció que cuando termine el TechEd se hará pública la CTP (community technology preview) de parte de Oslo. Es una gran noticia para todos los que queremos empezar a juguetear un poco con lo que nos depara el futuro dentro de la división de sistemas conectados de Microsoft.
http://geekswithblogs.net/bloesgen/archive/2008/06/04/122609.aspx
Saludos.
Friday, June 13, 2008
Como he podido conocer a través del Blog de Eduardo Adanza, se ha publicado un completo documento técnico sobre el soporte que da BizTalk Server 2006 R2 a WCF.
http://www.microsoft.com/downloads/details.aspx?familyid=43A3C7C5-9482-4154-B236-C2CE28C61B6C&displaylang=en
Saludos.
Monday, June 09, 2008
Os podeis subscribir y tendreis todos los bloggers más importantes en un único feed.
http://biztalkblogs.com/
Saludos.
Thursday, May 29, 2008
Al hilo del anterior post, una de los problemas más repetidos cuando se trabaja con BizTalk, cómo cambiar el nombre de máquina:
Solución:
Export any information from the BizTalk databases (business rules etc.)
Run ConfigFramework /u
Delete BizTalk jobs in SQL Server Agent
Delete BizTalk logons in SQL Server Security
Delete BizTalk databases
Change computer name
Re-start computer
Change SQL Server Name (with sp_dropserver, sp_addserver)
Run ConfigFramework
Change BizTalkMgmtDB connection in Visual Studio
Change rules engine DB connection in Business Rules Policy Editor
Re-enable BackupBizTalk server DBs job
Add any Hosts and host instances using BizTalk Server Administration
Import information to the BizTalk databases (business rules etc.)
Workaround, para que las máquinas de desarrollo accedan a recursos externos como SourceSafe:
No cambiar el nombre de máquina, usar Shared Networking (NAT) en la VM para que tu máquina host haga de gateway.
Ahora hay dos posibilidades:
- Crear un usuario local en la VM con las mismas credenciales que tu cuenta de dominio usada para autenticarse en los recursos externos
- Si no quieres crear una cuenta local, lanza:
net use \\<servername>\ipc$ /user:<your domain name>\<your user name>
Saludos
El señor Alan Smith ha publicado un post que me parece muy interesante, y como este blog aparte de ser un medio para comunicarme con el exterior sobre temas con los que suelo estar trabajando, es tambien mi memoria extendida, por eso posteo esta guía sobre como montar un laboratorio BizTalk multiserver.
http://geekswithblogs.net/asmith/archive/2007/05/29/112820.aspx
Introduction
One of the great improvements in BizTalk Server 2006 was the ease of the installation and configuration of a developer machine install. Whilst single box installs are now relatively simple, there is still quite a challenge in installing BizTalk Server in a multi-server environment. This article will run through a basic multi server installation of BizTalk Server 2006 using Virtual PC to host the servers.
It’s worth running through a multi server installation using Virtual PC before trying it with real hardware. Using undo disks across multiple virtual machines means you can roll back and try again if the configuration fails, which is a definite time saver. If you want to try this at home, you’ll need basic knowledge of BizTalk 2004 or 2006 single box installation, along with installing all the other server products that go with it. A basic knowledge of creating an Active Directory domain, and creating domain users and groups is good to have too.
I have bullet pointed a few of the setup tasks, but as this is a BizTalk lab, not an Active Directory, IIS, or Windows Server lab, so you’ll have to forgive me for not detailing these too well (there’s plenty of documentation out there for these tasks anyway, right?).
Simplified Install
This lab will focus on the installation of the core BizTalk Server components:
- Enterprise SSO
- BizTalk Group
- BizTalk Runtime
- MSMQT
- Business Rules Engine
Software Used for this Lab
For this lab, I used the software listed below.
- Microsoft Virtual PC 2004 with SP1
- Windows Server 2003 Standard Edition with SP1
- SQL Server 2005 Developer Edition
- BizTalk Server 2006 Developer Edition
I found the best option was to download the ISO files for these from MSDN, which saves swapping CDs.
Using Microsoft Virtual PC
I used Microsoft Virtual PC to host the virtual machines for this setup, it works well, and it’s now free to use. Virtual Server or other products may also work fine.
Cunning Use of Undo Disks
If your first BizTalk multi-box install goes anything like my first attempt, you will be glad of the ability to create undo disks in Virtual PC. For the configuration stages, I usually set undo disks on all the VPC images, then run the configuration, and skip changes if anything went wrong. It’s much easier to run the configuration from a clean setup than to have to manually delete all the databases.
Virtual Machine Settings, RAM and HD Requirements
If you have a gig of ram, you should just be able to have three virtual machines running at the same time, provided you set the ram for each VM accordingly. I’ve found using two gigs of RAM gives much better results.
Here’s a rough guide to how you should set the VM ram.
|
If you have… |
Then… |
|
2 GB |
Use 512 MB for each virtual machine |
|
1 GB |
Use 256 MB for each virtual machine |
|
Less than 1 GB |
Buy more RAM |
I ran this lab with 2 gig ram, and used 512 for each VM. This meant the VMs were running pretty slowly, but it was fine for functionally testing the install.
You’ll also need about 10 - 15 GB hard disk space for the virtual machines. I found that using an external USB2 hard drive gave me more performance than using the internal drive on my laptop.
Local Only Networking
As we are creating a domain for the BizTalk server group, it’s best to work with local only networking on all the VMs. This means it’s easy to set a static IP address for the domain controller VM, and have the other servers use it for DNS and DHCP.
Multi-Box Install Overview
In this lab, I went for the simplest option of a three server configuration, one for Active Directory, SQL Server, and SSO Master Secret Server, and two BizTalk boxes.
|
ServerName |
Description |
|
ADSQL |
Active directory server hosting the BizTalk domain user accounts and groups, also hosts SQL server and the SSO Master Secret Server. |
|
BizTalk1 |
First BizTalk Server to be installed, the Create Group configuration is run on this server. |
|
BizTalk2 |
Second BizTalk server to be installed, the Join Group configuration is run here. |
I placed the SSO Master Secret Serve on the ADSQL Server, as the latest documentation is recommending that in small deployments (where you don’t have a separate cluster for the Master Secret Server), you can have it installed on the same cluster that is hosting the SQL Server.
Creating a Base Image
To save some time installing Windows Server three times, I created a base image that I could copy, SysPrep, and use for the other server installs. To create a base image:
- Install Windows Server 2003 With SP1
- Install Virtual Machine Additions
We can now SysPrep this image to create our servers.
Using SysPrep
The SysPrep tool is used to rename the virtual machine, and ensure that all the security identifiers are replaced in the operating system. If we just rename the machine in the computer properties, we may well run into DTC problems when we attempt to create the BizTalk group using the BizTalk configuration wizard.
The file sysprep.exe is located in the CAB file DEPLOY.CAB in the SUPPORT\TOOLS folder of the windows install disk.
Run SysPrep on the base image to seal it:
- Create a folder C:\Install\Sysprep on the VPC installation
- Copy the contents of DEPLOY.CAB to C:\Install\Sysprep
- Run sysprep.exe
- In the main dialog box, click Reseal
You can then create your servers for the multi-box install starting from this image. Note that you have to enter the key for Windows Server 2003 so keep it handy.
I’ve also tried using the NewSid tool to rename VPCs, but this tends to cause problems with DTC when configuring the BizTalk Servers.
Installing the AD/SQL Server
The first server to install is the Active Directory and SQL Server. This will host the BizTalk domain user accounts and groups, and also the BizTalk Server databases. As this server would be a SQL Server cluster in the real world, the Enterprise Single Sign on Master Secret Server will also be hosted on this server.
Create and Activate the VM
- Make a copy of the base image hard disk file (VHD), rename it to ADSQL Hard Disk.vhd.
- Create a Virtual Machine named ADSQL which uses this drive, set the RAM according to the RAM on your host machine.
- Set the Networking property to Local Only
- Start the Virtual Machine
When the VM starts, it will enter Mini Setup, you will have to enter your key, set the password, and set the time zone. Accept all the other settings as default.
Install Active Directory
When the image starts, you are ready to install Active Directory. The following procedure will install Active Directory, DHCP, and DNS.
- Set the VM to have a static IP address of 192.168.0.1 (Control panel, Network Connections, Local Area Connection, Properties, TCP/IP, Properties, Use 192.168.0.1 for the IP address, and the DNS server).
- Run Manage Your Server, and click Add or Remove a Server Role
- Select Typical configuration for a first server, and enter biztalk.local as the domain name
- Accept all the defaults, selecting No, do not forward queries for the DNS page
- When the install is almost complete, the VM will restart and finish the install
Install SQL Server 2005
Perform a basic installation of SQL Server 2005, selecting SQL Server Database Services and Workstation components, Books Online and Development tools. Use the Local System account as the Service Account, and select SQL Server Agent to start at the end of the setup. This will take a while, and you will be prompted to change discs half way through the process.
Whilst the SQL Install is running, you can also:
- Configure the domain users and groups
- Create, activate, and install BizTalk1
- Create, activate, and install BizTalk2
The BizTalk configuration requires SQL Server to be running.
Configure SQL Server for Remote Connections
In order for the BizTalk servers to connect to SQL Server, remote connections need to be enabled.
- Run SQL Server Surface Area Configuration
- Select Surface Area Configuration for Services and Connections
- On the Database Engine, enable local and remote connections for both protocols
- Restart the database engine
Creating the BizTalk Domain Users and Groups
As we are working in a multi-box environment, we will need to create the active directory users and groups. We will also need to create memberships for some of the accounts in the relevant groups.
Use the Active Directory Users and Computers tool for these tasks; it’s in Administrative Tools on the start menu.
Create a BizTalk Organizational Unit
To keep things tidy, we will place all the BizTalk users and groups in an ou (Organizational Unit).
- Create a new Organizational Unit named biztalk to the biztalk.local domain.
Create the Users
The users are required for the various BizTalk services. I used the same password for all the users, and kept it in a txt file on the desktop so I could copy-paste it when I needed to. (Not good to do in production though). I also copy-pasted the user and group names, you can do this from this article.
Create an organizational unit (ou) names biztalk, and the users and groups in this ou.
For each user:
- Paste the username into FirstName, and User logon name
- Paste the password in both password boxes
- Uncheck User must change password…, check User cannot change password, and Password never expires
|
User |
Description |
|
SsoService |
Enterprise Single Sign-On service account |
|
BizTalkHost |
BizTalk Server host service account |
|
BizTalkIsoHost |
BizTalk Server isolated host account |
|
ReuService |
The Business Rules Engine update Service |
Create the Groups
- Copy-paste the group names to create the following groups in the biztalk ou.
- Add the relevant users to the groups.
|
Group |
Members |
Description |
|
SSO Administrators |
Administrator
SsoService |
Group for administrating SSO |
|
SSO Affiliate Administrators |
|
Group for administrating SSO |
|
BizTalk Server Administrators |
Administrator |
BizTalk administration users |
|
BizTalk Server Operators |
|
BizTalk operation users |
|
BizTalk Application Users |
BizTalkHost |
BizTalk in process host instances |
|
BizTalk Isolated Host Users |
BizTalkIsoHost |
BizTalk out of process host instances |
These groups will be used for the security configuration of the BizTalk Server databases.
Configure DTC
In order for BizTalk to run against the databases on a remote SQL server, you will need to configure the DTC options.
- In the Add or Remove Programs section of the control panel, select Add/Remove Windows Components
- Select Enable network COM+ access and Enable network DTC access
- Restart the server
Install and Configure Enterprise Single Sign-On Master Secret Server
The SSO Master Secret server will be installed on the ADSQL Server. In a production environment, the SQL Server would probably be hosted on a clustered server, it is also possible to host the Master Secret Server in the same cluster as the SQL Server hosting the BizTalk databases.
- Run the BizTalk Server Installation
- On the Installation options, select ESSO Administration module and ESSO Master Secret Server only
- After the installation, launch Configuration, and select Custom Configuration
- Configure the SSO Service to create a new SSO System
- Use the SSO Service domain account (BIZTALK\SsoService)
- Set the SSO groups to BIZTALK\SSO Administrators and BIZTALK\SSO Affiliate Administrators respectively
- Set a password and reminder for the Master Secret backup
- Apply the configuration
- Use Event Viewer to verify the ENTSSO service has started successfully
Install the First BizTalk Server
- Make a copy of the base image hard disk file (VHD), rename it to BizTalk1 Hard Disk.vhd.
- Create a Virtual Machine named BizTalk1 which uses this drive, set the RAM according to the RAM on your host machine.
- Set the Networking property to Local Only
- Start the Virtual Machine
- Complete the mini-setup, using BIZTALK1 as the computer name
Install BizTalk Server 2006
As we are using local networking, we will need to download the BtsRedistXpEN32.cab file in order to install the BizTalk prerequisites. To save a bit of drive space I created a compressed folder named Install, and copied the Bts Install files and the CAB file into it.
These are the options I selected:
- Documentation
- Server Runtime (without Base EDI Adapter)
- Administration Tools
- Additional Software / Business Rules Components
Copy the Image to create BizTalk2
We can now make a copy of BizTalk1 Hard Disk.vhd, and rename it to BizTalk2 Hard Disk.vhd, this will allow us to SysPrep this image to create BizTalk2.
- Shut down BizTalk1
- Make a copy of BizTalk1 Hard Disk.vhd
- Rename the copy BizTalk2 Hard Disk.vhd
Join the biztalk Domain
Use My Computer – Properties – Computer Name to join the biztalk domain.
Configure DTC
In order for BizTalk to run against the databases on a remote SQL server, you will need to configure the DTC options.
- In the Add or Remove Programs section of the control panel, select Add/Remove Windows Components
- Select Enable network COM+ access and Enable network DTC access
- Restart the server
Creating the BizTalk Group
Set Undo Disks
Now it the time to use the undo disks, if things go bad, it’s great to be able to roll back to how things were before, and have another try.
- Shut down VMSQL and BIZTALK1
- Enable undo disks on both VMs
- Start VMSQL
- Start BIZTALK1
- Logon to BizTalk1 as the BIZTALK domain administrator (BIZTALK\Administrator).
Configure BizTalk1
In order to access the domain accounts, you will need to logon to BizTalk1 as the BizTalk domain administrator (BIZTALK\Administrator).
Run Configuration from the BizTalk 2006 menu, and select Custom configuration.
Configure BizTalk as follows:
|
Section |
Tasks |
|
Enterprise SSO |
Enable ESSO
Join an existing SSO system
Database Server Name – ADSQL
Set the account name to BIZTALK\SsoService |
|
Enterprise SSO Secret Backup |
No changes |
|
Group |
Enable BizTalk Server Group on this computer
Create a new BizTalk Group
Database Server Name – ADSQL (3 databases)
Set the group names to BIZTALK\BizTalk Server Administrators and BIZTALK\BizTalk Server Operators |
|
BizTalk Runtime |
Register BizTalk Server runtime components
Create BizTalk In-Process Host and Host Instance
Create BizTalk Isolated Host and Host Instance
Set the account names to BIZTALK\BizTalkHost and BIZTALK\BizTalkIsoHost)
Set the group names to BIZTALK\BizTalk Application Users and BIZTALK\BizTalk Isolated Host Users |
|
MSMQT |
No changes |
|
Business Rule Engine |
Enable Business Rules Engine on this computer
Database Server Name – ADSQL
Set the account name to BIZTALK\ReuService
|
|
HWS Runtime |
No changes |
|
BAM Tools |
No changes |
|
BAM Alerts |
No changes |
Export Configuration
BizTalk 2004 provided the option to save the configuration file after completing the Wizard. BizTalk 2006 allows you to export, and import configuration files, which means you can re-use your create group configuration settings for using when you join the group on the second server. Better still, you can leave the passwords out of the configuration, meaning configuration files can be distributed without them containing sensitive information. This allows an administrator to import the configuration, set the passwords, and then configure the server, ensuring that the users, groups, and database settings are consistent.
Apply configuration
Apply the configuration. This is the most likely point of failure in this lab (hence the undo disks). If things go bad, take a while to look at the problem, and check that you have completed the setup of the servers correctly.
Checklist
DTC Settings Enabled
Verify Configuration
Check the Application section of the Windows Event log, there should be lots of Information entries, and no errors or warnings relating to BizTalk or ESSO.
Start the BizTalk Server administration console and verify the BizTalk Server host instance is started.
Try stopping and starting the host instance.
Configure the BizTalk2
The second BizTalk server will be configured with the “Join Group” option.
Activate the Image and Join the Domain
- Create a Virtual Machine based on BizTalk2 Hard Disk.vhd, ensure that you have selected Local Only networking
- Start the VM, and then run SysPrep.
- Start the VM again, and complete the mini-setup, using BIZTALK2 as the computer name.
- Join BizTalk2 to the BIZTALK domain
- Restart BizTalk2, and log on as the BIZTALK domain administrator (BIZTALK\Administrator).
Configure BizTalk2
As you have already configured BizTalk1, and exported the configuration file, you can use this file for the basic settings of the BizTalk2 configuration. When you import this configuration file, you will need to set some of the options, and set the passwords for the accounts.
- Ensure you are logged on as the BIZTALK domain administrator (BIZTALK\Administrator).
- Copy the configuration file to BizTalk2
- Start the BizTalk Configuration application
- Import the configuration file
- Use the “Join Group” option in the configuration section
The configuration for BizTalk2 will run much faster than for BizTalk1, as the BizTalk databases have already been created on ADSQL.
Troubleshooting
Hopefully I’ve covered all the important points to get up and running with a multi-box install. But there are bound to be issues that people will hit. Some of the common ones are:
- DTC Configuration Issues – Check the settings. Sometimes it may help configure the servers as application servers, (adds IIS and DTC functionality), as this seems to set the correct DTC settings.
- SID Conflicts – If the virtual images are not sys-prepped, the SIDs can cause conflicts with the DTC configuration.
- Security Issues – Make sure you are logged on as Domain Admin when you configure the BizTalk servers.
- Databases Already Exist – If a configuration fails, you will need to delete the existing BizTalk databases before you run config again. I find it’s easiest to use undo disks, and skip changes if there’s an error.
Testing the Installation
Once you have the multi-server environment setup, there’s quite a few things you can test on it.
- Creating a multi server deployment package for a BizTalk application. I usually setup a file share on ADSQL when using the file adapter.
- Stop the SSO Master Secret Server on ADSQL, and see how the BizTalk Servers react.
- Shut down one of the BizTalk Servers when processing a batch of messages and check out the recoverability. I usually use PerfMon on ADSQL to monitor the BizTalk servers using the BizTalk perf counters.
Tuesday, May 27, 2008
Ha sido anunciada la nueva release de BizTalk, la R3. http://blogs.msdn.com/stevemar/archive/2008/04/23/biztalk-server-platform-updates.aspx
Actualización que como principal característica aporta compatibilidad con los nuevos productos Microsoft: Visual Studio 2008, SQL Server 2008, .Net Framework 3.5...
Y para los clientes que adquieran la R3 con Software Assurance disfrutarán de nuevas capacidades B2B http://blogs.msdn.com/stevemar/archive/2008/05/01/enhancements-to-biztalk-b2b-functionality.aspx
Saludos.