Compartir a través de


Cargas de trabajo saaS bien diseñadas de Azure

La creación y el funcionamiento de software como servicio (SaaS) en Microsoft Azure requiere un enfoque diferente en comparación con otros tipos de software. Los proveedores de software independientes (ISV) tienen una posición única en el ecosistema de la nube porque sus soluciones SaaS impulsan su negocio. Venden sus productos a empresas, también conocidas como negocio a negocio (B2B) o a los consumidores, también conocidos como negocio a consumidor (B2C). Normalmente, los ISV hospedan y mantienen la solución SaaS que compilan. Sus clientes configuran el producto y administran los datos.

Una solución creada con well-Architected Framework garantiza que la carga de trabajo pueda funcionar a escala. Esta serie de artículos proporcionan información clave para crear soluciones SaaS escalables, eficaces, confiables y seguras en Azure. Si aún no está familiarizado con el marco bien diseñado, le sugerimos que dedique algún tiempo a aprender sus principios.

Consulte los pilares de Microsoft Azure Well-Architected Framework.

¿Qué es una carga de trabajo de SaaS?

El término carga de trabajo hace referencia a una colección de recursos de aplicación que admiten un objetivo empresarial común o la ejecución de un proceso de negocio común, con varios servicios, como API y almacenes de datos, trabajando juntos para ofrecer funcionalidades específicas de un extremo a otro.

El término SaaS hace referencia al modelo de negocio de la entrega de software como servicio. Como proveedor, usted es responsable de entregar y operar toda la solución. Debe administrar cuidadosamente los entornos de cliente a gran escala al tiempo que cumple los requisitos de aislamiento, seguridad y cumplimiento del cliente. Las soluciones SaaS suelen basarse en una arquitectura multiinquilino, donde los recursos se comparten entre varios clientes. Este enfoque influye en el diseño y la implementación de recursos, así como en el modelo de precios que se ofrece a los clientes.

¿Cuáles son los desafíos comunes?

Microsoft Azure es una plataforma excelente para ofrecer SaaS, ofreciendo la elasticidad y escalabilidad necesarias. También proporciona características para automatizar varios aspectos de la entrega de SaaS. Sin embargo, la entrega de SaaS en Azure incluye su propio conjunto de desafíos:

  • Las expectativas de los clientes son alta, exigente calidad, seguridad y resistencia. En el caso de las soluciones B2B, básicamente se convierte en una extensión de los departamentos de TI de sus clientes, teniendo la responsabilidad de mantener la solución en funcionamiento y en buen estado. Esto requiere un cambio de simplemente desarrollar software para operarlo a escala.

  • La entrega de SaaS significa equilibrar sus propias necesidades empresariales con las de sus clientes, lo que a veces puede entrar en conflicto. Tendrá que enfrentarse a la presión para reducir el costo de los productos vendidos (COGS) y aumentar la eficiencia, mientras que los clientes exigen más de la solución.

  • SaaS suele funcionar a gran escala o con objetivos de crecimiento agresivos. A medida que se escala, mantener el rendimiento y la confiabilidad, al tiempo que se reduce la complejidad operativa, es fundamental. Las operaciones manuales son poco prácticas, por lo que es necesario automatizar y estructurar los procesos, lo que requiere un grado de madurez operativa.

  • El aislamiento es un requisito crítico cuando se comparte la infraestructura entre los clientes. Los clientes esperan que sus datos sean seguros y experimenten un rendimiento y confiabilidad coherentes, independientemente de las actividades de otros clientes. Como proveedor, tiene una responsabilidad significativa para proteger los datos y las cargas de trabajo de los clientes, incluidos los de otros clientes.

¿Cuál es el modelo de madurez para compilar SaaS?

