Un vistazo de cerca Azure Well-Architected Framework - Speaker Deck\nUn vistazo de cerca Azure Well-Architected Framework\nComo podrás observar en el enlace ofician de Microsoft ya lo tienen muy bien desarrollado en español. Pero cuando yo me puse hacerlo solo existía la versión en ingles y no por ello deja de ser útil.\nUn vistazo de cerca: Azure Well-Architected Framework\nBienvenidos Acerca de… ¡Hola! Gracias por entrar en “Un vistazo\nde cerca a: Azure Well- Architected Framework”. Espero poder aportarte los conocimientos mínimos y necesarios con este workshop para que puedas ponerlo en práctica. Jose María Flores Zazo, autor\nPresentación Introducción(1/9) Hoy en día las aplicaciones basadas en la\nnube son la norma y no la excepción. Azure, como bien es sabido, dispone de una gran cantidad de servicios con cobertura global y una amplia disponibilidad. WAF es una orientación sobre las mejores prácticas para guiar a los clientes a diseñar, construir, operar y administrar el ciclo de vida de las aplicaciones en la nube. WAF se basa en 5 pilares: • Coste de optimización • Excelencia operativa. • Eficiencia en el desempeño. • Fiabilidad. • Seguridad. A lo largo de las siguientes páginas vamos a profundizar sobre cada uno de estos pilares. Espero que las explicaciones sean simples y concisas. Aunque existe un magnifico sitio en Microsoft que nos habla de ella, aquí va mi aportación centrada en la experiencia de estos últimos años. Comencemos. Azure Well-Architected Framework – WAF\n¿Qué y por qué? Introducción(2/9) Las aplicaciones de las organizaciones\nse están expandiendo más allá de las exceptivas iniciales. Ya sea por qué añaden big data, analíticas en tiempo real o IA, por poner un pequeño ejemplo. Esta transformación es un desafío constante para el equipo de arquitectura, existen muchos aspectos que se han de considerar, comenzado por el coste optimo de nuestra aplicación. Como ya he comentado antes WAF proporciona unas pautas para implementar tus workloads alineados con las mejores prácticas recomendadas por Microsoft basado en cinco pilares. La transformación digital, es decir, aprovechar lo último en tecnológicas para renovar la gestion de un negocio. Por ejemplo, mejorar la experiencia del cliente para que la aplicación sea más ágil. WAF la guía que nos permita acelerar la transformación digital de una forma robusta en los siguientes contextos: • Estrategia. Fosilizarse en la identificación comercial y motivaciones para adoptar la nube. ¿Cuáles son los puntos débiles?, ¿qué proyecto priorizar?, etc. • Plan. Tras definir la estrategia, necesitamos un plan de acción para la adopción. • Inicio. Aquí es donde WAF entra en acción y debemos alinearlos con las mejores prácticas. • Adoptar. Nuevamente WAF hace su aparición, ya que nos permite modernizar, innovar, etc. pero contemplando que todo lo que hacemos tenga sus beneficios comerciales. Azure WAF – Marco de trabajo para un correcto diseño en Azure (mi traducción)\n¿Qué y por qué? Introducción(3/9) • Gobierno. Se trata del\nplan de trabajo de nuestro workloads que permite ir mejorando de forma iterativa. • Administrar. Definir parámetros para operaciones, centrándose en métricas de negocio, analizando telemetrías, etc. para asegurar la continuidad del negocio. WAF proporciona un acelerador para la transformación digital, pero a veces esto nos hace pasar por alto decisiones de arquitectura que deben mover las aplicaciones aun correcto uso de las tecnologias disponibles. Expongo un caso: nos vamos a la nube, y podemos proporcionar un lift-shift de un servicio web via IaaS, pero luego nos encontramos que debemos añadir paralelismos, si no se hace con cuidado volvemos a generar problemas, quiero decir, que, si paras un poco antes e inviertes también un poco, lo ideal en este ejemplo es generar un servicio web tipo PaaS, por ejemplo. Ir a IaaS introduce nuevos problemas a resolver en Azure, via más IaaS o finalmente vas a un PaaS y en estos momentos es cuando uno se acuerda que ampliar la inversión inicial habría sido mucho mejor. Por tanto, muchas preguntas y consideraciones que asaltaran al equipo de arquitectura será WAF quien intente ayudar a obtener respuestas. Aunque el ejemplo anterior ya te pone sobre un aviso, por ejemplo, aquí amplio un poco más para que puedas entender a donde quiero llegar: • ¿Tu aplicación tenga una demanda fluctuante de rendimiento?, la nube se adapta si se diseña correctamente. Por ejemplo, ayuda con las piezas que mejor pueden hacer un scale up o scale out.\n¿Qué y por qué? Introducción(4/9) • ¿Necesitas monitorización continua?, ¿optimizar\nrecursos?, ¿mejorar y evolucionar según crece tu aplicación?. Pues WAF te pondrá en la búsqueda para tener en cuenta el rendimiento a medida que tus bases de datos crecen, por ejemplo. • ¿Es necesario añadir DevOps en tu ciclo de vida?. WAF ayuda a enfocar su trabajo desde el inicio y no de forma tardía. • ¿Tus aplicaciones deben ser resilentes y con alta disponibilidad?, ¿qué tal va tu plan de recuperación ante desastres?, … • La seguridad. • Y por ultimo, la no menos importante pregunta, ¿costes?, la nube ayuda a centrarte en un aprovisionamiento optimo para optimizar la inversión. Aunque la nube es pago por uso, es necesario planificar para que no lleguen sorpresas. Esto responde al ¿por qué?, ya que WAF te pondrá en objetivo ante tus ojos, para que no lo olvides y se intente arreglar o pensar en una fase tardía. ¿Qué es WAF? Cuando las cargas de trabajo están en la nube, son diferentes en construcción, implementación y configuración a trabajar on-premise. Adoptar la arquitectura adecuada, es la clave para moverse a la nube y WFA ayuda en cada paso. Piensa que es un modelo para adoptar con éxito la nube que consta de cinco pilares, como hemos dicho antes. A continuación, pondré un breve resumen sobre ellos, pero más adelante desarrollaré con más exhaustividad cada pilar.\n¿Qué y por qué? Introducción(5/9) Optimización del coste El principio\nbásico es empezar por poco y escalar a medida que avanzamos. En lugar de hacer una inversión inicial, se recomienda seguir un enfoque Build-Mesaure-Learn (construir, medir, apender), que esté alineado con Azure Cloud Adoption Framework (CAF). Se enfoca en construir un MVP (producto mínimo viable), midiendo la retroalimentación y luego usando un enfoque fail fast (fallo rápido) para optimizar el coste. Usa la calculadora de costes de Azure, te ayudará para estimar costes iniciales y luego usar Azure Cost Management para revisar el coste operativo continuo. Excelencia operativa El éxito de una implementación en la nube depende de lo bien que esté engrasado tu motor de operaciones. Cuando más visibilidad, mucho mejor para mantener siempre encendido tu entorno productivo. El enfoque de seguimiento y registro debe ser coherente con los recursos adoptados. Los datos de monitorización deben ser analizados mediante las herramientas pertinentes, también han de ser visualizados adecuadamente para aprovechar y detectar tendencias, ya sea el uso de recurso o trafico inusual, esto alertará al equipo de operaciones.\n¿Qué y por qué? Introducción(6/9) Eficiencia en el desempeño Los\nusuarios finales esperan una solución que funcione bien independientemente del trafico que manejes. Por eso una de las ventajas de la nube, es el escalado vertical (potencia y capacidad a tus recursos) u horizontal (agregar más instancias a tus recursos). El verdadero poder de la nube es el escalado horizontal, muchas veces es más economico que darles más potencia y capacidad a tus recursos. Fiabilidad Es decir, que han de poder funcionar y recuperarse inmediatamente con un mínimo daño. La confiabilidad es la función combinada de resilencia y disponibilidad. Debido al naturaleza distribuida de las implementaciones de la nube, cualquier fallo en uno puede afectar a otros componentes. Esto es un factor a tener en cuenta por arquitectura. Como regla general debes aprovechar las características inherentes al recurso del servicio de la nube, ya sean VM o bases de datos. No solo en tu capa de infraestructura, si no que debe ser un principio en que debes basarte para el desarrollo de la aplicación.\n¿Qué y por qué? Introducción(7/9) Seguridad Tienes varios niveles y\ndebes considerarlos todos. Van desde la infraestructura a la propia aplicación. Debes considerar este nuevo perímetro de seguridad como algo integral en la aplicación, que van desde: RBAC, Azure AD, cifrados de datos, TDE, gateways, etc. Hasta herramientas como Azure Defender que pone la IA a tu servicio. Optimización del coste Ofrecer el máximo valor a la inversión Excelencia operativa Mantener la luz verde con los sistemas de producción Eficiencia en el desempeño Agilidad para satisfacer las cambiantes demandas de rendimiento Fiabilidad Recuperación ante fallos con la mínima disrupción Seguridad Protección de extremo a extremo de la aplicación\nAlgunos casos de uso Introducción(8/9) Los escenarios del mundo real\nsuelen ser casi siempre difíciles, es como el lema de los Navy Seals “el día facil fue ayer”, lo mismo ocurre aquí, “el proyecto facil fue el anterior”. El éxito de la implementación de WAF dependerá de lo fácil o lo dificil que sea adaptar WAF a los escenarios de la vida real. Estos 2 casos que explico ahora serán los hilos conductores para cada uno de los pilares que veremos más adelante y que casi seguro el 80% de los que estéis leyendo esto, habéis visto alguna vez en vuestra vida profesional. Retail El comercio electrónico es clave en el sector minorista. Es un campo muy competitivo. Los sitios web de comercio electrónico deben diseñarse para que la experiencia del cliente sea optima y garantice el negocio. Una WAF puede ayudar a identificar los componentes correctos para hospedar, escalar y proteger su solución de comercio electronico además de su sostenibilidad a largo plazo. Por ejemplo, estos son puntos clave en el negocio: • Actualizaciones periódicas de los catálogos, para añadir nuevos productos a la venta. • Transacciones de pago seguras y almacén de información personal. • Recuperación de información rápida de los productos. • Experiencia de búsqueda personalizada dependiendo del cliente y las compras anteriores. • Capacidad de gestionar tráfico en fechas críticas como navidades. Aproximándonos a la realidad – El éxito depende de la dificultad para adaptar WAF\nAlgunos casos de uso Introducción(9/9) Financiero La mayoría, bancos y\naseguradoras, se enfrentan en estos momentos a una migración a la nube. Estas empresas tienen mucho legacy y es un gran desafío adaptarlas. Puede haber dependencias extritas (por ejemplo, los cajeros automáticos), pero la mayoría podrán ser solventadas gracias al uso correcto de WAF. A continuación, algunas consideraciones claves: • La gestión de la identidad debe ser perfecta, tanto para clientes como empleados. • Los tiempos de inoperancia no deberían existir, son inaceptables en soluciones bancarias. • Usa PaaS para modernizar algunos servicios legacy. • La seguridad de datos es crucial y aun más cuando se hace una migración o actualización. • Debe ser flexible para adoptar arquitecturas hibridas, algunos componentes han de permanecer en las instalaciones del cliente por razones de seguridad. Azure Arc es tu aliado. • La seguridad que además debería ser proactiva. Para concluir: en los anteriores caos de uso, el éxito de la transformación digital radica en establecer desde el principio el contexto, identificar las herramientas y servicios, así como el marco más adecuado para su implementación.\nI Coste de Optimización\nRetorno de Inversión Coste de Optimización(1/5) Poder estimar el Return\nOf Investment (ROI), saber que es Capital Expediture (CapEx) u Operational Expediture (OpEx), son términos que debes manejar: • ROI, es una razón financiera que compara el beneficio o utilidad obtenida en relación a la inversión realizada. • CapEx, es cuando un negocio invierte en la compra de un activo (un servidor on-premise) o para añadir valor a un activo para extender la vida útil (ampliar capacidad a tu servidor on-premise) • OpEx, capital que se invierte en servicios o productos y se factura al instante. Convertir CapEx a OpEx es una de las principales ventajas de la nube, pero debes tener un enfoque fino a la hora de optimizar los costes, incluso antes de implementar el primer recurso para asegurar el ROI optimo. Monitorizar el coste ayuda, pero solo es la punta del iceberg. ¿Cómo diseñar un ROI optimo? Es un proceso continuo y tendrás que revisarlo a lo largo de vida de la aplicación. Aquí van los principios de diseño: 1. Identificar el modelo de coste adecuado. Azure proporciona un modelo de pago por uso, pero existen distintas opciones donde elegir. Junto a los cargos de computación, el coste de software, el coste del SO, etc. están incluidos. Pero también tienes opciones donde puedes usar las licencias que ya dispones. Puedes aprovechar estas opciones para abaratar costes: Azure hybrid benefit, Azure sport virtual machines, reservations o Azure dev/test pricing. ROI, CapEx, OpEx – Palabras que debes manejar\nRetorno de Inversión Coste de Optimización(2/5) 2. Escoger el tamaño\nadecuado para el recurso. Encontrar el recurso adecuado y dimensionarlo es importante para mantener un coste mínimo. Por ejemplo, tienes que estudiar la capacidad de calculo, de almacenamiento, trafico o transacciones. Otro punto es el nivel de control que deseas en tu recurso: usar un IaaS o un PaaS. Cada recurso tendrá sus peculiaridades. Un Azure Storage debes mirar si quieres LRS o GRS, en una VM si quieres tener potencia gráfica o por contrario mayor CPU y RAM, etc. 3. El presupuesto siempre a la vista. Las decisiones de diseño se basan en requisitos de la aplicación, sin embargo, los componentes han de tenerse en cuenta para el proceso. Ten en tu punto de mira cosa como la alta disponibilidad, resilencia, escalabilidad, seguridad, etc. Lo que quiero decir, que si estas pensando en implementar patrones de seguridad para proteger desastres en regiones, puede ser más economico un cambio en el diseño que comprar el recurso más caro de Azure. 4. Planifica el escalado. Escalar bajo demanda es un punto clave para recudir el gasto. Aprovisiona menos máquinas en horas valle y más en horas punta, o quita instancias los fines de semana o tras una campaña publicitaria. Siempre en vista de escalado horizontal o vertical; como comenté antes horizontal es el paradigma de la nube. 5. Implementa una monitorización continua. Como dije antes, optimizar es un continuo proceso de monitorización. Verifica periódicamente los costes, ya que las aplicaciones están vivas y crecen los requerimientos, por ejemplo. Dedícate a supervisar Metricas par posibles picos, etc. Por ejemplo, puede que un sistema de almacenaje aumenta el coste cuantos más datos tienes.\nRetorno de Inversión Coste de Optimización(3/5) Caso de Uso: Retail\nYa sabemos que es un entorno competitivo, que debe tener una buena experiencia de usuario para que el cliente vuelva comprar, etc. Vuelve a leer la exposición inicial ya que aquí muestro una lista de optimización de costes para este caso, no son todas y alguna podría sobrar, es para que enfoques lo que he contado anteriormente: • ¿Se desplegará en varias regiones (países o áreas)?, pues ten en cuenta el uso de regiones. • ¿Existen componentes que se han de usar entre regiones?, ten cuidado con los gastos de trafico. • ¿La aplicación necesita multi-factor para operar?, considera el uso de Azure AD. • ¿Debo pensar en un posible ataque continuo de DDoS o creo que no?, si vas a sufrir ataques continuos usa un recurso con la version estándar, por supuesto, te costará más. • ¿Qué debo implementar un borde de seguridad?, un Azure Firewall, un Azure Application Gateway o soluciones de tercero. • ¿Voy a crear más capacidad de venta?, pues piensa bien el escalado o simplemente controla las navidades o el Black Friday. • ¿Necesito ambientes diferentes de trabajo?, es decir, dev, test y producción. Ajusta los gastos en cada sitio, no es lo mismo poner un recurso barato en dev que en producción. • ¿Necesito una búsqueda inteligente en mi comercio?, busca una solución de terceros o usa Azure Cognitive Search, estima que necesitas e inclúyelo en tu plan.\nRetorno de Inversión Coste de Optimización(4/5) • ¿Necesito IaaS o\nPaaS?, elegir una BBDD de SQL en IaaS con tu licencia es más recomendable económicamente hablando que un Azure SQL o quizá necesites procedimientos almacenados y debes ir a otro más caro. Ten en cuenta los requerimientos de la BBDD y estudia que pieza es la más conveniente. • ¿Tengo muchos archivos estáticos?, pues considera usar una CDN. • ¿Cómo voy a controlar los gatos?, usa Azure Cost Management. • ¿Queremos pasar a un modelo más automatizado?, integra DevOps por ejemplo para borrar entornos bajo demanda, esto ayuda a minimizar gastos, siempre es más eficiente un robot que un humano. • ¿Qué debo pensar en cuestión de backup?, revisa que has de incluir y que precios son los más adecuado, es un tema recurrente que debes revisar. • ¿Debo ser PCI?, Etc. Como puede observar es un trabajo tedioso, a modo de resumen podemos definir una estrategia que muestro en la siguiente página. Y aquí te dejo las herramientas que te ayudaran a optimizar costes en Azure: • TCO Calculator. • Azure Pricing Calculator. • Azure Cloud Cost Management. • Azure Advisor. • Y el uso de políticas de gobierno de Azure.\nRetorno de Inversión Coste de Optimización(5/5) Control continuo Etiquetado de\nrecursos. Facturas y alertas. Limites y cuotas. Políticas de Azure. Crea la estimación de costes inicial Azure Pricing Calculator. Azure Migrate. Azure TCO Calculator. Finaliza el modelo de costes Pago por consumo. Azure Hybrid Benefit. Azure reservations. Sport VMs. Dev/test Pricing. Recopilar requerimientos Alinearse con los objetivos de negocio. Cumplimiento. Seguridad. Alta disponibilidad. Recuperación ante desastres.\nII Excelencia Operativa\n¡Luz verde siempre! Excelencia Operativa(1/8) Cualquier aplicación se basa en\ncodificarla, desplegarla y mantener el ciclo de vida de la misma. Implementar o migrar una aplicación a la nube es solo el principio, ya que lo más importante es que siempre este activa y trabaje de forma eficiente. ¿Cómo diseñamos la excelencia operativa? Con siguiente metodología: 1. Adoptando DevOps. Por tanto, adoptando un cambio de cultura, podéis leer más en: DevOps es Cultura. Podemos usar las métricas de DevOps DORA para medir de forma cuantitativa la madurez de su adopción de DevOps. • DF, deployment frecuency. Frecuencia de despliegue. Indica la frecuencia desde en la cual el codigo es liberado para que este en producción. • MLT, mean lead time for change. Tiempo medio que tarda el codigo desde que es liberado por un desarrollador hasta que llega a producción. • MTTR, mean time to recover. Como gestiona el tiempo de inactividad debido a interrupciones no planificadas. Un buen valor sería menos de 1 hora para sistemas grandes y críticos. • CFR, change failure rate. Indica el porcentaje de deployments a producción que pueden provocar inactividad o funcionalidades degradadas. Es decir, deploy que requieren una revisión o parches inmediatos. Como estandar general debería estar entre 0% y 15%, pero depende de los critico que sea tu sistema. Always On – Termino muy usado en recurso de Azure: ¡siempre encendido!\n¡Luz verde siempre! Excelencia Operativa(2/8) 2. Optimiza las builds y\nreléase de los workloads. Es algo inherente a DevOps, pero quizá la IaC (infraestructura como codigo) no tanto. Inclúyela como proceso para que se pueda repetir con exactitud y simplificar el mantenimiento o documentación de la infraestructura subyacente. 3. Pon el foco en el seguimiento y mejora continua. Supervisa toda la infraestructura y la eficiencia de su construcción. El proceso de lanzamiento con una IaC es clave, puedes borrar un recurso inestable y en cuestión de segundos tener otro limpio y sin problemas. La telemetría nos permite retroalimentarnos y ofrece información valiosa para mejorar y garantizar la consistencia de un sistema. Así como previsiones a largo plazo. 4. Diseña aplicaciones poco acopladas. Es decir, intenta no usar mucho los monolitos y ve a arquitectas con microservicios, PaaS, FaaS, etc. Este enfoque ayuda en los deploys, pruebas e implementaciones, cosa que no pasa en los monolitos. 5. Aprende de los fallos e incidentes. A pesar de todos tus esfuerzos, los incidentes y fallos ocurrirán. Asegúrate y ten definido un plan para la gestión y respuesta. Un framework como ITIL puede ayudar.\n¡Luz verde siempre! Excelencia Operativa(3/8) ¿Por donde empezamos? Logicamente por\nel diseño de la aplicación junto a un mecanismo de versiones y despliegues que pongan las funcionalidades lo antes posible al usuario. Esto se trata de: entorno de desarrollo, control del codigo, estrategia de ramificaciones, integración continua, gestión de pruebas y versiones, etc., seguro que me dejo muchos puntos más. El proceso debe definirse incluso antes de identificar el entorno de destino de nuestra implementación. El ciclo de vida y cada uno de los pasos deben estar muy bien definidos. Cada uno precisa de un buen analisis y una discusión detallada antes de tomar una decisión. Ten en cuenta que alguno también cambiará durante el ciclo de vida de la aplicación, el negocio evoluciona. Los principios de DevOps se aplican directa o indirectamente. Pero aquí dejo un resumen con los 5 puntos más importantes. Administración y control del codigo fuente Integración continua Estrategia de Testing Rendimiento de la release Despliegue y rollback\n¡Luz verde siempre! Excelencia Operativa(4/8) 1. Administración y control del\ncodigo fuente. • Traqueo, historia y modificación del codigo: Git, TFS, etc. • Almacenar el codigo en un sistema de administración: GitHub, Azure DevOps, GitLabs, … • Que tenga opciones para revertir a versiones anteriores. • Que tengas la opción de tener codigo en local tipo folks. • Que puedas enviar las copias via Pull Request para hacer el merge. • Que el software permita revisión de codigo. • Que pueda tener cosas como: boards de proyectos para implementar una metodologia Agile (si se puede y si no continua con tu waterfall), wikis, tracking, etc. 2. Integración continua. • Que el codigo se integre continuamente via Pull Request y te permita trabajar en paralelo con los colegas de trabajo. • Que tengas pipelines para poder ver la calidad de codigo cuando integras una rama o que lance test antes de integrar, que saque reports de todo esto. • Test continuo que pueda localizar cambios que rompen. • Capacidad de publicar reléase y poder documentar, para un posterior analisis.\n¡Luz verde siempre! Excelencia Operativa(5/8) 3. Estrategia de Testing. •\nAutomatizar los test al máximo nivel. • Crear test unitarios, que lleguen al 95% de la cobertura de codigo, el 100% me parece idílico. Revisión de sintaxis, code-smell, etc. Via herramientas como Sonar Cloud. • Test de integración. Smoke test. Test de aceptación. Test de stress y data recovery, para estudiar la resilencia, respuesta, etc. 4. Rendimiento de la releas. • Escoger los agentes de compilación adecuados: self-hosted o administrados por Azure DevOps. • Asegurarte que todos los componentes como NuGets, NPM, etc. Estan accesibles y bien configurados. • Escalado de servidores para poder albergar equipos crecientes de desarrolladores. • Ejecución en paralelo de Jobs, para no genera cuellos de botella o que los test de UI se lancen rápidamente. 5. Despliegue y Rollback. • Despliegue idempotente de la infraestructura y la aplicación. • Integrar la seguridad como codigo. • Escoger entornos de UAT, test, etc. Antes de salir a producción. • Elegir una estrategia blue-green, canary, etc. • Usar las características nativas del Cloud par hacer un rollback (por ejemplo, un swap).\n¡Luz verde siempre! Excelencia Operativa(6/8) Adoptar el concepto: Todo como\nCodigo (Everything as Code) Para mi, la excelencia operativa, es lograr que todo se trate como codigo, es decir, no solo las fuentes de la aplicación, si no la infraestructura, seguridad, configuraciones, etc. Debe ser gestionado con un control de codigo fuente. Puedes seguir estas pautas para lograrlo: • Asegura la calidad de la IaC. Pon puntos de control y revisiones para actualizar y afinar la IaC. • Rompe lo silos entre el despliegue de infraestructura y las actualizaciones. Se trata de eliminar la dependencia, cualquiera puede desplegar. • Introduce integración continua con la seguridad en tu codigo. Esto implica que tendrás la seguridad desde el día 1 y no al final como suele pasar. • Te permite estar atento a las variaciones de IaC. • Lo mas importante: asegura la consistencia de los entornos. Puedes rehacer un entorno de desarrollo en cuestión e minutos o un entorno de producción para probar un error que solo sale en producción.\n¡Luz verde siempre! Excelencia Operativa(7/8) Otros puntos que necesitan una\natención especial: • Ajusta tu sistema a un rendimiento máximo. Nadie quiere sobrestimar y dejar recurso ocioso, generalmente es un gasto economico. Por tanto, estudia, redefine y focaliza esfuerzos en mantener el sistema lo más adecuado posible. • Usa el sistema “Shift Left” aplicado al Testing. Es decir, comenzando en desarrollo por Testing unitario y antes de producción revisar un test de rendimiento. • Monitorización. Medidas y más medias, que aseguran una mejora continua en tu ciclo de vida. Usa desde Azure Application Insight hasta Azure Monitor, pasando por Azure Logs y Security Center. Caso de Uso: Retail Repasa la propuesta de la primera sección. Y veamos como llegamos a esa excelencia operativa: • ¿Dónde piensa el cliente tener la solución?, nos ayuda para que los lags de las comunicaciones sean menores, también para cumplir con alguna ley propia como la GDPR en Alemania. • ¿Si necesito multi región?, la IaC debe contemplarla y con 1 definición cambiando los parámetros tenemos el mismo sistema… a veces no por qué en alguna región Azure no permite un tipo de VM, por ejemplo. • ¿Los requerimientos de escalado la Web App que aloja la tienda?, tenemos que proponer un escalado vertical (el facil) cuando lleguen las navidades. • ¿Qué diferencias existen en los entornos?, tener controlado que diferencias existen nos puede ayudar a adelantar problemas en Prod o arreglar algo que solo salen Prod y no vemos en dev.\n¡Luz verde siempre! Excelencia Operativa(8/8) • ¿Cómo puedo implementar la\nmonitorización desde el primer día?, pues añadiendo una app insight directamente en tu web app via IaC. • ¿Cómo se despliega la aplicación con Continuos Delivery o Deploy?, nos obliga a tener un buen sistema de QA y aseguramiento. • ¿Cuáles son las alarmas de problemas?, hablando con infra y dev, se ponen unos marcadores que serán los detonantes de problemas a detectar de forma proactiva. • ¿Cuál es el plan de rollback?, creamos un plan tanto para un despliegue fallido como para un problema de infra estropeada. Como veis, operaciones no se quedará ocioso, en momentos tempranos habremos metido poca cosa, iremos iterando y al llegar a producción tendremos un gran plan de operaciones. Lo que no tiene sentido es que antes, un mes o 4, por ejemplo, cuando esta apunto de salir a la luz la aplicación, comencemos a pensar en Operaciones. Esto se hace desde el minuto 0. Por desgracia la realidad en muchos proyectos es que arquitectos piensen que esto no es inherente al software, si no, un factor exógeno… y llegamos justos o mal para recopilar la información para generar un buen entorno de operaciones. Apuntalo bien: desde el minuto 0 debes pensar en operaciones.\nIII Eficiencia en el desempeño\nConoce los picos de demanda Eficiencia en el desempeño(1/14) Escalar\nhacia arriba o hacia abajo según cambia la demanda para cumplir con el desempeño de la aplicación, en un entorno cambiante es uno de los requisitos principales y uno de los detonantes del movimiento de una organización a la nube. Esto es un contraste en los entornos on-premise donde debe planificarse por adelantado y tener recursos ociosos hasta que llega ese pico. El sobre aprovisionamiento es un anti-patrón que debes evitar al llegar a la nube, estamos pensado en optimizar costes, por tanto, ¿cómo se logra un equilibrio entre demandas de rendimiento y optimización de costes?, pues en esta sección intentaré explorar los paradigmas para diseñar entorno que cumplan con un desempeño variable de demanda, mientras te aseguras que el presupuesto se mantiene en tu horquilla de gastos. ¿Cómo diseñamos la eficiencia operativa? El rendimiento de las aplicaciones se puede medir con tres métricas: rendimiento de las operaciones, latencia experimentada por los usuarios y disponibilidad de la aplicación. Tambien podrá existir SLOs (objetivos a nivel de servicio) que completarán esa medición. - La latencia, o tiempo que tardar el sistema en procesar solicitudes. - Rendimiento, o cantidad de solicitudes que puede gestionar en una unidad de tiempo. - Margen de error o percentil aceptable de excepciones. Scale up / Scale down – Según cambia la demanda\nConoce los picos de demanda Eficiencia en el desempeño(2/14) El\ndiseño de tu entorno para mejorar la eficiencia puede basarse en los siguientes principios: 1. Identificar los parámetros de rendimiento correctos para los datos. • Nunca supongas en producción, siempre falla la suposición. • Reúne tantos requisitos de rendimiento de la aplicación como puedas. • Lanza aplicaciones de diagnostico y analisis de datos, tantas como puedas, recopila y prepara informes. 2. Cuando más lejos los antis-patrones de rendimiento mejor. • Es comprobado y re-comprobado, que lo que funciona on-premise, en Cloud no tiene por que ir bien. • Microsoft tiene una lista de anti-patrón relacionados con los datos (ver enlace), por ejemplo: - Demasiados hilos en segundo plano. - Varias solicitudes de I/O en vez 1 más grande. - Múltiples instancias de objetos y destruirlos tras usarlos, en vez de instanciar una vez y mantenerla. 3. Planifica la capacidad de rendimiento máximo mediante de pruebas. • Pruebas de carga. • Monitorización la aplicación durante el pico de rendimiento para ver el rendimiento durante el momento de escalado. • Identificar capacidades umbral de la aplicaicón, para activar el ajuste del escalado y gestionar los picos.\nConoce los picos de demanda Eficiencia en el desempeño(3/14) 4.\nMantén un equilibro entre el rendimiento y los costes. • No compensen el rendimiento con un incremento del coste, equilibra el gasto. • Debes manejar muy bien el sistema de facturación de Azure y de los recursos implicados. Por ejemplo, un Storage Account tiene un medidor de I/O que es la tasa de transferencia que mucha gente se olvida, y es un factor de gasto muy importante. 5. Implementan la monitorización y mejora continua de la monitorización. • La gestión de la eficiencia del desempeño es un proceso que tiene lugar a lo largo de vida de la aplicación. • Esto no es negociable, ya que nos ayuda a identificar las partes relevantes de la aplicación, nos ayudará a focalizar los recursos en los puntos que realmente se usan de la aplicación. • Nos ayuda por tanto a reajustar los SKU y umbrales establecidos para el escalado.\nConoce los picos de demanda Eficiencia en el desempeño(4/14) Proceso\nAplicación Datos Infraestructura Implementar Afinar Diseñar\nConoce los picos de demanda Eficiencia en el desempeño(5/14) Aplicación\nEscalabilidad • Diseña para que la aplicación escale • Adopta un enfoque tipo stateless • Escala todos los componentes que dependen entre si • Escala en momentos conocidos y define un autoescalado para picos no planificados. Cargas de trabajo • Descompone la arquitectura en partes más pequeñas • Que cada componente escale de forma independiente • Mira si los microservicios se adaptan a tus necesidades • Desacopla para reducir la dependencia Distribución de tareas • Las tareas intensivas que sean procesos independientes si no puedes hacerlas más pequeñas • Usa mecanismos como Jobs, tareas en background, serverless, etc. para bajar la intensidad de los procesos • Usa la computación distribuida para Jobs en background • Usa la misma filosofía para cargas de trabajo I/O intensivas Arquitectura Shared-Nothing • Evita un solo punto de entrada, es decir, evita usa shared-nothing (nada compartido) • Limita el uso de servicios compartidos, como por ejemplo en los storages • Mejora la escalabilidad y el rendimiento mediante la independencia de cada unidad de la aplicaicón\nConoce los picos de demanda Eficiencia en el desempeño(6/14) Datos\nParticionado • Escoge un tipo de datos adecuado para tu aplicación entre: tablas, colas, ficheros, etc. • Usa servicios que tengan particionados out-the-box • Elige servicios que tengan particionado horizontal, vertical o funcional en consonancia a los requerimientos de tu aplicación Consistencia • Usa la consistencia eventual siempre que sea posible • Procura el rendimiento máximo en las lecturas y ajusta las escrituras • La consistencia eventual evita el coste que supone sincronizar particiones Desnormalizar • Normalizar es importante, pero supone un gasto importante de computación y por tanto económico, además de latencia • La desnormalización como una prioridad permite lecturas mas rápidas • Ayuda a evitar complejas joins, pero como resultado duplicamos la información Cache & Optimizar • Incorpora cache estática, como CDNS, ficheros, datos de constante acceso, etc. • Identifica la estrategia de uso de la cache; privada, shared, client-side • Por ejemplo, en SQL, optimiza los procedimientos almacenados para mejorar el rendimiento de las consultas\nConoce los picos de demanda Eficiencia en el desempeño(7/14) Infraestructura\nServicio de datos • Escoger la plataforma de datos adecuada entre Azure Blobs, Files. Queues, ... • Usa servicios de RDBS como Azure SQL, MySQL, etc. para una mayor consistencia • Usa NoSQL para datos que no precisen consistencia fuerte, pero demanden alto rendimiento Computación adecuada • Escoge entre VMS y diferentes SKUs sin sobrepasar lo necesario • Usa planes básicos para desarrollo y planes más caros para producción • Evalua la posibilidad de usar servicios serverless como Azure Functions para computación bajo demanda. Microservicios • Intenta adoptar arquitecturas de microservicios en vez de monolitos • Escoge bien la plataforma de orquestación, por ejemplo, AKS • Evalúa opciones como AKS para sistemas de producción de alto escalado Integración • Aprovecha los pools de conexiones para acceso a BBDD • Considera limitar el numero de conexiones concurrentes en VMs/App Services • Sopesa la entre seguridad y rendimiento\nConoce los picos de demanda Eficiencia en el desempeño(8/14) Aprovecha\nal máximo la escalabilidad de la nube La escalabilidad y rendimiento están estrechamente relacionados. Para aumentar el rendimiento bajo demanda, el diseño de su aplicación debe ser escalable. A medida que aumentan las unidades de computación, almacenamiento o red, el rendimiento debe aumentar proporcionalmente. En entorno dinámicos, el ajuste de escalado automático debe adaptarse para satisfacer las cambiantes demandas de rendimiento. Algunas consideraciones de diseño para escalar: 1. Ten en cuenta los requisitos de capacidad para el futuro. • Empieza con unas base-lines de cargas de trabajo, pero ten en cuenta el “a largo plazo”. • Comienza usando SKUs base. • Realiza pruebas de rendimiento para identificar los límites de capacidad. • Si estas en multi-región busca la capacidad y restricciones de cada una de ellas. 2. Elije entre escalar hacia arriba y hacia abajo. • Dependiendo de los objetivos tienes la opción de escalado vertical u horizontal, tanto ascendente como decreciente. • Ten en cuenta el tiempo que se toma en realizar estas acciones para tenerlo previsto en su aplicación.\nConoce los picos de demanda Eficiencia en el desempeño(9/14) 4.\nDetermina la unidad de escalado. • Los componentes interdependientes a menudo escalan como una sola unidad. 5. Identifica métricas de autoescalado. • Debes tener activadores que aumenten o disminuyan según la situación de la demanda. • Establece un conjunto predefinido de métricas. • Realiza un uso intensivo de Azure Monitor, a que además de satisfacer la esperiencia de usuario, nos ayuda a mantener a ralla los gastos. Identifica cuellos de botella mediante pruebas de rendimiento Son aspectos no funcionales de la aplicación, pero que nos ayudan a saber los umbrales de respuesta de nuestra aplicación, entre otras cosas ayudan a que la aplicación garantice que no se verá interrumpido su servicio. Puedes usar herramientas como Jmeter, OpenSTA, LoadRunner, WebLOAD, etc.\nConoce los picos de demanda Eficiencia en el desempeño(10/14) Este\npequeño plan puede ayudarte con los aspectos fundamentales a tener en cuenta cuando se planifican test de rendimiento. Responsabilidad del equipo Mantener un entorno aislado que simule producción Implicar a todos los roles: devs, DBAs, network admins, etc. Escoger un test adecuado Identifica que tipo de test de rendimiento necesitas: load, stress, etc. Shift left de las pruebas de rendimiento (no lo dejes para el final) Test de carga anticipado Define la capacidad máxima con test de stress Lanza test de spikes aleatoriamente Lanza test de rendimiento durante un error Optimizar el entorno Configura scale out-in Metricas base y escalamiento anticipado\nConoce los picos de demanda Eficiencia en el desempeño(11/14) Algunas\nconsideraciones más: • Asegúrate que el equipo este alineado con los objetivos de Testing y que tengan el entorno de prueba preparado. • Según los definidos en DevOps, no hay separación de roles. Junto con el equipo de control de calidad, los desarrolladores, arquitectos e infraestructura tienen el papel de ejecutar las pruebas para que tengan éxito. • Asegura la cobertura de prueba para todos los elementos de la aplicación, desde el software hasta la IaC. • Comienza desde el inicio temprano de la aplicación con las pruebas y no antes de la implementación a producción. Decenas de veces me he visto involucrado en esta situación y la esperiencia dicta que el enfoque debe ser shift-left, iniciar las pruebas de rendimiento desde una etapa temprana del ciclo de vida de la aplicaicón permitirá identificar problemas y subsanarlos cuando aun son menos dolorosos o directamente cuando tienen solución. • Integra herramientas en los procesos de DevOps: JMeter, K6 y Selemiun, por ejemplo. Y a continuación un poco más de información con respecto a los test básicos que debería tener tu aplicación: Test de Carga • Testea la carga normal y pesada • Intenta ver que ocurre cuando excedes la capacidad de Azure • Metricas baseline para observar y monitorizar • Lanza los test en diferentes etapas del escalado para afinar los recursos Test de Stress • Sobrecarga la máxima capacidad soportada por la aplicación • Configura el autoescalado y observa el comportamiento • Reduce los recursos y prueba que ocurre en esos escenarios (un Chaos Testing) • Establece los limites de los SKUs que se alinean con los requerimientos Test Multiregión • Mide el trafico enrutado a regiones secundarias • Ejecuta casos de test para acciones planificadas y no planificadas • Mide el downtime o impacto de rendimiento durante los fallos • Testea todos los recursos desplegadados en todas las regiones\nConoce los picos de demanda Eficiencia en el desempeño(12/14) Monitoriza\nmétricas Debe cubrir atributos que permita la escalabilidad y confianza, junto a los atributos que nos permitan realizar interpretaciones por correlación: • Aprovecha las Metricas multidimensionales de Azure Monitor, ayudan a dar un contexto adiciona los datos. • Cruza datos de diferentes fuentes, ayuda a contextualizar más la información, usa Application Insight. En resumen, estas fuentes permiten una visión holística de la aplicación. • Instrumenta la aplicación con herramientas tipo Application Insight cuando detectes cuellos de botella, la información adicional que puedas emitir ayudará a identificar el problema a nivel transaccional. • Junto a la monitorización de Application Insight, los demás recursos deberían tener habilitados los diagnósticos de las herramientas de análisis. • Define el estado saludable y no saludable de los componentes e incluye acciones que te permitan maniobrar, así como cuadernos de operaciones. • Usa el mapa de la aplicaicón que nos da Application Insight para identificar y estudiar el comportamiento de la aplicaicón. Esa herramienta de investigación ayuda a profundizar en el problema.\nConoce los picos de demanda Eficiencia en el desempeño(13/14) Caso\nde Uso: Retail Repasa la propuesta de la primera sección. Y veamos como llegamos tenemos eficiencia en el desempeño: https://docs.microsoft.com/es-es/azure/architecture/example-scenario/apps/ecommerce-scenario\nConoce los picos de demanda Eficiencia en el desempeño(14/14) Caso\nde Uso: Retail Repasa la propuesta de la primera sección. Y veamos como llegamos tenemos eficiencia en el desempeño: • ¿Dónde desplegará la solución?. Asegura la proximidad geográfica. • ¿Se necesita multirregión?. Identifica donde debe estar activa y donde debe estar pasiva ayudado de una herramienta de enrutamiento para eventualidades, como puede ser un traffic router. • ¿Tienes definido los objetivos?. Mide el rendimiento y los atributos que se deben cumplir. • ¿Qué necesidades de escalado tienes?. En un Retail claramente tienes las fiestas o campañas publicitarias. • ¿Un CDN mejora la experiencia de usuario?. Si tienes mucho contenido estático, un Retail, lo tiene, debes considerar su uso. • ¿En el backend te podrá venir bien un pago por uso?. Evalúalo, quizá te ahorres tener que tener reglas de escalado, pero en contra los gastos pueden fluctuar. • ¿Cuellos de botella?. Identifica si es preciso hacer muchas llamadas a bases de datos y el backend lo soporta, comienza con Metricas y observación con Application Insight, el futuro de tu Retail es en la retención de usuarios y compras recurrentes. • ¿Has lanzado test de carga?, comprueba que los SKUs de tus recursos cumplen las expectativas y sobre todo reevalúa continuamente. • ¿Cómo se comporta ante una degradación del servicio? Te quedas sin respuesta, tarda, enrutas, mira que haces y busca estrategias. Anticipa el problema.\nAplicaciones resilientes Fiabilidad(1/11) El enfoque práctico para garantizar resilencia en\nla nube es asumir que se producirán fallo y se deben planificar durante la fase de diseño. Muchos servicios de Azure tienen redundancia out-the-box. La redundancia si compromete otros pilares como la optimización de costes y excelencia operativa, no cumple su cometido. Adoptar una estrategia correcta que cumpla tus SLA (no confundir con las que nos dan los recursos de Azure, me refiero a las de tu aplicaicón, las que tu has definido) debe ser tu enfoque principal. Veamos como podemos construir aplicaciones resilientes y de alta disponibilidad en Azure. ¿Cómo diseñamos para ser resilientes? Agregar instancias como recurso para garantizar la resiliencia no es el enfoque. Debes asegurar que desde el día 1la aplicación cuente con los principios que vamos a enumerar. 1. Cuantifica los objetivos de disponibilidad. • No deben ser definiciones abstractas. Cuantifica usando SLA y SLO. • Los problemas ocurrirán, define un tiempo aceptable de inactividad, es decir el RPO (punto de recuperación) y el RTO (objetivo de tiempo de recuperación). • Ten en cuenta que habrá sanciones económicas por no cumplir el SLA y SLO (perdidas de clientes sería una de ellas si tienes un Retail, devolver dinero es lo que hace Azure cuando no cumple). Resilencia – Capacidad de recuperar su estado inicial ante una perturbación\nAplicaciones resilientes Fiabilidad(2/11) 2. Garantiza la confiabilidad en el desempeño.\n• Capitulo anteriormente tratado. Tratamos la escalabilidad, picos, etc. Para mantener el rendimiento optimo de la aplicación bajo el mayor abanico de circunstancias. 3. Garantiza la aplicación, datos e infraestructura. • Es obvio, pero recuerdo que no solo es la infra y la aplicación, se debe garantizar la conectividad, los datos, etc. Todos impactan en la experiencia de usuario. 4. Gestiona los riesgos de seguridad aplicados a la resilencia. • Se proactivo y aborda vulnerabilidades que puedan dejar el sistema inoperativo, así como el tiempo que necesitas para levantarlo. Un ataque de DDoS o un ransomware. 5. Gestiona un ciclo de vida altamente automatizado. • Capitulo anterior, pero configura todo lo que sea automatizable y que no deba intervenir un humano. Por supuesto esto también debe ser testeado.\nAplicaciones resilientes Fiabilidad(3/11) 6. Diseña una aplicaicón que se recupere\nde los fallos. • Implementa mecanismos de recuperación. Debes estar alineado con el SLA/SLO y RPO/RTO. Debes tener en cuenta que debería recuperarse de fallos en componentes, así como casos catastróficos (que se queme el centro de datos). A tipos diferentes de desastres deberás definir tiempos de recuperación acorde, no es lo mismo que un nodo se degrade y regenerarlo con IaC en 5 minutos, que se queme la región y debas ir a otra. 7. Implementan monitorización y mejora continua. • Ya hemos hablado de ello en varias ocasiones, incluso tengo un documento muy extenso sobre monitorización y observabilidad de aplicaciones Cloud Native. Estrategias más comunes para cumplir con los SLAs definidos Establece un objetivo de disponibilidad y recuperación, este será tu ancla, tu punto de partida. Hay dos aspectos principales que debes tener en cuenta: – Creación de aplicaciones resistentes que se puedan recuperar ante fallos. – Alta disponibilidad de todos los componentes de la aplicaicón para atender a todos los usuarios.\nAplicaciones resilientes Fiabilidad(4/11) Todo esto tiene un costo, por tanto,\nbusca donde deben cumplir los SLAs y los SLO. Por ejemplo, el entorno de desarrollo no tiene por qué cumplirlos, sin embargo, producción sí. Consideraciones a la hora de definir un SLA de aplicaciones Los acuerdos de nivel de servicio definen los niveles aceptables de rendimiento y disponibilidad para una aplicación. Cuando se trata de sistemas complejos y distribuidos, habrá varias partes o recursos que contribuirán más a la robustez. – Asigna la dependencia SLA de la aplicación con todos los componentes y calcula el SLA compuesto. – Habilita la monitorización para medir el tiempo medio entre fallos (MTBF). Ayuda a ver si hemos cumplido con el SLA. – Define objetivos de disponibilidad cuando, por ejemplo, conmutes entre servicios de distintas regiones. – Define que es “fallo” en el plan de acción. Quizá solo necesites una instancia más ya que es una degradación y no un “fallo”. FMA El FMA (Failure Mode Analysis) ayuda a identificar los eslabones débiles. Adopta una estrategia shift-left para FMA. FMA tiene una serie de definiciones que deberías conocer:\nAplicaciones resilientes Fiabilidad(5/11) – Fault Point. Componentes de la aplicación\nque podrían fallar y afectar a la disponibilidad. – Fault Mode. Describre las diferentes posibilidades de fallo para el Fault Point. – Single Point of Failure. Componente que puede tirar a bajo la aplicación si falla. A continuación, los pasos de un proceso FMA: Y una pequeña lista de lo que debes ir considerando por cada recurso: Identificar un Fault Point • Identificar componentes que podrían fallar • Revisa dependencias Identificar un Fault Mode • Identifica las formas en las que podría fallar • Considera que los fallos podrán suceder de forma independiente Ratio de Riesgo • Probabilidad de fallo. Establece alto, medio y bajo • Cuantifica el impacto del fallo Crear un plan de recuperación • Plan de recuperación para cada punto • Ten en cuenta complejidad y costes\nAplicaciones resilientes Fiabilidad(6/11) Fault Point Fault Mode Recovery Plan App\nService En inactividad se pone Idle Pon “Always On” en las settings del recurso Un operador baja el sistema Pon read only para ese grupo de operadores Miles de bad request por un usuario Bloque el usuario con APIM y estudiar el caso Cosmos DB Errores en escritura de datos 1) Reintentos de escritura 2) Incrementa el rendimiento de la colección 3) Replicación multiregión Azure VM VM error de conexión 1) Al menos pon 2 VMs en una zona/set tras un load balancer 2) Implementa un circuit breaker Azure Storages Errores de lectura 1) Configura reintentos 2) Usa RA-GRS Las acciones y los casos son muchísimos, espero que con esta pequeña tabla puedas hacerte a la idea del funcionamiento de un FMA.\nAplicaciones resilientes Fiabilidad(7/11) Estrategias de adopción Es insistir sobre el\ntema y me reitero. La confiabilidad de una aplicación es la suma de las fiabilidades de todas las partes. • Resilencia regional. Que los componentes estén en distintas regiones dentro de una zona o en varias regiones, aumenta la fiabilidad e incrementa el coste, y aquí es donde el cliente debe ver que no duplicamos, si no que invertimos en el negocio. • Gestión de fallos. Define que componentes debemos proteger a toda costa y cuales son efímeros, aquellos que podemos regenerar sin implicar perdida de fiabilidad. • Gestión de dependencias. Se refiere a la gestión tanto interna como externa de los componentes e incluso terceros. Debes evaluar por ejemplo si es posible que la aplicaicón sea capad de vivir en ausencia de un componente y documentarlo. Testeo de la aplicación Cualquier cambio, actualización o re-arquitecturización debe pasar un riguroso plan de pruebas. Existen diferentes tipos de pruebas.\nAplicaciones resilientes Fiabilidad(8/11) El porqué, para qué y cómo de\nlas pruebas es imporante para garantizar la resilencia del sistema: • Comienza con un plan de pruebas definido que cubra todos los modos y punto de fallo. • Define una estrategia de recuperación ante desastres. Ejecuta aplicaciones con la mínima funcionalidad para ver como se gestionan el resto de las interrupciones. • Automatiza los pasos de conmutación por error y conmutación para recuperación, para reducir el tiempo de respuesta. • Que las pruebas se ajusten a los requisitos, obviamente. • Prueba periódicamente para medir umbrales y objetivos. • Crear entornos dedicados a pruebas, simulando lo más cerca la producción. Tambien puedes ejecutar subconjuntos de pruebas en producción en un ambiente controlado. Una aproximación interesante es la Ingeniera del Caos, que inyecta fallos en el sistema para luego monitorizar el impacto y así medir la resilencia de la aplicación. Esto va desde bajar nodos de una VM hasta restricciones de acceso, pasando por SKUs de baja respuesta en una base de datos. Otras son las pruebas de carga máxima, que nos indica hasta donde llega y es consistente la aplicación. Nos ayuda a ver como se comportan los componentes con picos efectivos de carga o cargas continuas, donde activan el escalado. Pruebas de backup y RD (recuperación ante desastres). Deben ser pruebas periódicas y verificar que los datos son correctos. Puedes llevarte más de una sorpresa: que el sistema de backup este parado, que los datos se borren por algun operador con derechos, etc.\nAplicaciones resilientes Fiabilidad(9/11) Monitorización y optimización Ayudan a dar visibilidad\nen tiempo real de la aplicación, a identificar incidentes que podrían afectar a la resilencia general, a ser proactivo, etc. Seguro que ya he tratado todo esto antes, pero aquí dejo un resumen de pautas para garantizar la resilencia mientras monitoriza: • Revisa si algun componente cruza el umbral o puede estar apunto de cruzar el umbral de SLA, y crea reglas de escalado. • Instrumentaliza la aplicación para detectar fallos. No dejes de observar las dependencias. • Ya hemos hablado de Application Insight, úsalo junto a Log Analytics. Aprovecha las recomendaciones de Azure Monitor. • Configura alertas basadas en Metricas y que le lleguen al equipo de operaciones. Si puedes automatiza las correcciones con runbooks o webhooks o Functions. No olvides de incluir alertas sobre degradaciones de SLA de Azure. • Configura umbrales para evitar falsos positivos, continuamente deberás hacerlo. • Configura paneles de ofrezcan una visión panorámica del estado de la aplicación adecuados al tipo de operador, que van desde alto nivel hasta el más bajo.\nAplicaciones resilientes Fiabilidad(10/11) Caso de Uso: Financiero Repasa la propuesta\nde la primera sección. Y veamos como dar fiabilidad para un sistema financiero: https://docs.microsoft.com/es-es/azure/architecture/example-scenario/multi-saas/multitenant-saas\nAplicaciones resilientes Fiabilidad(11/11) • ¿Has configurado Metricas de monitorización para\ndisponibilidad?, sondea el estado de la aplicaicón y crea alertas ante un posible downtime. • ¿Cómo se gestiona las redundancias entre capas?, habilita replicación de datos en todas las regiones garantiza la coherencia de los datos y prioriza realizar operaciones de lecturas. • ¿Has incorporado escalabilidad en los componentes de la aplicación?, ejecuta simulaciones para estudiar el escalado de tus reglas en picos. • ¿Has definido la estrategia y cadencia de pruebas?, asegúrate de haber seguido el principio shift-lef • ¿Cómo tiene en cuenta la disponibilidad la logica de la aplicación?, incorpora métodos para gestionar errores, configura tiempos de espera entre componentes y habilitar instrumentación de aplicación. • ¿Cuáles son los servicios cruciales de la aplicación?, seleccionar los componentes AKS y Azure SQL con alta disponibilidad incorporada ayuda a gestionar este punto. • ¿Cómo se gestiona la disponibilidad en todas las regiones?, un Azure Front Door ayudará a redirigir el trafico a una región secundaría en caso de problemas.\nTu nuevo mantra Seguridad(1/11) En la nube, los vectores de\namenazas son mucho más avanzados por lo que su estrategia de seguridad también debe serlo. Como bien sabemos todos, las brechas de seguridad horadan la confianza con el cliente, y los ingresos. Por eso, la seguridad es un aspecto que NO SE NEGOCIA en cualquier arquitectura de una aplicación. Vamos a ver aspectos prácticos que garanticen un mínimo de seguridad. ¿Cuáles son esos vectores de amenazas en la nube? Es un tema del cual no soy experto, pero algo se. Si lo ves básico eso es bueno, ya que significa que este es un campo al que prestas atención y si es nuevo o te aporto algo, me alegra saber que he aportado un grano de área a tus conocimientos. La cuestión principal es que se trata de una responsabilidad compartida entre la plataforma de Microsoft y el usuario. No es lo mismo tratar un IaaS (que si dejas sin actualizar una VM, el problema es tuyo) que un SaaS (donde es Microsoft quien nos da la capa de protección principal). Los vectores de amenazas evolucionan constantemente y los expertos en seguridad siempre están un paso por detrás de las amenazas. Paradigmas diferentes – La seguridad en la nube es diferente a la tradicional\nTu nuevo mantra Seguridad(2/11) Antes de nada, apunta https://www.microsoft.com/es-es/security/business y\nve a recursos para estar informado con blogs, eventos, etc. Como resumen, muy básico, los delincuentes tienen muchas formas de intentar acceder a tus aplicaciones en Azure: • Lo más básico es proteger el perímetro, presta atención a reglas mal definidas en Firewall, NVA, NGS que actúan como reclamo para la entrada de ataques. • Cuidado con el malware, por ejemplo, los troyanos para hacerse con credenciales o propagación de ransomware, etc. • Violaciones de identidad. Hoy en día es un nuevo perímetro de seguridad, ya que esta siendo el principal punto de entrada de un ciberataque. • Robo de datos. Los datos están protegidos en Azure de forma predeterminada mediante cifrado, pero si las claves no lo están, podrán llegar a ellos. • Vulnerabilidades conocidas. Si localizan que tienes una versión obsoleta de SQL pueden aprovechar cualquier documentación en internet que explica como atacar por esa puerta obsoleta. • Desviaciones de seguridad. Es decir, que, aunque sigas las mejores prácticas es normal que alguna vez tomes un atajo y accidentalmente dejes puertas abiertas por no se exhaustivo.\nTu nuevo mantra Seguridad(3/11) La seguridad debe adaptase a las\nnuevas amenazas Antes de hacer nada, piensa en el modelo de seguridad de tu aplicación de Azure:\nTu nuevo mantra Seguridad(4/11) Con este cuadro y los recurso\nque dispones, te orientarás a una aquitectura serverless o una IaaS, por ejemplo. Si no tengo suficiente personal de infraestructura y no saben casi nada de seguridad, vamos a intentar desarrollar con SaaS. Ese modelo de responsabilidad compartida proporciona claramente que vas a necesitar en con cada recurso. Téngalo muy presente. Criterios de diseño Microsoft recomienda una estrategia de seguridad en profundidad para garantizar de extremo a extremo la seguridad en sus workloads. Generalmente debes pensar como romper la seguridad y crear una capa de protección. A su vez debes probar las capas inferiores, es decir, en cada capa debes pensar como romperla y protegerla. Los tres pilares del esfuerzo en seguridad son: • Confidencialidad, asegúrate que el personal autorizado tenga acceso a los datos y aplicaciones manteniendo al mínimo los privilegios. • Integridad: los datos que se transfieren deben ser a prueba de manipulaciones para que no se comprometa la integridad en el transito. • Disponibilidad: además de los fallos de la aplicación debes prevenir ataques tipo DDoS que puede afectar a la disponibilidad. Por tanto debes prevenir este tipo de eventualidades de disponibilidad.\nTu nuevo mantra Seguridad(5/11) Interioriza los aspectos antes tratados, la\nllamada Triada CIA. Tambien debes conocer las capas de seguridad del modelo OSI: https://en.wikipedia.org/wiki/OSI_model Seguridad física Identidad y Acceso Perímetro Red Computo Aplicación Datos\nTu nuevo mantra Seguridad(6/11) Para habilitar el pilar de seguridad\nen WAF, puede seguir estas pautas: Anillo Descripción Principio Datos Proteger datos o en SaaS establecer mecanismo de seguridad propios al SaaS Integridad Aplicación Establece seguridad en el codigo desde el minuto 1, evitando rastreado de credenciales, por ejemplo Integridad Computo Proteger VM de vulnerabilidad, proteger red, endpoints, etc. Disponibilidad e Integridad Red Segmentación de trafico, restringir el trafico, … Confidencialidad e Integridad Perímetro Establece protección para DDoS, firewall, usa NVAs para prevenir brechas de seguridad, etc. Disponibilidad Identidad y acceso Protger mediante RBAC, multifactor, … Integridad Seguridad física Primera linea de defensa, implementada directamente por Microsoft en los datacenter físicos: control de personas, monitorización, etc. Confidencialidad\nTu nuevo mantra Seguridad(7/11) 1. Define una estrategia de seguridad\n• Personas, procesos y tecnología deberían ir juntos, es decir abarca los 3. • Desarrolla una cultura de seguridad en tu organización. 2. Diseña desde una perspectiva de un atacante • Deberías anticiparte a los ataques, al menos, a lo más conocido, como decía antes los ciberdelincuentes están siempre unos pasos por delante… pero no se lo pongamos facil. • Realiza muchas simulaciones y pon a prueba tu aplicación. 3. Aprovecha herramientas de configuración y las opciones nativas • Busca las herramientas que te ayuden como puede ser Azure Sentinel, AAD, etc. 4. Integra la resilencia en la estrategia de seguridad • Sobre los problemas de fallos o controles de la aplicaicón implementa una estrategia de seguridad. • Esto esta alineado con la practica de defense-in-Depth.\nTu nuevo mantra Seguridad(8/11) 5. Confianza 0 • No debe\nhaber ningun acceso incondicional a cualquiera de los recursos. • Usa tokens, multifactor, privilegios al mimo, etc. • Cualquier problema de credenciales filtradas, etc. Debería ser atacado directamente con un plan que permita invalidar los valores filtrados. 6. Monitorizar y optimizar • En WAF es un proceso habitual, aquí ocurre lo mismo. Es una mejora continua. • Evolución a traves del aprendizaje y del conocimiento. • Simula para fortalecer la seguridad. Y aprovecha los recursos nativos de Azure: como Security Center, Monitor, Sentinel, etc. Que te ayudaran a detectar vulnerabilidades Seguridad en la infra estructura, los datos, la red y la aplicación La infraestructura es la base de todas tus implementaciones en la nube. Alinear los procesos, las herramientas y las estrategias de seguridad correctos es imporante para fortalecer esta base.\nTu nuevo mantra Seguridad(9/11) Segmentación de la infraestructura Estrategia alineada\ncon negocio Administración de grupos Asignar roles y políticas Acceso administrativo con cuentas separadas Seguridad de red Perímetro Conexiones seguras Endpoint seguros Protección del trafico de datos Protección de datos Encriptación Azure RBAC Transferencia de datos Información sensible Aplicación Integración SDL (Secure Development Lifecycle) Seguridad operacional Protección de datos Administración de secretos\nTu nuevo mantra Seguridad(10/11) La identidad es el nuevo perímetro\nde seguridad A raíz del uso de la nube es cuando este nuevo perímetro aparece. En realidad, surge con el desarrollo de aplicaciones móviles. En resumen y por no extenderme, es el eslabón débil de la cadena, por eso aparecen cosa como el doble factor. Los atacantes saben que el robo de credenciales una forma limpia de acceder a sistemas sin ser detectados y es por eso que Microsoft gracias a Azure Sentinel es capada de darnos funcionalidades como el bloqueo de IPs via IA si sabe que el usuario siempre accede en una ciudad X y de repente aparece simultáneamente en la ciudad Y. Sin estas herramientas sería muy complejo para los roles de seguridad identificar este tipo de ataques o si los identifican serían tarde. Herramientas nativas de Azure para tu equipo SOC Nada que no comentara antes. Aprovecha todo lo que Azure te da: • Security Center. • Azure Sentinel. • Azure Defender.\nTu nuevo mantra Seguridad(11/11) Caso de Uso: Financiero • ¿Esta\nactivado el doble factor para la aplicación? O bien lo implementas tu con SMS o bien si es interno alinealo con AAD y una cuenta al autenticador del telf. Movil. • ¿Los datos del API Rest están protegidos? Usa urls seguras y usan key vaul para las keys de los endpoints. • ¿El storage es de escritura? Pues no dejes una clave admi, modula el nivel de acceso. • ¿Se ven las keys en los ficheros de configuración? Usa un mecanismo como Azure KeyVaul para no ver ese valor en los deploys. • ¿Tu organización tiene alertas rojas con ciertas IPs? Pues filtar ese contenido con Security Center. • ¿Tienes activado RBAC en tus recursos? Es buena opción usar los grupos y usuarios para evitar problemas, • Podríamos estar escribiendo cientos de líneas cuando se trata de un uso financiero por que además es muy posible que se integre con terceros a la hora de comprar y aquí entra el ciclo de PCI del tercero y los datos que tienes en Azure.


