Aller au contenu principal

Phase 4: Les fondamentaux du DevOps

Comment s'applique cette phase au cloud?

DevOps consiste à faire en sorte que vos solutions fonctionnent efficacement, du déploiement aux mises à jour. Ce n'est pas spécifique au Cloud, car vous pouvez également mettre en œuvre des pratiques DevOps on-prem.

DevOps est une culture dans laquelle les équipes de développement et d'opérations ne sont plus isolées. Ces deux groupes convergent en un seul groupe où les ingénieurs travaillent sur l'ensemble du cycle de vie des applications, du développement et des tests au déploiement et aux opérations, et favorisent un champ de compétences qui ne se limite pas à une seule fonction.

Renseignez-vous sur ce qu'est DevOps. Chaque plateforme de cloud dispose d'une suite d'outils DevOps. J'ai mis en lien quelques articles ici :

Je pense aussi que cela vaut la peine de lire Le projet Phoenix (Anglais) C'est une lecture assez amusante car il s'agit d'une histoire fictive qui explique l'importance de DevOps. Mais si vous préférez quelque chose qui ressemble plus à un manuel avec des idées similaires, jetez un coup d'œil à Le manuel du DevOps (Anglais).

Comment décomposer cette phase

  • Intégration continue et livraison continue (CI/CD)
  • Système de contrôle des versions (VCS)
  • Infrastructure as Code (IaC)
  • Gestion de la configuration
  • Monitoring (logs, métriques, traces) Je vous suggère de consacrer du temps à ces sujets et à cette chronologie :
OrdreSujetTemps à devouer
1CI/CD avec GitHub Actions2 semaines
2IaC avec Terraform2 semaines
3Monitoring avec Prometheus2 semaines
4Conteneurs avec Docker1 semaine
5Orchestration de conteneurs avec Kubernetes1 semaine

Bien sûr, n'hésitez pas à y consacrer autant de temps que vous le souhaitez. Les gens m'ont demandé une chronologie et une décomposition, je l'ai donc ajoutée. Chaque pratique DevOps est importante, mais celles-ci sont les plus utilisées au niveau débutant/junior. Vous devriez déjà être familier avec le contrôle de version de la phase 2.

Resources

PratiqueOutil
Les séries DevOps de Rishab (Anglais)Explication de certains des concepts fondamentaux de DevOps.
Apprendre les actions GitHubCe guide vous aidera à utiliser les actions GitHub pour accélérer les flux de développement de vos applications.
HashiCorp LearnConstruisez, modifiez et détruisez votre infrastructure avec Terraform. Commencez ici pour apprendre les bases de Terraform avec votre fournisseur de cloud préféré.
Cours d'ingénierie DevOps de FreeCodeCamp (Anglais)Apprenez tout sur DevOps dans ce cours complet pour les débutants avec trois tutoriels techniques.
Docker (Anglais)Cours pratique complet sur Docker avec de nombreuses démonstrations et explications des concepts derrière, afin que vous le compreniez vraiment.
Docker et Kubernetes (Anglais)Apprenez les principes fondamentaux de Docker et Kubernetes dans ce cours pratique complet.
Prometheus (Anglais)Tutoriel complet sur Prometheus Monitoring

Projets

TitreRessource
Déployer une application sur Azure avec ARMARM est un outil IaC utilisé avec Azure
Ticket Crypto-dot-net DockeriséNous Dockerisons le projet de ticker crypto-dot-net que nous avons construit dans la phase 3.
Exercices de DevOpsCette repo Exercices de DevOps contient des questions et des exercices sur divers sujets techniques liés à DevOps et SRE
Le parcours DevOps avec Azure DevOpsCe tutoriel/lab va vous emmener à travers un parcours DevOps en utilisant Azure DevOps. De la mise en place de votre pipeline au déploiement d'une application sur votre cluster Azure Kubernetes !
DevOps the Hardway - AzureCe tutoriel contient une solution complète et réelle pour la mise en place d'un environnement utilisant les technologies et pratiques DevOps pour le déploiement d'applications et de services/infrastructures cloud sur Azure.
DevOps the Hardway - AWSCe tutoriel contient une solution complète et réelle pour la mise en place d'un environnement utilisant les technologies et pratiques DevOps pour le déploiement d'applications et de services/infrastructures cloud sur AWS.

Les choses avec lesquelles vous devez être familier à la fin de cette phase

  • Être capable d'expliquer chaque pratique DevOps
    • Pourquoi chacune d'entre elles est importante.
    • Ce que chacune d'entre elles accomplit.
    • Les outils les plus populaires pour chaque pratique.
  • Expérience pratique avec
    • CI/CD
    • IaC
    • Contrôle de version
  • Une compréhension de la surveillance de l'infrastructure et des applications et les notions de base des journaux, des métriques et des traces.

Certifications que vous pourriez vouloir voir