AWS Well-Architected Framework

  

AWS Well-Architected Framework


AWS Well-Architected Framework ayuda a comprender los pros y los contras de las decisiones que se toma al crear sistemas en AWS. Al usar el Framework, se utiliza las mejores prácticas arquitectónicas para diseñar y operar sistemas confiables, seguros, eficientes y rentables en la nube. Tener sistemas bien diseñados aumenta en gran medida la probabilidad del éxito.

AWS Well-Architected Framework documenta un conjunto de preguntas fundamentales que  permiten comprender si una arquitectura específica se alinea con las mejores practicas de la nube. El marco proporciona un enfoque coherente para evaluar los sistemas. En comparación con las cualidades que espera de los sistemas modernos basados ​​en la nube y la corrección que se requeriría para lograr esas cualidades. 



Los 5 pilares de AWS Well-Architected Framework

La razón por la que la nube en general y AWS en particular son tan populares es que simplifican el desarrollo de marcos bien diseñados. Si hay un documento técnico de AWS que debe leerse, es el documento titulado AWS Well-Architected Framework, que detalla los cinco pilares de un marco bien diseñado. El artículo completo se puede encontrar aquí:


Primer pilar: excelencia operativa

La excelencia operativa de una carga de trabajo debe medirse en estas dimensiones:
  • Agilidad
  • Fiabilidad
  • Performance
La forma ideal de optimizar estas métricas es estandarizar y automatizar la gestión de estas cargas de trabajo. Para lograr la excelencia operativa, AWS recomienda estos principios:
  • Suministrar infraestructura a través de código (por ejemplo, a través de CloudFormation).
  • Alinear las operaciones y aplicaciones con los requisitos y objetivos comerciales.
  • Cambiar los sistemas realizando cambios incrementales y regulares.
  • Probar constantemente escenarios tanto normales como anormales.
  • Registrar las lecciones aprendidas de eventos operativos y fallas.
  • Anotar y mantener actualizado el manual de procedimientos operativos estándar.


Segundo Pilar la seguridad

Tanto en arquitecturas locales como en la nube, la seguridad siempre debe ser una alta prioridad. Se deben considerar todos los aspectos de la seguridad, incluido el cifrado y la protección de datos, la administración de acceso, la seguridad de la infraestructura, el monitoreo y la detección e inspección de brechas.

Para habilitar la seguridad del sistema y protegerse contra vulnerabilidades y actores nefastos, AWS recomienda estos principios de arquitectura:

  • Habilitar siempre la trazabilidad.
  • Aplicar seguridad a todos los niveles.
  • Implementar el principio de privilegio mínimo.
  • Asegurar el sistema en todos los niveles: aplicación, datos, sistema operativo y hardware.
  • Automatizar las mejores prácticas de seguridad.




Tercer pilar fiabilidad

Otra característica de well-architected framework es la minimización o eliminación de puntos únicos de falla. Idealmente, cada componente debería tener una copia de seguridad, y la copia de seguridad debería poder conectarse lo más rápido posible y de manera automatizada, sin la necesidad de intervención humana. Otro concepto aplicable para respaldar la confiabilidad es la idea de sistemas de autorreparación. Un ejemplo de esto es cómo Amazon S3 maneja la replicación de datos. En un momento dado, hay al menos seis copias de cualquier objeto almacenado en Amazon S3. Si, por alguna razón, uno de los recursos que almacena una de estas copias falla, AWS se recuperará automáticamente de esta falla, marcará ese recurso como no disponible y creará otra copia del objeto utilizando un recurso en buen estado para mantener el número de copias en seis. Cuando se utilice servicios de AWS que no son administrados por AWS y que, en cambio, son administrados por usted, hay que asegurarse de seguir un patrón similar para evitar la pérdida de datos y la interrupción del servicio.

El documento de well-architected framework recomienda estos principios de diseño para mejorar la fiabilidad:
  • Probar continuamente los procesos de copia de seguridad y recuperación.
  • Diseñar sistemas para que puedan recuperarse automáticamente de la falla de un solo componente.
  • Aprovechar la escalabilidad horizontal siempre que sea posible para mejorar la disponibilidad general del sistema.
  • Utiliar la automatización para aprovisionar y apagar recursos según el tráfico y el uso para minimizar los cuellos de botella de los recursos.
  • Gestionar el cambio con la automatización.



Cuarto pilar: eficiencia del performance

En algunos aspectos, el sobre aprovisionamiento de recursos es tan malo como no tener suficiente capacidad para manejar sus cargas de trabajo. Lanzar una instancia que está constantemente inactiva o casi inactiva es una señal de mal diseño. Los recursos no deben estar a plena capacidad, pero deben utilizarse de manera eficiente. AWS proporciona una variedad de características y servicios para ayudar en la creación de arquitecturas con alta eficiencia. Sin embargo, todavía tenemos la responsabilidad de asegurarnos de que las arquitecturas que diseñamos sean adecuadas y tengan el tamaño correcto para nuestras aplicaciones.

En lo que respecta a la eficiencia del rendimiento, las mejores prácticas de diseño recomendadas son las siguientes:
  • Democratizar las tecnologías avanzadas.
  • Aprovechar la infraestructura global de AWS para implementar la aplicación a nivel mundial con un costo mínimo y para proporcionar baja latencia.
  • Aprovechar las arquitecturas serverless siempre que sea posible.
  • Implementar varias configuraciones para ver cuál ofrece un mejor rendimiento.


Quinto pilar: optimización de costos

Este pilar está relacionado con el tercer pilar. Si su arquitectura es eficiente y puede manejar con precisión cargas de aplicaciones variables y ajustarse a medida que cambia el tráfico, se deducirá que sus costos se minimizarán si la arquitectura puede reducir la velocidad cuando el tráfico se ralentiza.

Además, la arquitectura debe poder identificar cuándo los recursos no se están utilizando en absoluto y permitirle detenerlos o, mejor aún, detener estos recursos informáticos no utilizados. AWS también  brinda la capacidad de activar herramientas de monitoreo que apagarán automáticamente los recursos si no se están utilizando. Se recomienda adaptar un mecanismo para detener los recursos una vez que se identifican como inactivos. Esto es especialmente útil en entornos de prueba y desarrollo.

Para mejorar la optimización de costos, se sugieren estos principios:
  • Utilizar un modelo de consumo.
  • Aprovechar las economías de escala siempre que sea posible.
  • Reducir los gastos al limitar el uso de los centros de datos propiedad de la empresa.
  • Analizar y contabilizar constantemente los gastos de infraestructura.




Comentarios

Entradas más populares de este blog

Mejores practicas para migración de datos a Salesforce

AWS Lambda

Modelado de datos en Salesforce