Los 1000 de 2TMoto Ed. 2019 - Los 1000 de 2TMoto\nLos 1000 de 2TMoto\nLa prueba extrema de motociclismo no competitiva con roadbook “Los 1000 de 2TMoto” hará las delicias de los aficionados; ¡inscríbete y disfruta pilotando!\nPara los que nos gusta la moto, pocas experiencias igualan un recorrido con roadbook. ¿Te apetece participar en una prueba extrema de motociclismo? Los 1000 de 2TMoto se lanza a su tercera edición con la idea de repetir los éxitos del pasado y manteniendo su esencia, pero con un recorrido algo más exigente.\nPrepara tu equipo de motero y reserva el tercer fin de semana de mayo. A continuación te damos más información.\nSALIDA Y LLEGADA DESDE\n17 y 18 de Mayo 2019\n¿QUIERES UNA PRUEBA MÁS FÁCIL?\nTIEMPOS DE PASO Y PUNTOS DE CONTROL\nLos 1000 de 2TMoto plantea un recorrido de 1000 kilómetros en un día a través de diversos puntos de control perfectamente definidos y controlados. Toda la prueba se realiza por carretera; no hay tramos off-road, sólo asfalto.\nEl roadbook es la esencia de la prueba. Recorrer el trazado, diseñado por Carlos Llabres, encontrando los distintos controles de paso nos hace sentir como verdaderos pilotos de rally. Además, nos permitirá disfrutar de impresionantes paisajes, enclaves culturales y, por supuesto, tramos donde ponernos a prueba y gozar de la conducción.\nEs un evento exclusivo orientado a aficionados, destinado a solamente 30 participantes y con todos los detalles de organización muy cuidados por un equipo con amplia experiencia. Para que vivas una experiencia única con tu moto.\nDorsales a la venta\n¿Qué incluye el precio del dorsal?\nRoadbook en papel para lectores\nPaquete con productos de utilidad\ncena con todos los participantes\nhay que dejar 50€ de fianza\nentregado al final de la prueba\n17 Mayo 18:00 a 20:00 - Bienvenida y entrega de dorsales\n17 Mayo 20:30 - Explicación de la ruta\n17 Mayo 21:30 - Cena y fin de día\n18 Mayo. 09:00 a 11:00 - Salida participantes\n19 Mayo hasta 03:00 Recepción de participantes\nFin evento y prueba\n* Orientativos. Los horarios definitivos se confirmarán por email a los participantes\nNecesitarás tener instalado un lector de RoadBook en la moto y que además disponga de iluminación, ya que la salida y llegada será de noche. Si no lo tienes, puedes adquirir un dorsal con la opción de Roadbook eléctrico o manual, que lo recibirás a los pocos días de realizar la inscripción.\nLa noche del viernes cenaremos todos juntos después del briefing.\nRecordad que la prueba se realiza durante el sábado día 18 de Mayo, para tener el domingo par ala vuelta de cada participante a su casa\nEl hotel está incluido en el precio, y no tendréis que preocuparos de la reserva. Al confirmar la asistencia al evento, nosotros reservaremos la habitación de uso individual, o doble si vienes acompañado.\nPrueba con rutómetro de 1000 km*\n35 Puntos de control con verificación por telemetría\nDuración máxima de la prueba establecida\nSalida individual con intervalos de 2 min\nSalida programada para cada participante\nDías restantes para cierre de inscripción\nDías restantes para la prueba\nEstamos encantados de organizar esta prueba extrema para pilotos experimentados. El acceso a las plazas será por apadrinamiento de otros participantes mediante el uso de códigos promocionales. Una vez los códigos se agoten o el contador llegue a cero, se dará por finalizada el registro de dorsales.\nEn 2TMoto hemos patrocinado infinidad de aventureros y eventos para motoristas. Fabián C. Barrio, Miquel Silvestre, Charly Sinewan, Alicia Sornosa, Realiza Tu Aventura y Extremadura Challenge 2TMoto son sólo algunos de ellos.\nEn esta ocasión queremos organizar algo diferente y que también lleve el espíritu aventurero de 2TMoto en el ADN. .\nDavid Prieto. 2TMoto\nHace unos años descubrí los roadbooks. Siempre me había fascinado ver a los pilotos de Rally seguir esas extrañas indicaciones, y cuando tuve oportunidad de probarlo, quedé prendado de ellos. Comencé a elaborar roadbooks hasta en mis rutas de fin de semana, así como en diferentes rutas de larga distancia que seguimos unos cuantos amigos. Quien no haya seguido nunca un roadbook, no sabe lo que se pierde. Cuando 2TMoto me pidió que organizara una ruta para ellos, no pude decir que no. En esta primera edición combinaremos paisajes espectaculares, algún toque cultural y por supuesto trazados pensados para disfrutar de la moto. Si a esto le añadimos la emoción de interpretar y seguir un roadbook, y encontrar puntos de control repartidos por los 1000 kilómetros de ruta en un solo día, tenemos sin duda una de las pruebas más duras que podrás encontrar en el panorama mototurista, solo apta para moteros expertos.\nSergio Morchón. Director de ruta edición 2017\nEn la primavera del 2017 arrancó la 1ª Edición de los 1000 de 2TMoto, una prueba de 1000km en un solo día siguiendo una ruta mediante roadbook desvelada unas horas antes de su inicio. Esta segunda edición será más dura que la ediciónpasada. La ruta se desarrollará por las carreteras y sierras colindantes. Encuentra los controles de paso secretos indispensables para completar semejante reto. ¿Te atreves?\nCarlos Llabrés . 2TMoto Madrid Store\nEsta página requiere un recuadro adicional. Por favor, utilice un servidor compatible con el recuadro para ver el widget de ventas.\nXING Events: La herramienta en Internet para la organización de eventos.\nCopyright 2019 by 2TMoto\n¿Alguna duda? Pregúntanos en los1000@2tmoto.com


