Exportar (0) Imprimir
Expandir todo

Problemas comunes que causan el reciclaje de los roles

Actualizado: enero de 2014

En esta sección se enumeran algunas de las causas comunes de problemas de implementación y proporciona sugerencias para la resolución de estos problemas. Una indicación de que existe un problema con una aplicación es cuando la instancia de rol no puede iniciarse o cuando entra en un bucle de estado inicializando, ocupado y deteniendo.

Dependencias en tiempo de ejecución que faltan

Si un rol de la aplicación se basa en algún ensamblado que no forme parte de .NET Framework o de la biblioteca administrada de Windows Azure, debe incluir explícitamente ese ensamblado en el paquete de aplicación. Tenga presente que otros marcos de trabajo de Microsoft no están disponibles en Windows Azure de forma predeterminada. Si el rol se basa en un marco de trabajo tal, debe agregar esos ensamblados al paquete de la aplicación.

Antes de compilar y empaquetar la aplicación, compruebe lo siguiente:

  • La propiedad Copy Local se establece en True para cada ensamblado del proyecto que no forme parte de Windows Azure SDK o .NET Framework, si utiliza Visual Studio. Si no utiliza Visual Studio, debe especificar las ubicaciones para los ensamblados referenciados cuando llame a CSPack. Para obtener más información sobre el uso de CSPack, vea Herramienta de línea de comandos CSPack.

  • El archivo web.config no hace referencia a ningún ensamblado sin usar el elemento compilation, y todas las referencias señalan a ensamblados que bien forman parte de .NET Framework o Windows Azure SDK, tienen la propiedad Copy Local establecida en True en Visual Studio o bien se incluyen en el paquete de la aplicación mediante la ejecución de CSPack.

  • Build Action de cada archivo .cshtml se establece en Content. Esto garantiza que los archivos aparezcan correctamente en el paquete y permite que otros archivos referenciados aparezcan en el paquete.

El ensamblado tiene como destino la plataforma equivocada

Windows Azure es un entorno de 64 bits. Por tanto, los ensamblados de .NET compilados para un destino de 32 bits no funcionarán en Windows Azure.

El rol genera excepciones no controladas cuando se inicializa o se detiene

Cualquier excepción que produjeran los métodos de la clase RoleEntryPoint que incluya OnStart, OnStop y Run son excepciones no controladas. Si una excepción no controlada se produce en uno de estos métodos, el rol se reciclará. Si el rol se recicla de forma repetida, es posible que esté produciendo una excepción no controlada cada vez que intente iniciarse.

El rol de devuelve el método Run

El método Run está diseñado para que se ejecute indefinidamente. Si el código invalida el método Run, podría quedarse inactivo para siempre. Si se devuelve el método Run, el rol se recicla.

Configuración incorrecta de DiagnosticsConnectionString

Si la aplicación utiliza Diagnóstico de Windows Azure, el archivo de configuración de servicio debe especificar el valor de configuración DiagnosticsConnectionString. Este valor debe especificar una conexión HTTPS a la cuenta de almacenamiento en Windows Azure.

Para asegurarse de que el valor de DiagnosticsConnectionString sea correcto antes de implementar el paquete de aplicación en Windows Azure, compruebe lo siguiente:

  • El valor de DiagnosticsConnectionString señala a una cuenta de almacenamiento en Windows Azure. De forma predeterminada, este valor apunta a la cuenta de almacenamiento emulado, por tanto, debe cambiar explícitamente esta configuración antes de implementar el paquete de aplicación. Si no cambia este valor, se produce una excepción cuando la instancia de rol intenta iniciar el monitor de diagnóstico. Esto puede hacer que la instancia de rol se recicle indefinidamente.

  • La cadena de conexión se especifica en el formato siguiente (el protocolo que se especifique debe ser HTTPS). Reemplace MyAccountName con el nombre de la cuenta de almacenamiento, y MyAccountKey con la clave de acceso:

    DefaultEndpointsProtocol=https;AccountName=MyAccountName;AccountKey=MyAccountKey
    
    Para obtener más información acerca del uso de las cadenas de conexión, vea Configurar las cadenas de conexión de Windows Azure.

Si está desarrollando una aplicación con herramientas de Windows Azure para Microsoft Visual Studio, puede usar las páginas de propiedades para establecer este valor. Para obtener más información sobre cómo usar Visual Studio para establecer los valores de configuración, vea Configuring the Cloud Service.

El certificado exportado no incluye una clave privada

Para ejecutar un rol web con SSL, debe asegurarse de que el certificado de administración exportado incluye la clave privada. Si utiliza el Administrador de certificados de Windows para exportar el certificado, asegúrese de seleccionar la opción de Exportar la clave privada. El certificado debe exportarse al formato PFX, que es el único formato que se admite actualmente.

Vea también

Mostrar:
© 2015 Microsoft