Amazon Web Services

Archi & techno

Intégrer HashiCorp Vault aux services AWS

Après avoir jeté la PKI Vault sur le grill, nous regardons ici comment Vault peut s'intégrer dans l'environnement AWS. Notre cas d'usage d'origine était basé sur Puppet et sur le déploiement des certificats par ses agents. J'ai choisi ici de refaire la démo de zéro en utilisant Terraform et Ansible pour des raisons pratiques. À cette différence près, il s'agit de la suite directe du premier article et je vous invite à le lire pour suivre celui-ci. L'intégration de Vault aux services d'AWS peut se…

Lire la suite
Archi & techno

Asynchronous data exchanges, découpler avec classe – partie 1

Déporter des traitements lourds, transférer des logs, gérer des pics de charges, architecture réactive… Il existe de nombreux cas d’utilisation du design pattern Asynchronous data exchanges qui permet de gérer la communication de message en mode asynchrone. De nos jours, plein de solutions existent pour l’implémenter : Utilisation de méthode intégrée aux langages : Futures en Java Actors et Futures en Scala Delegate en .Net Utilisation d’outil comme Netty Utilisation de serveur de message ou MOM (Message Oriented Middleware) Etc. Dans cette série d’articles, nous…

Lire la suite
Archi & techno

Circuit breaker, un pattern pour fiabiliser vos systèmes distribués (ou microservices) : partie 4

Nous voilà à la fin de cette série d'articles (disponibles ici, ici et ici) sur le circuit breaker. Comment fais je pour le superviser en production ? Notre application a passé tous les tests et il est temps de passer en production. Si l’on reste sur Hystrix, il existe beaucoup de métriques. La liste est disponible sur le site officiel. Une des difficultés d’une bonne supervision est de réussir à obtenir des tableaux de bord où avec un simple coup d’oeil on peut obtenir le…

Lire la suite
Archi & techno

Circuit breaker, un pattern pour fiabiliser vos systèmes distribués (ou microservices) : partie 3

Maintenant que nous avons vu la théorie sur les précédents articles disponibles ici et ici, penchons-nous sur la pratique. Comment l’implémenter ? Plusieurs solutions sont possibles pour l’implémenter. Par exemple en Java il existe des librairies qui le font pour nous comme : Spring Cloud Netflix Netflix Hystrix breakr Focalisons-nous sur Netflix Hystrix.

Lire la suite
Archi & techno

Circuit breaker, un pattern pour fiabiliser vos systèmes distribués (ou microservices) : partie 2

Lors de l'article précédant, nous avons vu quelques solutions possible pour résoudre la gestion des dépendances (externe ou interne) qui peuvent (et le seront tôt ou tard) défaillantes lors de l’exécution de notre application. Regardons d'un peu plus près le design pattern circuit breaker. Une solution possible : le design pattern circuit breaker ? Le circuit breaker permet de contrôler la collaboration entre différents services afin d’offrir une grande tolérance à la latence et à l'échec. Pour cela, en fonction d’un certain nombre de critères d’erreur (timeout,…

Lire la suite
Archi & techno

Circuit breaker, un pattern pour fiabiliser vos systèmes distribués (ou microservices) : partie 1

L'évolution des besoins (réductions des coûts et du time to market, concept d'ATAWAD (AnyTime, AnyWhere, AnyDevice)...) a mis en avant certaines architectures (architecture  applicative cloud ready, architecture microservices, architecture distribuée…). Cela a engendré de nouvelles problématiques, en particulier l’augmentation du nombre de dépendances et donc potentiellement soumise au réseau. C’est à ce moment qu'apparaissent à nouveau les “Illusions de l'informatique distribuée” : Le réseau est fiable. Le temps de latence est nul. La bande passante est infinie. Le réseau est sûr. La topologie du réseau…

Lire la suite
Infrastructure et opérations

Le DÉFI DES BOG’OPS : Les coulisses

Comme narré l’autre jour, la tribu OPS a organisé, pour elle et quelques affidés venus d’autres tribus, une journée de folie, épuisante mais très enrichissante. Suite à de nombreuses demandes, nous partageons ici les coulisses du défi et nos conseils pour en organiser avec vos équipes. Avec près de vingt consultants, la tribu OPS se retrouve très souvent éparpillée sur différents sites, ce qui ne facilite pas la tâche pour trouver des créneaux communs à tous propices à ces échanges. Armés d’un Doodle, nous avons profité du creux…

Lire la suite
Archi & techno

Concevoir pour le Cloud avec notre dernier livre blanc Cloud Ready Applications

5 enjeux fondateurs pour tirer parti du Cloud #AWSSummit Werner Vogels : In reality there is always an unexpected event La conception logicielle est depuis 18 ans l’un de nos cœurs de métier.  Aujourd’hui il n’échappe à personne que la révolution du cloud s’accélère :  vos applications arrivent massivement chez Amazon Web Service (AWS) et sur le cloud en général. Mais sont-elles prêtes? Prêtes à fonctionner avec de l’auto-scaling ? À utiliser des services comme ElastiCache ou SNS ?

Lire la suite
Archi & techno

Les Patterns des Géants du Web – Zero Downtime Deployment

Description Dans l'article Continuous Deployment, nous avons vu comment améliorer le Time To Market, tout en garantissant la qualité des développements. L'étape suivante est de garantir que ces déploiements fréquents n'impactent pas la disponibilité du site. Et c'est là qu'intervient le Zero Downtime Deployment (ZDD), qui permet de déployer une nouvelle version d’un système sans interrompre le bon fonctionnement du service. Mais comment s'assurer d'un déploiement "sans accroc" ?

Lire la suite
Archi & techno

Exemple d’infrastructure MongoBD : haute disponibilité en lecture

Imaginons le cas suivant : nous avons une base MongoDB, alimentée exclusivement par des batchs ordonnancés et via un client back office. Les utilisateurs, très nombreux,  y accèdent via une application client-serveur. La consistance ne doit être qu'in fine (eventually consistent en anglais). Nous avons donc, en gros, 1 accès en écriture pour 10 accès en lecture. Quelle architecture pourrions-nous mettre en place pour assurer la haute disponibilité de notre base de données et  donc nous prévenir de risques comme la perte d'un disque dur ?…

Lire la suite