Zapatillas de mujer para hacer deporte – Alicante Fashion Week\n25 septiembre, 2017 Leave a commentTendenciasBy AFW\n«La moda no sólo está hecha para embellecer a las mujeres, sino también para darles seguridad y confianza”.\nLa frase del diseñador Yves Saint Laurent es un claro ejemplo del nuevo rumbo que han encontrado, desde hace ya varias temporadas atrás, las zapatillas de deporte para mujer.\nAtrás quedaron esos calzados livianos, con una suela delgada, confeccionados en lona y sin apenas retoques estéticos. Ahora, en pleno siglo XXI, las deportivas de mujer aspiran a convertirse en algo más que simples complementos, y a fe que lo están consiguiendo, como sucede especialmente en las mejores zapatillas de running mujer.\nHoy en día cada vez son más las mujeres que se suman a la ‘moda del running’, tal y como podemos comprobar en las centenares de pruebas amateur que se disputan cada fin de semana o, simplemente, las que salen a correr cada día por la calle para dejar atrás una rutinaria jornada de trabajo.\nLo que nunca deben faltar en unas zapatillas de running femeninas son confort y amortiguación. Pero lo que realmente puede marcar la diferencia entre una zapatilla y otra es, como decimos, un buen diseño. Las ‘it girl’ más famosas a nivel mundial ya las están utilizando en clave de lujo\nHay marcas como Nike y adidas que mantienen en sus catálogos femeninos las señas de identidad más reconocibles en cada uno de sus productos: sencillez, elegancia y un toque de distinción. En su catálogo podrás acceder a modelos auténticamente deportivos. Sus diseños, siempre vanguardistas, están ideados para la practicar cualquier actividad física. Es el caso de las espectaculares Nike Air Zoom Pegasus o las adidas Supernova ST.\nPero también hay otras firmas que no dudan en apostar por zapatillas más arriesgadas, con coloridos estampados, metalizados o envueltos en tonalidades más ácidas que puedan otorgarte un toque más ‘chic’ y juvenil. Por ejemplo, las irreverentes Mizuno Wave Rider o las sofisticadas Asics Gel Nimbus 18 Mujer Rosa.\nTambién las zapatillas para correr de mujer están experimentando un notable cambio en la aplicación de nuevas tecnologías. La forma tiene en cuenta que el pie de la mujer presenta un talón más estrecho que la puntera y el diseño también está pensado para ofrecer el nivel de amortiguación que requiere el pie femenino.\nEn general, todos estos cambios están enfocados a maximizar la comodidad de las zapatillas de running para mujer.


