Tutorial: Implementación de una aplicación de Service Fabric en un clúster en Azure
Este tutorial es la segunda parte de una serie. Aprenda a implementar una aplicación de Azure Service Fabric en un clúster nuevo en Azure.
En este tutorial, aprenderá a:
- Crear un clúster
- Implementar una aplicación en un clúster remoto mediante Visual Studio
En esta serie de tutoriales se muestra cómo realizar las siguientes acciones:
- Crear una aplicación de .NET Service Fabric
- Implementar la aplicación en un clúster remoto (este tutorial)
- Agregar un punto de conexión HTTPS a un servicio de front-end de ASP.NET Core
- Configuración de CI/CD con Azure Pipelines
- Configurar la supervisión y el diagnóstico para la aplicación
Requisitos previos
Antes de empezar este tutorial:
- Si no tiene una suscripción a Azure, cree una cuenta gratuita.
- Instale Visual Studio 2019 incluidas las cargas de trabajo de desarrollo de Azure y la carga de trabajo de desarrollo de ASP.NET y web.
- Instale el SDK de Service Fabric.
Nota:
Es posible que una cuenta gratuita no cumpla los requisitos para crear una máquina virtual. Para completar el tutorial, debe crear una máquina virtual. Además, una cuenta que no es una cuenta profesional o educativa podría tener problemas de permisos al crear el certificado en el almacén de claves asociado al clúster. Si se produce un error al crear el certificado, use Azure Portal para crear el clúster en su lugar.
Descarga de la aplicación de ejemplo de votación
Si no compiló la aplicación de ejemplo de votación en la primera parte de esta serie de tutoriales, puede descargarla. En una ventana Comandos, ejecute el siguiente código para clonar el repositorio de la aplicación de ejemplo en el equipo local:
git clone https://github.com/Azure-Samples/service-fabric-dotnet-quickstart
Abra Visual Studio con la opción Ejecutar como administrador. Abra la aplicación y, a continuación, compile la aplicación.
Crear un clúster
Ahora que la aplicación está lista, cree un clúster de Service Fabric e implemente la aplicación en él. Un clúster de Service Fabric es un conjunto de máquinas virtuales o equipos físicos conectados a la red, en las que implementa y administra los microservicios.
En este tutorial, creará un nuevo clúster de prueba de tres nodos en el entorno de desarrollo integrado (IDE) de Visual Studio y, después, publicará la aplicación en dicho clúster. Para obtener información sobre cómo crear un clúster de producción, consulte Crear y administrar clústeres. También puede implementar la aplicación en un clúster existente que creó anteriormente mediante Azure Portal, Azure PowerShell, scripts de la CLI de Azure, o desde una plantilla de Azure Resource Manager.
Nota:
La aplicación de votación, como muchas otras aplicaciones, usa el proxy inverso de Service Fabric para comunicarse entre servicios. Los clústeres que creó con Visual Studio tienen el proxy inverso habilitado de forma predeterminada. Si va a realizar la implementación en un clúster existente, debe habilitar el proxy inverso en el clúster para que la aplicación de votación funcione.
Buscar el punto de conexión de servicio VotingWeb
El servicio web de front-end de la aplicación de votación escucha a un puerto específico (puerto 8080 si ha seguido en los pasos descritos en la primera parte de esta serie de tutoriales). Cuando la aplicación se implementa en un clúster de Azure, el clúster y la aplicación se ejecutan detrás de un equilibrador de carga de Azure. El puerto de la aplicación se debe abrir en Azure Load Balancer mediante una regla. Dicha regla envía el tráfico entrante a través del equilibrador de carga al servicio web. El puerto se establece en el archivo /VotingWeb/PackageRoot/ServiceManifest.xml, en el elemento Endpoint
.
<Endpoint Protocol="http" Name="ServiceEndpoint" Type="Input" Port="8080" />
Tome nota del punto de conexión de servicio, ya que se necesita en un paso posterior. Si va a realizar la implementación en un clúster existente, abra este puerto mediante la creación de una regla y un sondeo de equilibrio de carga en Azure Load Balancer mediante un script de Azure PowerShell o a través del equilibrador de carga de este clúster de Azure Portal.
Creación de un clúster de prueba en Azure
En el Explorador de soluciones, haga clic con el botón derecho en Voting y seleccione Publicar.
En Punto de conexión, seleccione Crear nuevo clúster. Si va a realizar la implementación en un clúster existente, seleccione el punto de conexión del clúster en la lista. Se abre el cuadro de diálogo Crear clúster de Service Fabric.
En la pestaña Clúster, escriba el nombre del clúster (por ejemplo, mytestclustergroup), seleccione su suscripción, seleccione una región para el clúster (como Centro-sur de EE. UU.), escriba el número de nodos del clúster (se recomiendan tres nodos para un clúster de prueba) y escriba un grupo de recursos (como mytestclustergroup
). Seleccione Siguiente.
En la pestaña Certificado, escriba la contraseña y la ruta de acceso de salida del certificado del clúster. Los certificados autofirmados se crean como los archivos de intercambio de información personal (PFX) y se guardan en la ruta de acceso de salida especificada. El certificado se usa tanto para la seguridad de nodo a nodo como para la de cliente a nodo. No use un certificado autofirmado para clústeres de producción. Visual Studio usa este certificado para autenticarse con el clúster e implementar aplicaciones.
Seleccione la casilla Importar certificado para instalar el archivo PFX en el almacén de certificados CurrentUser\My del equipo. Después, seleccione Siguiente.
En la pestaña Detalle de máquina virtual, escriba el nombre de usuario y la contraseña de la cuenta de administrador del clúster. Seleccione el valor de imagen de máquina virtual de los nodos del clúster y el valor de tamaño de máquina virtual de cada uno de los nodos del clúster.
Seleccione la pestaña Opciones avanzadas . Para Puertos, escriba el punto de conexión de servicio VotingWeb del paso anterior (por ejemplo, 8080). Cuando se crea el clúster, se abren estos puertos en Azure Load Balancer para reenviar el tráfico al clúster.
Seleccione Crear para crear el clúster. El proceso tarda varios minutos.
Publicación de la aplicación en el clúster
Cuando el clúster nuevo esté listo, puede implementar la aplicación Voting directamente en Visual Studio.
En el Explorador de soluciones, haga clic con el botón derecho en Voting y seleccione Publicar. Aparece el cuadro de diálogo Publicar.
Para el Punto de conexión, seleccione el punto de conexión del clúster que creó en el paso anterior. Por ejemplo, mytestcluster.southcentralus.cloudapp.azure.com:19000
. Si selecciona Parámetros de conexión avanzada , se rellena automáticamente la información del certificado.
Seleccione Publicar.
Después de que la aplicación esté implementada, abra un explorador y escriba la dirección del clúster, seguida de :8080
. O especifique otro puerto si hay uno configurado. Un ejemplo es http://mytestcluster.southcentralus.cloudapp.azure.com:8080
. La aplicación se está ejecutando en el clúster en Azure. En la página web de votación, intente agregar y eliminar opciones de votación.
Paso siguiente
Avance hasta el siguiente tutorial: