Información general de Azure Cloud Services (clásico)
Importante
Cloud Services (clásico) ahora está en desuso para todos los clientes a partir del 1 de septiembre de 2024. Microsoft detendrá y apagará las implementaciones en ejecución existentes y los datos se perderán de forma permanente a partir de octubre de 2024. Las nuevas implementaciones deben utilizar el nuevo modelo de implementación basado en Azure Resource Manager Azure Cloud Services (soporte extendido) .
Azure Cloud Services es un ejemplo de plataforma como servicio (PaaS). Al igual que Azure App Service, esta tecnología está diseñada para ser compatible con aplicaciones escalables, confiables y de funcionamiento asequible. En la misma manera que App Service se hospeda en máquinas virtuales (VM), así ocurre también con Azure Cloud Services. Sin embargo, tiene más control sobre las máquinas virtuales. Puede instalar su propio software en las máquinas virtuales que usan Azure Cloud Services y puede tener acceso a ellas remotamente.
Más control también significa menos facilidad de uso. A menos que necesite más opciones de control, normalmente es más rápido y fácil poner en marcha una aplicación web en la característica Web Apps de App Service que en Azure Cloud Services.
Hay dos tipos de roles de Azure Cloud Services. La única diferencia entre ambos es cómo se hospeda el rol en las máquinas virtuales:
Rol web: implementa y hospeda automáticamente la aplicación a través de Internet Information Services (IIS).
Rol de trabajo: no usa IIS y ejecuta la aplicación de forma independiente.
Por ejemplo, una aplicación simple podría utilizar solo un rol web, para dar servicio a un sitio web. Una aplicación más compleja podría utilizar un rol web para tratar las solicitudes entrantes provenientes de los usuarios y luego transmitirlas a un rol de trabajo para su procesamiento. (Esta comunicación podría usar Azure Service Bus o Azure Queue Storage).
Como sugiere la ilustración anterior, todas las VM de una sola aplicación se ejecutan en el mismo servicio en la nube. Los usuarios acceden a la aplicación a través de una sola dirección IP pública y el equilibrio de carga de las solicitudes se realiza automáticamente en todas las VM de la aplicación. La plataforma escala e implementa las máquinas virtuales en una aplicación de Azure Cloud Services para así evitar un único punto de errores de hardware.
A pesar de que las aplicaciones se ejecutan en máquinas virtuales, resulta importante comprender que Azure Cloud Services proporciona PaaS y no una infraestructura como servicio (IaaS). Esta es una manera de considerarlo. Con IaaS, como Azure Virtual Machines, primero crea y configura el entorno en el que la aplicación se ejecuta. A continuación, implementa la aplicación en este entorno. Es responsabilidad suya administrar gran parte de él, por ejemplo, debe implementar las nuevas versiones revisadas del sistema operativo en cada máquina virtual. Por el contrario, en PaaS ocurre como si el entorno ya existiese. Todo lo que tiene que hacer es implementar la aplicación. Usted maneja la administración de la plataforma en que se ejecuta, incluida la implementación de versiones nuevas del sistema operativo.
Escalado y administración
Con Azure Cloud Services no se crean máquinas virtuales. En su lugar, usted proporciona un archivo de configuración que indica a Azure cuántas de cada una desea. Por ejemplo, "tres instancias de roles web" y "dos instancias de rol de trabajador". Después, la plataforma las crea para usted. Sigue siendo necesario que elija qué tamaño deben tener esas máquinas virtuales (las opciones son las mismas que con las máquinas virtuales de Azure), pero no tiene que crearlas por sí mismo explícitamente. Si la aplicación necesita manejar una carga mayor, puede pedir más VM y Azure creará esas instancias. Si la carga disminuye, puede apagar esas instancias y así dejar de pagar por ellas.
Una aplicación de Azure Cloud Services normalmente está a disposición de los usuarios a través de un proceso de dos pasos. Un desarrollador primero carga la aplicación en el área de ensayo de la plataforma. Cuando el desarrollador está preparado para activar definitivamente la aplicación, utiliza Azure Portal para intercambiar el ensayo por la producción. Este intercambio entre el área de ensayo y la producción se puede llevar a cabo sin tiempo de inactividad, lo que permite actualizar una aplicación en ejecución a una versión nueva sin interrumpir ni molestar a sus usuarios.
Supervisión
Azure Cloud Services también proporciona supervisión. Al igual que con Azure Virtual Machines, detecta un servidor físico con errores y reinicia las máquinas virtuales que se ejecutaban en ese servidor en una máquina nueva. Pero Azure Cloud Services también detecta las máquinas virtuales y aplicaciones con errores, no solo los errores de hardware. A diferencia de Máquinas virtuales, Servicios en la nube tiene un agente dentro de cada rol web o rol de trabajo, por lo que puede iniciar nuevas instancias de aplicaciones y máquinas virtuales cuando se produce un error.
La naturaleza PaaS de Azure Cloud Services tiene también otras implicaciones. Una de las implicaciones más importantes es que debe escribir las aplicaciones creadas sobre la base de esta tecnología para ejecutarse correctamente en caso de error en cualquier instancia de rol web o de trabajo. Para lograr este objetivo, las aplicaciones de Azure Cloud Services no deben mantener el estado en el sistema de archivos de sus propias máquinas virtuales. A diferencia de lo que ocurre en las máquinas virtuales creadas con Azure Virtual Machines, las escrituras realizadas en máquinas virtuales de Azure Cloud Services no son persistentes. No es como un disco de datos de Azure Virtual Machines. En su lugar, una aplicación de Azure Cloud Services debe escribir explícitamente todo el estado en Azure SQL Database, blobs, tablas u algún otro tipo de almacenamiento externo. Cuando se crean aplicaciones de esta manera, estas resultan más fáciles de escalar y son más resistentes ante los errores. La escalabilidad y la resistencia son objetivos importantes de Azure Cloud Services.