Inkspired - Mi nuevo amigo Vladimir\nMi nuevo amigo Vladimir Follow story\nMi nuevo amigo Vladimir -\nHabía llegado de noche y recordaba que en el poco tiempo que salí del vehículo de la policía hasta llegar a la primera puerta de la cárcel me mojé considerablemente por el poco recorrido que anduve. Soy cómplice de asesinato, pero no me gustó haber entrado en prisión en una noche tan triste y fría como hoy. Estaba dentro mi celda y hacía poco rato que el carcelero me dio una manta y un rollo de papel de váter. A las paredes que observaba en mi pequeño trozo de libertad, se añadía una nueva compañera, llamada humedad. La cama en la que tendría de descansar durante los años de pena, estaba impregnada de olor repugnante a sudor húmedo. Mi condena era de cinco años en este estamento regulado por el estado de Rumanía, dentro del habitáculo no encontré ninguna compañía diminuta de algún insecto en particular.\nNo entiendo muy bien el idioma, se podría decir en realidad que no entiendo nada. Mi país de origen es Gran Bretaña y soy originario de la ciudad Manchester. Y aún no me explico cómo había podido mezclarme con esa gentuza. Cuando entré por la puerta de la prisión, deduje que sería un lugar ido de la mano de Dios. Me quitaron el reloj, la cartera y mi libreta de memorias poniéndolo una bolsa de plástico, que uno de los carceleros guardó en un almacén que observé. Con poca luminosidad me hicieron entrar en unos lavabos con un frio de bisturí, que reflejaban las paredes de azulejos blancos. Donde había una mesa con dos policías que me hicieron entender que me desnudara para tener una desagradable ducha fría. Más tarde, después de darme la ropa característica de la prisión, me vestí y me dieron unos zapatos de segunda o tercera mano. Saliendo del lavabo me condujeron en otra habitación donde su reglamento les obligaba a pesarme y medir mi altura. Observando a los guardias entendí que se estaban burlando de mi. Uno de ellos me esposó y me llevó hasta una puerta en rejas que fue abierta a distancia. El guardia me doblegó la espalda mirando el suelo mientras caminábamos por dentro el lugar, con un recorrido que sólo vi el suelo que avanzábamos. Intuí cinco pasillos y seis puertas contando mi celda. Cerró el habitáculo, abrió una ventanilla y desde allí me quitó las esposas dándome las pocas posesiones.\nSentado en la cama recordé a ese idiota de Vladimir, pobre desgraciado, en paz descanse. Por su culpa me encontré en esta situación que nunca imaginé. Pensando en lo sucedido observé unas palabras gravadas en la pared:\nVladimir a fost aici\nMe puse a reír un poco pensando, que él podría haber estado aquí. Supongo que era otro Vladimir. Y todo comenzó con el director de los cojones…\n…Mi nombre es Mark Macintosh y nací en Edimburgo ya que cuando tenía tres años mi familia se traslado en Manchester. Estudié economía en la universidad de Oxford y obtuve matrícula de honor, por mis notas sobresalientes. Cuando acabé los estudios volví a mi ciudad y busqué trabajo encontrando un puesto de comercial en una gran empresa donde fabricaban maquinaria para impresión para cualquier tipo de plástico. Ya llevaba unos dos años y subí de categoría obteniendo la carpeta de clientes internacionales. Mi vida privada se relacionaba con mis amigos de universidad y con una bella mujer que salíamos juntos desde hacía unos años.\nTodo comenzó cuando mi jefe del departamento de Recursos Humanos y mi director me comunicaron de viajar a Rumania para cerrar un trato de más de cien millones de liras inglesas, con una empresa situada en la capital de Bucarest. Era la primera vez que salía de mi país por trabajo. No me gustaba mucho irme unos días, pero mi novia y mi familia me animaron bastante. En dos días embarqué y me fui a ver el cliente número uno de mi carrera profesional como representante.\nSólo llegar me dirigí al hotel donde mi empresa se había cuidado de que tuviera un lugar para dormir y descansar en una de las habitaciones de un hotel de cinco estrellas. No sabía mucho hablar el romanes, pero en el hotel cómo en los negocios se hablaba el inglés.\n—Hola. Buenos días señorita. Tengo una reserva a nombre de Mark Macintosh de parte de la empresa llamada Turnes de Gran Bretaña—dije al llegar a recepción.\n—Sí, su estancia es de unos tres días, ¿me equivoco señor Macintosh?\n—Es correcto señorita.\n—Su habitación es la 321, en el tercer piso. Avisaré uno de los botones que le guiará hasta sus aposentos. Sí desea almorzar, el restaurante abre desde la una y media hasta las cuatro del medio día. Y la cena desde las nueve hasta las doce—dijo la recepcionista avisando a un botones.\n—¿Y el desayuno qué hora es?\n—Sí perdone, es desde las siete de la mañana hasta las diez.\n—De nada, señor Macintosh, que pase una agradable estancia.\nEl botones me cogió la maleta y me acompañó hasta el ascensor y los dos subimos hasta la tercera planta. Abrió la puerta de mi habitación y a cambió le di cinco leus romaneses. Cerré la puerta y observé mis aposentos. La habitación era bastante grande, tenía unos sofás para descansar, un mesa como escritorio y una cama familiar muy cómoda. Estrictamente lo necesario para hacer el acuerdo y descansar del viaje. Como me había dicho la recepcionista, el almuerzo era a la una y media y sólo faltaba media hora. Decidí ducharme y bajar a comer más tarde. Cuando acabase, ya llamaría al cliente de la empresa, para confirmarle la hora en que tendríamos la reunión de mañana.\nComí y en acabar el almuerzo llamé al cliente.\n—Hola, buenos tardes, con el señor Ciprián. Por favor.\n—Un momento, ¿De parte de quien?\n—Mark Macintosh, de la empresa Turnes de Gran Bretaña.\n—Sí, un momento señor Macintosh.\nMe pusieron con una canción de Vivaldi, para la espera. Pasó un minuto y Ciprián contestó.\n—Hola, señor Macintosh. ¿Ya ha llegado a Bucarest?\n—Sí, esta mañana. ¿Quedamos a las nueve cómo acordamos hace dos días?\n—Sí, le pasará a buscar un taxi en el hotel a las ocho de la mañana.\n—De acuerdo. Pues quedamos así, hasta mañana.\n—Muy bien, hasta mañana. Adiós.\nSin ningún problema quedamos de acuerdo. Realmente era temprano y decidí hacer una vuelta por la ciudad, para tomarme, aún que fuera una cerveza clásica de Rumanía. Dejé la llave en recepción y me dispuse a hacer de turista durante unas horas. Visité la Arena Nacional y el parlamento, después de un rato me perdí por el centro llamado Vechi. Tome unas cuantas cervezas y paseé por los alrededores. A las nueve cogí un taxi y volví al hotel para cenar. En el restaurante había bastante gente y comí muy bien, de verdad que un hotel de cinco estrellas era un lujo. Cuando terminé me fui a mis aposentos y me puse en la cama mirando la televisión en romanes. Cerré la luz y me acosté.\nEl reloj sonó a las seis y media de la mañana. Levantándome me duché y a las siete fui a desayunar. El taxista como un reloj, llegó a las ocho en punto y me llevó hasta la empresa llamada Materiale Plastice. Por el camino salimos de la ciudad tardando cuarenta minutos en llegar. Me presenté en las oficinas y Ciprián me estaba esperando en su despacho. Hicimos un café y en veinte minutos comenzó la reunión. Estuvimos reunidos unas dos horas con el director y amigo Ciprián, un ingeniero en jefe de las tres secciones llamado Razvan y dos directivos y socios más de la empresa. Finalmente cómo habíamos acordado anteriormente por teléfono y también en una reunión en Manchester, compraron dos de nuestros modelos para una ampliación de su empresa prevista de aquí unos meses. Firmaron los documentos necesarios y acabamos la reunión dándonos la mano por el éxito de la reunión. Ciprián en acabar hablamos los dos, durante unos minutos antes de hacer una visita a las instalaciones de la empresa.\n—Bueno señor Macintosh, los dos modelos que hemos comprado para nosotros es bastante importante. Tiene que pensar que aumentaremos la producción gracias al nuevo mercado con Polonia y Bielorrusia—me comentaba Ciprián.\n—Le gustaría venir a cenar con unos directivos muy importantes esta noche. ¿Por qué, cuantos días se queda con nosotros?\n—Mañana al medio día embarco para irme a Inglaterra.\n—Bueno tiene tiempo. Le gustaría venir, sería un placer contar con usted.\nLa política de mi empresa obligaba a tener una relación con los clientes lo más estrecha posible. Por esta razón no receché la proposición de Ciprián. Quedamos que él se encargaría de que me recogiese un taxi a las ocho de la tarde en el hotel. Y me presentaría, a un alto directivo de una empresa que confeccionaban ropa deportiva de una marca muy importante y un ingeniero mecánico y manager que llevaba una empresa de venta de coches de alta gamma. Después de una hora y media, viendo la fábrica con los directivos de Materiale Plastice, acabamos la visita y volví a tiempo para almorzar en el hotel. Comuniqué a mis superiores de la venta y les envié por mail todos los documentos necesarios. Me felicitaron por mi trabajo y me dijeron que me esperaban mañana por la tarde en Manchester.\nMe preparé para ir a cenar con Ciprián y sus dos importantes colegas. Me lavé y sin prisa me cambié de ropa y antes de las ocho bajé al restaurante-bar para hacer un café. A las ocho en punto, llegó un conductor de coches de lujo y preguntó en recepción por mi. Me avisaron y cómo pensaba que sería un taxista lo note extraño. Subí al coche y el conductor me dijo que su jefe le había dicho que fuese a buscarle.\n—Mi jefe, no sabía que usted vendría a la cena. ¿Usted contaba con un taxi, no?\n—Sí, eso es lo que me dijo Ciprián.\n—En el lugar que vamos no se puede entrar en taxi. Sólo con coches de lujo.\n—¿Y cómo es eso?—pregunté\n—Normas del restaurante. De esa manera me gano la vida…Por cierto necesita una corbata o una pajarita para que le dejen entrar.\n—¿Y donde consigo una?\n—Tranquilo aquí tengo varias, escoja la que quiera. Es un regalo de la casa.\nEl muchacho me dio tres corbatas y me puse la más oscura, me hice el nudo y le devolví las otras dos.\n—Bien…Ahora parece otra persona—dijo el muchacho mirándome por el visor y continuó.—En diez minutos llegamos, señor Macintosh.\nBucarest parecía otra ciudad de noche. Todos los edificios estaban iluminados y era muy bonito. Sentado detrás parecía un maharajá del petróleo. En ese instante me llamaron al teléfono; era mi novia.\n—Hola cariño, ¿Cómo estas?\n—Bien. Ahora me voy a cenar con el director de la empresa que hicimos el trato.\n—¿Ha salido bien el encuentro?\n—Sí ha sido un éxito, han comprado las dos máquinas.\n—Muy bien ¿No? Mañana te espero para cenar.\n—De acuerdo, luz de mi vida.\n—Que vaya bien la cena. Yo cuelgo, me voy a ir al gimnasio, hasta mañana.\nEn ese instante Mark colgó el teléfono, y vio como entraban en una propiedad bastante grande, donde se encontraba el restaurante. Pararon delante de la entrada del inmueble y le abrieron la puerta del vehículo. Salió despidiéndose del conductor y en ese momento Mark, no se podía imaginar, que esa noche acabaría donde nadie, ni él se esperaba.\nNov. 15, 2020, 2:02 p.m. 2 Report Embed Follow story\nRead next chapter El señor Stelian Serp\nNovember 27, 2020, 14:01\nGracias Gabriel, un saludo November 28, 2020, 11:42\n1.- Mi nuevo amigo Vladimir 1.- Mi nuevo amigo Vladimir You can only send one review per chapter\n1.- Mi nuevo amigo Vladimir Nov. 15, 2020, 2:02 p.m.\n2.- El señor Stelian Serp Nov. 22, 2020, 9:27 a.m.\n3.- La muerte de Vladimir Nov. 29, 2020, 1:42 p.m.\n4.- Francis Jemer Dec. 6, 2020, 11:18 a.m.\n5.- La casa de Arad Dec. 13, 2020, 10:25 a.m.\n6.- La confesión de Ciprián Dec. 20, 2020, 11:15 a.m.


