From 9e0ef60e4464ded9beddd159175f9920cc209021 Mon Sep 17 00:00:00 2001 From: Fred Pauchet Date: Wed, 11 May 2022 18:55:41 +0200 Subject: [PATCH] Integration de morceaux du DevOps Handbook --- chapters/architecture.tex | 13 +++------- chapters/forms.tex | 8 +++++-- chapters/infrastructure.tex | 38 ++++++++++++++++++++++++++++-- chapters/security.tex | 19 +++++++++++++++ chapters/tests.tex | 4 ++++ chapters/working-in-isolation.tex | 11 +++++---- images/logo-vagrant.png | Bin 0 -> 48644 bytes 7 files changed, 74 insertions(+), 19 deletions(-) create mode 100644 images/logo-vagrant.png diff --git a/chapters/architecture.tex b/chapters/architecture.tex index 1770940..4dd5a1b 100644 --- a/chapters/architecture.tex +++ b/chapters/architecture.tex @@ -794,7 +794,7 @@ Dans le cadre de l'utilisation de Django, c'est un point critique à prendre en \item Les droits d'accès et permissions seront en grosse partie gérés par le frameworks \item -La sécurité dépendra de votre habilité à suivre les versions + La sécurité dépendra de votre habilité à suivre les versions \item Et les fonctionnalités complémentaires (que vous n'aurez pas voulu/eu le temps de développer) dépendront de la bonne volonté de la communauté \end{itemize} @@ -803,15 +803,8 @@ Le point à comprendre ici n'est pas que "Django, c'est mal", mais qu'une fois q Cette décision ne sera pas irrévocable, mais difficile à contourner. \begin{quote} - At some point in their history most DevOps organizations were hobbled by - tightly-coupled, monolithic architectures that while extremely - successfull at helping them achieve product/market fit - put them at - risk of organizational failure once they had to operate at scale (e.g. - eBay's monolithic C++ application in 2001, Amazon's monolithic OBIDOS - application in 2001, Twitter's monolithic Rails front-end in 2009, and - LinkedIn's monolithic Leo application in 2011). In each of these cases, - they were able to re-architect their systems and set the stage not only - to survice, but also to thrise and win in the marketplace. + At some point in their history most DevOps organizations were hobbled by tightly-coupled, monolithic architectures that while extremely successfull at helping them achieve product/market fit - put them at risk of organizational failure once they had to operate at scale (e.g. eBay's monolithic C++ application in 2001, Amazon's monolithic OBIDOS application in 2001, Twitter's monolithic Rails front-end in 2009, and LinkedIn's monolithic Leo application in 2011). + In each of these cases, they were able to re-architect their systems and set the stage not only to survice, but also to thrise and win in the marketplace. \cite[182]{devops_handbook} \end{quote} diff --git a/chapters/forms.tex b/chapters/forms.tex index 95fd24b..614f4db 100644 --- a/chapters/forms.tex +++ b/chapters/forms.tex @@ -46,7 +46,7 @@ Ils agissent come une glue entre l'utilisateur et la modélisation de vos struct \textbar{} .Validation \textbar{} .is\_valid \textbar{} .clean\_fields ↓ .clean\_fields\_machin -A compléter ;-) +Tout comme pour le modèle (+ ref), l'idée est simplement de définir plusieurs niveaux de validation. \section{Dépendance avec le modèle} @@ -81,7 +81,11 @@ Sinon, ils peuvent l'être directement au niveau du champ. \subsection{Squelette par défaut} -On a d'un côté le \{\{ form.as\_p \}\} ou \{\{ form.as\_table \}\}, mais il y a beaucoup mieux que ça ;-) Voir les templates de Vitor et en passant par \texttt{widget-tweaks}. +\subsubsection{as\_p} + +\subsubsection{as\_table} + +\subsubsection{Vitor} \subsection{Crispy-forms} diff --git a/chapters/infrastructure.tex b/chapters/infrastructure.tex index 09c65cf..4f9e4da 100644 --- a/chapters/infrastructure.tex +++ b/chapters/infrastructure.tex @@ -50,8 +50,10 @@ Ce sont les "petites mains" qui aident à ce que l'application soit résiliente Il s'agit des composants comme le proxy inverse ou les distributeurs de charge: ce sont des composants qui sont fortement recommandés, mais pas obligatoires à au bon fonctionnement de l'application. \begin{quote} - Hard disks are reported having a mean time to failure (MTTF) of about 1° to 50 years. - Thus, on a storage cluster with 10,000 disks, we should expect on average one disk to die per day. \cite[p. 7]{data_design} + Focusing on resilience often means that a firm can handle events that may cause crises for most organizations in a manner that is routine and mundane. + Specific architectural patterns that they implemented included fail fasts (settings aggressive timeouts such that failing components don't make the entire system crawl to a halt), fallbacks (designing each feature to degrade or fall back to a lower quality representation), and feature removal (removing non-critical features when they run slowly from any given page to prevent them from impacting the member experience). + Another astonishing example of the resilience that the netflix team created beyond preserving business continuity during the AWS outage, was that they went over six hours into the AWS outage before declaring a Sev 1 incident, assuming that AWS service would eventually be restored (i.e., "AWS will come back... it usually does, right ?"). + Only after six hours into the outage did they activate any business continuity procedures. \cite[p. 282]{devops_handbook} \end{quote} Avoir des composants périphériques correctement configurés permet d'anticiper ce type d'erreurs, et donc d'augmenter la résilience de l'application. \index{Résilience} @@ -132,6 +134,38 @@ Le \subsubsection{Supervision des processus} +La récupération de métriques augmente la confiance que l'on peut avoir dans la solution. +L'analyse de ces métriques garantit un juste retour d'informations, sous réserve qu'elles soient exploitées correctement. +La première étape consiste à agréger ces données dans un dépôt centralisé, tandis que la seconde étape exigera une structuration correcte des données envoyées. + +La collecte des données doit récupérer des données des couches métiers, applicatives et d'environnement. +Ces données couvrent les évènements, les journaux et les métriques - indépendamment de leur source - le pourcentage d'utilisation du processeur, la mémoire utilisée, les disques systèmes, l'utilisation du réseau, ... + +\begin{enumerate} + \item + \textbf{Métier}: Le nombre de ventes réalisées, le nombre de nouveaux utilisateurs, les résultats de tests A/B, \ldots + \item + \textbf{Application}: Le délai de réalisation d'une transaction, le temps de réponse par utilisateur, \ldots + \item + \textbf{Infrastructure}: Le trafic du serveur Web, le taux d'occupation du CPU, \ldots + \item + \textbf{Côté client}: Les erreurs applicatives, les transactions côté utilisateur, \ldots + \item + \textbf{Pipeline de déploiement}: Statuts des builds, temps de mise à disposition d'une fonctionnalité, fréquence des déploiements, statuts des environnements, \ldots +\end{enumerate} + +Bien utilisés, ces outils permettent de prévenir des incidents de manière empirique. + +\begin{quote} + Monitoring is so important that our monitoring systems need to be more available and scalable than the systems being monitored. + + -- Adrian Cockcroft \cite[p. 200]{devops_handbook} +\end{quote} + +Histoire de schématiser, toute équipe se retrouve à un moment où un autre dans la situation suivante: personne ne veut appuyer sur le gros bouton rouge issu de l'automatisation de la chaîne de production et qui dit "Déploiement". +Et pour cause: une fois que nous aurons trouvé une joyeuse victime qui osera braver le danger, il y aura systématiquement des imprévus, des petits détails qui auront été oubliés sur le côté de la route, et qui feront lâchement planter les environnements. +Et puisque nous n'aurons pas (encore) de télémétrie, le seul moment où nous comprendrons qu'il y a un problème, sera quand un utilisateur viendra se plaindre. + \subsubsection{Journaux} La présence de journaux, leur structure et de la définition précise de leurs niveaux est essentielle; ce sont eux qui permettent d'obtenir des informations quant au statut de l'application: diff --git a/chapters/security.tex b/chapters/security.tex index a279ac1..542b1cd 100644 --- a/chapters/security.tex +++ b/chapters/security.tex @@ -1,5 +1,24 @@ \chapter{Sécurité} \begin{quote} + We put all security issues into JIRA, which all engineers use in their daily work, and they were either 'P1' or 'P2', meaning that they had to be fixed immediately or by the end of the week, even if the issue is only an internally-facing application. + Any time we had a security issue, we would conduct a post-mortem, because it would result in better educating our engineers on how to prevent it from happening again in the future, as well as a fantastic mechanism for transferring security knowledge to our engineering team. + + -- Nick Galbreath \cite[p. 315]{devops_handbook} \end{quote} + +L'objectif final est d'utiliser les mêmes méthodes de travail pour les équipes de développement, pour les équipes d'opérations, et pour la sécurité de l'information, en poussant jusqu'à l'intégration de la télémétrie à chaque niveau de la chaîne de production, mais aussi en prouvant aux développeurs (en début de chaîne) qu'ils sont constamment sous attaque informatique, afin de les sensibiliser. + +Il conviendra d'ajouter au dépôt de source: Au niveau du dépôt de sources, il convient d'y ajouter: + +\begin{enumerate} + \item + Les librairies standards, leur utilisation et leur configuration (2FA, \ldots) + \item + Comment gérer les injections SQL, le cross-site-scripting, \ldots + \item + Comment gérer les secrets dans les applications: comment gérer les mots de passe, les journaux de logs, \ldots + \item + Les paquets à utiliser et à compiler (NTP pour synchroniser les horloges, les paramètres d'OpenSSL, \ldots), les configurations d'Nginx/Apache, \ldots +\end{enumerate} diff --git a/chapters/tests.tex b/chapters/tests.tex index a46d20e..30e1e6e 100644 --- a/chapters/tests.tex +++ b/chapters/tests.tex @@ -184,6 +184,10 @@ Le plus important est de toujours corréler les phases de tests indépendantes d -- Robert C. Martin, Clean Architecture \end{quote} +De manière plus générale, si nous nous rendons compte que les tests sont trop compliqués à écrire ou coûtent trop de temps à être mis en place, c'est sans doute que l'architecture de la solution n'est pas adaptée et que les composants sont couplés les uns aux autres. +Dans ces cas, il sera nécessaire de refactoriser le code, afin que chaque module puisse être testé indépendamment des autres. +Le plus important est de toujours corréler les phases de tests au reste du travail (de développement, ici), en les automatisant au plus près de leur source de création. + \subsection{Tests unitaires} \begin{quote} diff --git a/chapters/working-in-isolation.tex b/chapters/working-in-isolation.tex index 9abca31..1ab047c 100644 --- a/chapters/working-in-isolation.tex +++ b/chapters/working-in-isolation.tex @@ -286,6 +286,8 @@ Dans la suite, nous détaillerons Vagrant et Docker, qui constituent deux soluti \subsection{Vagrant} +\includegraphics{images/logo-vagrant.png} + Vagrant consiste en un outil de création et de gestion d'environnements virtualisés, en respectant toujours une même manière de travailler, indépendamment des choix techniques et de l'infrastructure que vous pourriez sélectionner. \begin{quote} @@ -302,9 +304,10 @@ La partie la plus importante de la configuration de Vagrant pour votre projet co \item Le choix du \emph{fournisseur} (\textbf{provider}) de virtualisation (Virtualbox, Hyper-V et Docker sont natifs; il est également possible de passer par VMWare, AWS, etc.) \item - Une \emph{box}, qui consiste à lui indiquer le type et la version attendue du système virtualisé (Debian 10, Ubuntu 20.04, etc. - et \href{https://app.vagrantup.com/boxes/search}{il y a du choix}). + Une \emph{box}, qui indique le type et la version attendue du système virtualisé (Debian 10, Ubuntu 20.04, etc. - et \href{https://app.vagrantup.com/boxes/search}{il y a du choix}). \item - La manière dont la fourniture (\textbf{provisioning}) de l'environnement doit être réalisée : scripts Shell, fichiers, Ansible, Puppet, Chef, \ldots\hspace{0pt} Choisissez votre favori :-) même s'il est toujours possible de passer par une installation et une maintenance manuelle, après s'être connecté sur la machine. + La manière dont la fourniture (\textbf{provisioning}) de l'environnement doit être réalisée : scripts Shell, fichiers, Ansible, Puppet, Chef, \ldots + Il est toujours possible de passer par une installation et une maintenance manuelle, après s'être connecté sur la machine. \item Si un espace de stockage doit être partagé entre la machine virtuelle et l'hôte \item @@ -338,11 +341,9 @@ Vous trouverez ci-dessous un exemple, généré (et nettoyé) après avoir exéc \end{minted} \end{listing} -Dans le fichier ci-dessus, nous créons: +Dans le fichier ci-dessus, nous créons une nouvelle machine virtuelle (ie. \emph{invitée}) sous Ubuntu Bionic Beaver, en x64 \begin{itemize} - \item - Une nouvelle machine virtuelle (ie. \emph{invitée}) sous Ubuntu Bionic Beaver, en x64 \item Avec une correspondance du port \texttt{80} de la machine vers le port \texttt{8080} de l'hôte, en limitant l'accès à celui-ci - accédez à \texttt{localhost:8080} et vous accéderez au port \texttt{80} de la machine virtuelle. \item diff --git a/images/logo-vagrant.png b/images/logo-vagrant.png new file mode 100644 index 0000000000000000000000000000000000000000..c821899aa537e2c6da8c680a288ff51229f4dd36 GIT binary patch literal 48644 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%0D9E7`H=)qmWnd z0M8Ybb_L1{TK zj-UnA_d-v4SxP!hem^{J75GQUanjy*40Y$jg|VC`5m6^25+ro4ojKZBjH*yv?yH`u zoZ*;`JJ$w79baVHLit-(ml&+t(_v2F*;-O$RED*mb8{M%yo0uOX9FI#OOr&jXN{F2 zu(;Se{_x9H2M4|9mh>9lKNV&YTgF`6Jt=dVz3hG(oZb!WTrStYi8F7C7No6+^owXNqa>Tc$eEYTE&r#M9YCeo;D;*7_H}$XOOsy-e63- zXBE^JkIBp8g%Kk4W6v5dC^ASfpaemXc*i z=v;y$cp&?+)XH->Tpbvzy-RqeZ#^}xeaWrKrDpu6pvWqV)hIB zj;RTLntZ?IZ{xeKO!D^2PoVX2(2r#4r~}gS)kD72UExQHowxEtWW^8Q{lVNb4>uoUu+?Dk+Qw?=WZH{0`wH#0TmN(@ zepl#Nej{v}ze1VeBHEm7qPkgsPf%gcgQ}O7(GEvee}y0hHxM51F{xT{t`+Jq!A9n( zzQdGaHyT+{IGr}3Z{}5Z#^l{zU$fPhZmX`&+m}rF?{lEQ&w;A??$i>Vm$_2)5(Tu- zeGF=2&Sz6;S1e3#E{C(l?oPta$O;)qz^%EOc$Idr-R8=@oy-!LevJMjB})*@Bg^oB zE1wT2>PN=UCUGe?Km;q57^Ui)!!OI%i4uep2woPxqJ)>}1H6|mHuz+cf1?|SHcx?- zU#`7qHa@u+zI|skPozrAXl=-cJWZk(9dJg4p3j$_@L~Kg9Fqa}-$v!2JESu z7$wa|*>;hS@N$%dm+WobI7IPx9pm&QYg5cGA16b$xJMSx`D{|yKJ_UIL>-sEBPdKg grTb|2=Mn!Ojfi?Sl|Eu0B?+Du>b%7 literal 0 HcmV?d00001