2.4 KiB
\newpage
Spécifications techniques
TODO: spécifications techniques
Mot clé : écosystème DevOps
La réalisation de ce projet va plus loin que la simple mise en place d'une application dans le Cloud. C'est une nouvelle équipe, dans un nouvel environnement avec une application inconnue et des savoirs à acquérir.
En pareille situation, c'est tout un écosystème DevOps qu'il faut mettre en place. Ainsi nous commençons par nous organiser pour collaborer sur le projet pour répondre aux besoins ; après quoi nous nous tournons vers l'étude de l'application pour continuer sur le choix d'une infrastructure pour accueillir nos services. Finalement nous choisissons aussi des outils autour de l'application pour garantir un certain niveau de service.
Organisation
Gitlab, Slack, SemVer, Git OneFlow, Conventional commit, différents environnements
Normes
- SemVer
- Git OneFlow
- Conventional commit
Environnements
- Développement
- Tests
- Pré-production (appelé « staging »)
- Production
Plateforme DevOps
- couvre les principes DevOps
- Github vs. Gitlab ?
- services utilisés :
- Tickets
- Jalons
- Kanbans
- Base de connaissance collaborative : Wiki sous Gitlab
Méthodologie
- Méthodologie Agile basique
- Compte-rendus journaliers
Étude de l'application
Composants de l'application
Implications
Ce que cela implique pour la suite
Infrastructure d'accueil
Couche basse
Environnement Kubernetes
- EKS
- cert-manager (avec Let's Encrypt) - gratuit
- externaldns + Route53 (domaines) ~ 16€/mois pour nos routes
- AWS LoadBalancer, couche 4 du modèle OSI (pour le lien entre l'extérieur et le cluster)
- Nginx ingress controller pour le lien entre les services du cluster et l'AWS LoadBalancer
Déploiement
- Terraform
- Pipelines automatisées
Services et outils divers
Pas si annexes que ça tout de même !
Données
BDD postgreSQL
Aurora, MAIS soucis lors de l'implémentation. Faute de temps : postgresql-ha
Stockage
Sauvegardes
Supervision
Choix de Datadog au détriment de Prometheus, faute de temps
Prévu de :
- prometheus
- avec nginx-ingress-controller privé
- et accès VPN dessus
Pas fait faute de temps.
Surveillance (monitoring)
Choix indicateurs
Alertes
Système d'alerte : slack, ou autre ? Mail ?