Las personas más felices pueden pueden esconder una depresión\nUna sonrisa puede ocultar muchas cosas\nSu energía es contagiosa y todo lo convierte en una broma divertida. Sin embargo, a veces las personas más felices son las más tristes y es probable que jamás te des cuenta de ello.\nY es que tienden a confundir a todos a través de sus increíbles fotos en Instagram y de los divertidos videos que comparten en Facebook. Como suelen ser le alma de la fiesta, jamás pensarías que en realidad están sufriendo por dentro y que esa risa esconde un cúmulo de preocupaciones.\nPero ¿cómo puede una persona que siempre se muestra tan feliz, esconder tanta angustia? Es decir, cuando uno se siente triste, es casi imposible contener las lágrimas, el mal humor y la cara de preocupación. Quienes logran disimular escudándose en una sonrisa, son verdaderos todos unos ilusionistas.\nNadie supone que hay cosas que van más allá del exterior. Nos quedamos con lo que vemos a simple vista y no pensamos en lo que puede haber detrás. Pero hay quienes luchan constantemente con demonios internos que no quieren dejar salir. A veces, esto puede reflejarse como un lapsus de tristeza que pasa por desapercibido o que no se toma en serio.\nDespués de todo, para esa persona es una lucha silenciosa que proviene del miedo a decepcionar a quienes siempre la ven feliz y bromista.\nPara muchos, las personas depresivas pasan los días encerrados en una habitación desordenada, dejan de cepillarse el cabello, bañarse, comer y socializar, así que ¿cómo puede ser posible que una persona feliz tenga depresión?\nLa depresión se ve diferente en todos y solo porque no puedas verla en alguien, no significa que no se vean afectados.\n7 cosas que debes recordar, si amas a una persona con ansiedad\nLa depresión es una lucha devastadora por sobrevivir día a día. Cuando alguien está experimentando depresión, su vida entera se ve hecha pedazos. Las personas que han experimentado momentos de tristeza tienden a pensar que pueden salir solos, pero no es así.\nSi alguien se encuentra en un estado de depresión, es más que probable que no busque ayuda por sí mismo.\nEs posible que no sepas exactamente por lo que está pasando alguien, pero hazle saber que estás ahí, no sólo cuando rían fuerte sino también cuando estén más callados de lo normal.\nAprende cuándo debes escuchar y cuándo hablar. Puede que no sea la cura definitiva pero esa persona agradecerá saber que prestarás tus oídos para cuando necesite contarte lo que le agobia.


