El pilar de confiabilidad del marco de trabajo de arquitectura deGoogle Cloud proporciona principios y recomendaciones para ayudarte a diseñar, implementar y administrar cargas de trabajo confiables en Google Cloud.
Este documento está dirigido a arquitectos, desarrolladores, ingenieros de plataformas, administradores y de confiabilidad de sitios de la nube.
La confiabilidad es la capacidad de un sistema para realizar de forma coherente las funciones previstas dentro de las condiciones definidas y mantener un servicio sin interrupciones. Las prácticas recomendadas para la confiabilidad incluyen la redundancia, el diseño tolerante a errores, la supervisión y los procesos de recuperación automatizados.
Como parte de la confiabilidad, la resiliencia es la capacidad del sistema para resistir y recuperarse de fallas o interrupciones inesperadas, a la vez que mantiene el rendimiento. LasGoogle Cloud funciones, como las implementaciones multirregionales, las copias de seguridad automatizadas y las soluciones de recuperación ante desastres, pueden ayudarte a mejorar la resiliencia de tu sistema.
La confiabilidad es importante para tu estrategia de nube por muchos motivos, incluidos los siguientes:
- Tiempo de inactividad mínimo: El tiempo de inactividad puede generar pérdida de ingresos, productividad reducida y daños en la reputación. Las arquitecturas resilientes pueden ayudar a garantizar que los sistemas puedan seguir funcionando durante las fallas o recuperarse de ellas de manera eficiente.
- Experiencia del usuario mejorada: Los usuarios esperan interacciones fluidas con la tecnología. Los sistemas resilientes pueden ayudar a mantener un rendimiento y una disponibilidad coherentes, y proporcionan un servicio confiable incluso durante períodos de alta demanda o problemas inesperados.
- Integridad de datos: Las fallas pueden provocar la pérdida o corrupción de datos. Los sistemas resilientes implementan mecanismos como copias de seguridad, redundancia y replicación para proteger los datos y garantizar que permanezcan precisos y accesibles.
- Continuidad del negocio: Tu empresa depende de la tecnología para las operaciones críticas. Las arquitecturas resilientes pueden ayudar a garantizar la continuidad después de una falla catastrófica, lo que permite que las funciones comerciales continúen sin interrupciones significativas y admita una recuperación rápida.
- Cumplimiento: Muchas industrias tienen requisitos reglamentarios para la disponibilidad del sistema y la protección de los datos. Las arquitecturas resilientes pueden ayudarte a cumplir con estos estándares, ya que garantizan que los sistemas permanezcan operativos y seguros.
- Menores costos a largo plazo: Las arquitecturas resilientes requieren una inversión inicial, pero la resiliencia puede ayudar a reducir los costos con el tiempo, ya que evita tiempos de inactividad costosos, evita las correcciones reactivas y permite un uso más eficiente de los recursos.
Mentalidad organizacional
Para que tus sistemas sean confiables, necesitas un plan y una estrategia establecidos. Esta estrategia debe incluir la educación y la autoridad para priorizar la confiabilidad junto con otras iniciativas.
Establece una expectativa clara de que toda la organización es responsable de la confiabilidad, incluidos el desarrollo, la administración de productos, las operaciones, la ingeniería de plataformas y la ingeniería de confiabilidad de sitios (SRE). Incluso los grupos enfocados en la empresa, como marketing y ventas, pueden influir en la confiabilidad.
Cada equipo debe comprender los objetivos de confiabilidad y los riesgos de sus aplicaciones. Los equipos deben ser responsables de estos requisitos. Los conflictos entre la confiabilidad y el desarrollo normal de las funciones del producto deben priorizarse y escalarse según corresponda.
Planifica y administra la confiabilidad de forma integral en todas tus funciones y equipos. Considera configurar un centro de excelencia para la nube (CCoE) que incluya un pilar de confiabilidad. Para obtener más información, consulta Cómo optimizar el proceso de migración a la nube de tu organización con un centro de excelencia para la nube.
Áreas de enfoque para la confiabilidad
Las actividades que realizas para diseñar, implementar y administrar un sistema confiable se pueden categorizar en las siguientes áreas de enfoque. Cada uno de los principios y recomendaciones de confiabilidad de este pilar es relevante para una de estas áreas de enfoque.
- Determinación del alcance: Para comprender tu sistema, realiza un análisis detallado de su arquitectura. Debes comprender los componentes, cómo funcionan y cómo interactúan, cómo fluyen los datos y las acciones a través del sistema y qué podría salir mal. Identifica posibles fallas, cuellos de botella y riesgos, lo que te ayudará a tomar medidas para mitigar esos problemas.
- Observación: Para ayudar a evitar fallas del sistema, implementa una observación y supervisión integrales y continuas. A través de esta observación, puedes comprender las tendencias y, además, identificar posibles problemas de forma proactiva.
- Respuesta: Para reducir el impacto de las fallas, responde de manera apropiada y recupérate de manera eficiente. Las respuestas automatizadas también pueden ayudar a reducir el impacto de las fallas. Incluso con la planificación y los controles, pueden producirse fallas.
- Aprendizaje: Para evitar que se repitan los errores, aprende de cada experiencia y toma las medidas adecuadas.
Principios básicos
Las recomendaciones del pilar de confiabilidad del framework de arquitectura se asignan a los siguientes principios básicos:
- Define la confiabilidad en función de los objetivos de experiencia del usuario
- Establece objetivos realistas para la confiabilidad
- Crea sistemas de alta disponibilidad con recursos redundantes
- Aprovecha la escalabilidad horizontal
- Detecta posibles fallas con la observabilidad
- Diseña para la degradación elegante
- Realiza pruebas para la recuperación de fallas
- Realiza pruebas para la recuperación de la pérdida de datos
- Realiza análisis retrospectivos exhaustivos
Colaboradores
Autores:
- Laura Hyatt | Arquitecto de nube empresarial
- Jose Andrade | Ingeniero de Atención al cliente de infraestructura empresarial
- Gino Pelliccia | Arquitecto principal
Otros colaboradores:
- Andrés-Leonardo Martínez-Ortiz | Gerente de programa técnico
- Brian Kudzia | Ingeniero de Atención al cliente de infraestructura empresarial
- Daniel Lees | Arquitecto de Seguridad en la Nube
- Filipe Gracio, PhD | Ingeniero de Atención al cliente
- Gary Harmson | Ingeniero de Atención al cliente
- Autor: Kumar Dhanagopal | Desarrollador de soluciones entre productos
- Marwan Al Shawi | Ingeniero de Atención al Cliente para Socios
- Nicolas Pintaux | Ingeniero de Atención al cliente, especialista en modernización de aplicaciones
- Radhika Kanakam | Gerente sénior de programas, GTM de Cloud
- Ryan Cox | Arquitecto principal
- Wade Holmes | Director de Soluciones Globales
- Zach Seils | Especialista en herramientas de redes