Normalmente, las organizaciones que compilan productos SaaS son:

  • Startups u otras pequeñas organizaciones. Normalmente, hay menos personas y menos recursos. Independientemente del tamaño de la organización, SaaS requiere cierto nivel de madurez para satisfacer altas expectativas de los clientes. Los clientes confían en la organización para proteger sus datos y otros recursos. También pueden confiar en la solución para partes importantes de sus operaciones. Por lo tanto, la excelencia operativa y la confiabilidad se convierten en aspectos clave de la solución.

    Inicialmente, las startups deben priorizar los elementos más impactantes para sus clientes. En paralelo, deben planear mejoras arquitectónicas futuras, como la automatización, la administración de inquilinos, la reducción de costos y la seguridad y la confiabilidad mejoradas. Aunque esto no parezca práctico al principio, esta planificación estratégica sirve como plano técnico para la implementación gradual y la mejora continua. A medida que crece el inicio, debe adaptar y refinar sus procesos, adoptar nuevas tecnologías y cumplir los estándares de cumplimiento en constante evolución para escalar de forma eficaz y mantener la confianza del cliente.

  • Organizaciones establecidas. Las organizaciones establecidas que buscan modernizar sus soluciones existentes suelen migrar a un modelo SaaS. Aunque la organización puede tener más recursos, los desafíos se vuelven complejos. Deben admitir a los clientes existentes al desarrollar la nueva solución SaaS, que puede crear sobrecarga operativa. Esta transición requiere cambios en la arquitectura técnica, los conjuntos de aptitudes y las operaciones empresariales generales. El enfoque debe ser minimizar el impacto en los clientes actuales y asegurarse de que reciben confiabilidad, seguridad y rendimiento similares o mejorados. Una vez que las soluciones heredadas son menos pesadas, la organización puede priorizar las nuevas características y mejoras.

¿Cómo usar esta guía?

Comience con la metodología de diseño, que describe los temas racionales y periódicos en áreas técnicas y operativas. Este enfoque sistemático ayuda a definir requisitos y estrategias de diseño. Vuelva a consultar esta metodología cuando se enfrentan a opciones inciertas para mantenerse alineadas con los objetivos generales de la carga de trabajo. También proporciona un marco para colaborar con los equipos de marketing y ventas para validar las decisiones técnicas e incorporar comentarios de los clientes para mejorar continuamente.

Vaya a Principios de diseño para ver cómo se alinea la metodología de diseño de SaaS con los pilares principales del marco bien diseñado, considerando la evolución del crecimiento. Evalúe los principios subyacentes de todos los pilares colectivamente, incluidos los inconvenientes.

Céntrese en las áreas de diseño que tengan el mayor impacto en la solución. Cada área incluye consideraciones y recomendaciones para guiarle a través de las decisiones de diseño.

Área de diseño
Facturación y administración de costos: evalúe su estrategia de facturación y su efecto en el costo de las mercancías vendidas (COGS). Modele y anticipe los cambios de costos a medida que se escala la empresa SaaS. Busque formas de optimizar los gastos de recursos en la nube.
Gobernanza: administre y regule el uso del servicio en la nube para establecer un entorno seguro de Azure.
Organización de recursos: planee cómo implementará los recursos para admitir los requisitos de escala y costo.
Administración de identidades y acceso: comprenda los desafíos de administrar la identidad en un entorno saaS multiinquilino. Elija un proveedor de identidades adecuado y considere la necesidad de federación con los sistemas de identidad de los clientes.
Proceso: seleccione una plataforma de proceso que satisfaga sus necesidades. Planee el aislamiento, la escalabilidad y la resistencia de los clientes.
Redes: planee la implementación de red, incluida la topología y las defensas. Aísle los recursos entre los clientes y satisfaga sus necesidades de conectividad, incluida la integración con sus redes e implementación de recursos en sus entornos.
Datos: elija un almacén de datos adecuado y planee aislar los datos de los clientes al tiempo que mantiene la eficacia operativa. Considere la posibilidad de planear la capacidad en función de la escala y el crecimiento, y asegúrese de que los datos cumplen los requisitos de resistencia de los clientes.
Prácticas de DevOps: implemente la infraestructura y las aplicaciones para cada cliente según el modelo de arrendamiento. Use un enfoque estructurado para los cambios, incluidas las implementaciones progresivas.
Administración de incidentes: establezca responsabilidades de funcionamiento de SaaS y los elementos culturales necesarios dentro de su organización. Prepárese para incidentes invirtiendo en herramientas y procesos para la investigación, corrección y comunicación.

Use la herramienta de revisión de evaluación para evaluar la preparación de la carga de trabajo de SaaS optimizada en producción.

Sugerencia

Cada decisión arquitectónica implica una serie de consideraciones y un conjunto de compromisos reconocidos que equilibran distintos aspectos del marco. Estos inconvenientes se indican mediante este icono. .

¿Qué recursos están disponibles?

Multiinquilino es una metodología empresarial básica para diseñar cargas de trabajo de SaaS. Lea estos recursos adicionales para obtener más información.

  • Arquitectura de soluciones SaaS y multiinquilino: proporciona instrucciones exhaustivas y detalladas sobre cómo diseñar SaaS, incluida información sobre cómo se pueden usar los servicios específicos de Azure para admitir los objetivos de diseño de SaaS.

Pasos siguientes

Comprenda la metodología que se debe seguir al diseñar una carga de trabajo de SaaS en Azure.