Películas independientes estadounidenses que no te deberías perder. Revista deleFOCO\nEl cine independiente estadounidense se aleja muchísimo del de Hollywood, con historias crudas, realistas y llenas de personajes que pueden tocar el alma de cualquier amante del séptimo arte.\nEstados Unidos es quizás el país que más ha contribuido a la gran pantalla desde su existencia, la nación norteamericana ha dado algunos de los directores, guionistas e interpretes más aclamados de todos los tiempos, todos podemos citar al menos una vez que hemos soñado despiertos gracias al cine hecho allí, pero no todo son las grandes obras cinematográficas creadas por Hollywood, existen cientos de largometrajes de bajo presupuesto, hechos por cineastas talentosos que no necesitaron a una gran productora para contarnos una magnífica historia.\nEl cine independiente estadounidense es uno de los mejores del mundo, con historias que no se parecen en nada a las trilladas, repetitivas y predecibles del Hollywood moderno, sino más bien con un trasfondo de lo salvaje que es la vida.\nEstas ocho películas son consideradas cintas de culto, piezas infaltables para un amante del cine, entre pandilleros, familias disfuncionales y personas con graves problemas psicológicos, tan únicas y parecidas a la realidad.\nAsí que si ya están cansados de efectos especiales y tramas vacías, este es su listado.\nLa obra maestra de Quentin Tarantino, poco se puede decir de una película de la cuál se ha dicho casi todo, entre el baile de Mia Wallace y Vincent Vega, los personajes y las vueltas que da la historia, el presupuesto era tan bajo que se dice que John Travolta pagaba la comida de todo el elenco en la filmación.\nDirigida por Christopher Nolan este film psicológico de investigación nos cuenta la historia de Leonard, un hombre que sufre amnesia, lo más destacado de la película es su guión en el que nos devolvemos y adelantamos a los eventos del presente, haciendo que al final todo tenga sentido, incluso estuvo nominada a mejor Oscar por guión original.\nSegún la Biblioteca cinematográfica del Congreso de los Estados Unidos es una película cultural, histórica o estéticamente significativa, un drama que nos llevará a vivir las aventuras sexuales de John y Ann, un matrimonio que atraviesa una crisis, John se acuesta con Cynthia, hermana de su esposa, mientras ésta está interesada en Graham, un amigo de su esposo.\nWyatt y Billy son un par de traficantes de cocaína que han reunido el suficiente dinero para viajar desde Los Angeles hasta Nueva Orleans con el propósito de asistir al Mardy Gras, en su camino conocerán a personas olvidadas, al verdadero Estados Unidos con personajes únicos y coloridos.\nEsta película es el resultado de la obsesión de David Lynch con la canción homónima de Bobby Vinton, al final logro mezclar la melodía con una oreja en descomposición la que se encuentra el universitario Jeffrey Beaumont y que lo llevará a tener problemas con un narcotraficante y una misteriosa cantante llamada Dorothy Vallens.\nLuego de sobrevivir a un motor de avión que cayó en su casa gracias a Frank, un conejo de aspecto humanoide y demoníaco que le anuncia el fin del mundo, pronto descubriremos que Donnie sufre esquizofrenia y sonambulismo y que su mente empezará a jugar más con él y con nosotros mismos.\nGeorge A. Romero es el padre del zombie moderno, definió muchos parajes de lo que es el terror hoy por hoy gracias a su película de muertos vivos, para muchos podrá ser tan sólo una cinta cine b sin mucha trascendencia, sin embargo es considerada uno de los largometrajes más importantes del género en su historia.\nLa familia de Sheryl Hoover deberá iniciar un viaje desde Albuquerque, Nuevo México hasta Los Angeles, California en sólo dos días con tal de llevar a su hija Olive al concurso Little Miss Sunshine, en el viaje descubrirán que como familia se necesitan muchísimo a pesar de sus diferencias y sus conflictos personales, ganadora en los Oscar y BAFTA, entre otros.\nCortometrajes más adorables de Disney Pixar\nProyecto nacional "Nosotros las piedras" participará en DocMontevideo\nPelícula tica participará en el Cine en Construcción del Festival de San Sebastián