Organisme de Formation aux technologies et métiers de L'informatique
cisco

Formation Implementing DevOps Solutions and Practices using Cisco Platforms

Informations générales

C-DEVOPS
5 jours (35h)
4 200 €HT
100 €HT (en option)

Objectifs

Après ce cours, vous serez capable de :

  • Décrire la philosophie et les pratiques DevOps, et comment elles s'appliquent aux défis de la vie quotidienne.
  • expliquer les architectures basées sur les conteneurs et les outils disponibles fournis par Docker
  • Décrire le packaging d'applications dans des conteneurs et commencer à créer des images de conteneurs sécurisées.
  • Utiliser la mise en réseau des conteneurs et déployer une application de réseau à trois niveaux.
  • Expliquer les concepts des pipelines d'éléments de configuration (CI) et les outils disponibles.
  • Mettre en oeuvre un pipeline de base avec Gitlab CI pour construire et déployer des applications.
  • Mettre en oeuvre le test et la validation automatisés de la construction
  • Décrire les principes DevOps appliqués à l'infrastructure
  • Mettre en oeuvre des environnements de test à la demande et expliquer comment les intégrer à un pipeline existant.
  • Mettre en oeuvre des outils pour la collecte de métriques et de journaux, l'analyse et les alertes.
  • Décrire les avantages de la surveillance de la santé des applications, de la télémétrie et de l'ingénierie du chaos dans le contexte de l'amélioration de la stabilité et de la fiabilité de l'écosystème.
  • Décrire comment mettre en oeuvre des workflows DevOps sécurisés en traitant les données sensibles et en validant les applications en toute sécurité.
  • Expliquer les concepts de conception et d'exploitation liés à l'utilisation d'un mélange de déploiements de clouds publics et privés.
  • Décrire la conception d'applications modernes et les architectures de microservices.
  • Décrire les éléments constitutifs de Kubernetes et comment utiliser ses API pour déployer une application.
  • Expliquer les modèles de déploiement avancés de Kubernetes et mettre en oeuvre un pipeline automatisé.
  • Expliquer comment les concepts de surveillance, de journalisation et de visibilité s'appliquent à Kubernetes.
plus d'infos

Public

Ce cours s'adresse avant tout aux personnes suivantes :

  • Ingénieurs réseau et logiciels intéressés par l'automatisation et la programmabilité.

Prérequis

Pour suivre ce cours, vous devez déjà posséder les connaissances suivantes :

  • Concepts de base du langage de programmation et familiarité avec Python.
  • Compréhension de base de la virtualisation des ordinateurs
  • Capacité à utiliser Linux, les interfaces textuelles et les outils CLI, tels que Secure Shell (SSH), bash, grep, ip, vim/nano, curl, ping, traceroute et telnet.
  • Compréhension fondamentale de l'architecture des systèmes d'exploitation basés sur Linux et des utilitaires système.
  • Connaissance de base des réseaux de niveau CCNA
  • Compréhension fondamentale des concepts DevOps
  • Connaissance et familiarité avec les concepts d'intégration continue, de déploiement continu et de livraison continue (CI/CD).
  • Expérience pratique de Git

Programme de la formation

Présentation du modèle DevOps

  • Philosophie DevOps
  • Pratiques DevOps

Présentation des conteneurs

  • Architectures basées sur les conteneurs
  • Conteneurs Linux
  • Présentation de Docker
  • Commandes Docker

Packaging d'une application à l'aide de Docker

  • Dockerfiles
  • Golden Images
  • Pratiques de traitement sécuritaires

Déploiement d'une application multitier

  • Mise en réseau Linux
  • Mise en réseau Docker
  • Docker Compose

Introduction à l'IIC/CD

  • Intégration continue
  • Outils CI
  • Pipelines DevOps

Construire le flux DevOps

  • Présentation de GitLab
  • Présentation de GitLab CI
  • Livraison continue avec GitLab

Validation du processus de construction des applications

  • Tests automatisés dans le flux CI

Construire un flux de déploiement amélioré

  • Validation post-déploiement
  • Stratégies de déploiement des versions

Étendre les pratiques DevOps à l'ensemble de l'infrastructure

  • Introduction à NetDevOps
  • L'infrastructure en tant que code

Mise en œuvre d'environnements de test à la demande au niveau de l'infrastructure

  • Outils de gestion de la configuration
  • Présentation de Terraform
  • Présentation d'Ansible
  • Fichier d'inventaire Ansible
  • Utiliser le module de configuration de base Cisco IOS
  • Modèles Jinja2 et Ansible
  • Jinja2 de base avec YAML
  • Template de configuration avec Ansible

Surveillance dans NetDevOps

  • Introduction au monitoring, aux métriques et aux logs
  • Introduction à Elasticsearch, Beats et Kibana
  • Introduction à Prometheus et à l'instrumentation du code Python pour l'observabilité

Ingénierie pour la visibilité et la stabilité

  • Santé et performance des applications
  • Aperçu d'AppDynamics
  • Principes de l'ingénierie du chaos

Sécurisation des flux de travail DevOps

  • Aperçu de DevSecOps
  • Sécurité des applications dans le pipeline CI/CD
  • Sécurité de l'infrastructure dans le pipeline CI/CD

Exploration des stratégies multicloud

  • Déploiement d'applications dans plusieurs environnements
  • Introduction à la terminologie du cloud public
  • Suivi et projection des coûts du cloud public
  • Considérations relatives à la conception de la haute disponibilité et de la reprise après sinistre
  • IaC pour une consommation répétée du cloud public
  • Comparaison des stratégies de services de cloud computing

Examen des architectures d'application et de déploiement

  • L'application à douze facteurs
  • Architectures de microservices

Description de Kubernetes

  • Concepts de Kubernetes : Nœuds, pods et clusters
  • Concepts de Kubernetes : Stockage
  • Concepts de Kubern : stockage Mise en réseau
  • Concepts de Kubern : Sécurité Sécurité
  • Présentation de l'API Kubernetes

Intégration de déploiements de centres de données multiples avec Kubernetes

  • Modèles de déploiement Kubernetes
  • Scénarios de défaillance de Kubernetes
  • Techniques d'équilibrage de charge Kubernetes
  • Espaces de noms Kubernetes
  • Déploiement de Kubernetes via les pipelines CI/CD

Surveillance et journalisation dans Kubernetes

  • Pipeline de mesure des ressources Kubernetes
  • Pipeline de métriques complètes et journalisation dans Kubernetes

Travaux pratiques :

  • Interagir avec l'intégration continue GitLab
  • Explorer les outils en ligne de commande de Docker
  • Packge et exécution d'un conteneur de WebApp
  • Construction et déploiement de plusieurs conteneurs pour créer une application à trois niveaux
  • Explorez la mise en réseau de Docker
  • Créer et déployer une application à l'aide de Docker Compose
  • Implémentation d'un pipeline dans Gitlab CI
  • Automatiser le déploiement d'une application
  • Valider le processus de construction de l'application
  • Valider le déploiement et corriger l'infrastructure
  • Construire une spécification YAMl IaC pour l'environnement de test
  • Gestion des environnements de test à la demande avec Terraform
plus d'infos

Méthode pédagogique

Chaque participant travaille sur un poste informatique qui lui est dédié. Un support de cours lui est remis soit en début soit en fin de cours. La théorie est complétée par des cas pratiques ou exercices corrigés et discutés avec le formateur. Le formateur projette une présentation pour animer la formation et reste disponible pour répondre à toutes les questions.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.

Mis à jour le 18/03/2024