MENU

Pilotage de projet DevOps

Pilotage de projet sous méthodologie DevOps afin de gagner en agilité et "TimeToMarket".

Note : Cet article est à but indicatif et ne mentionne pas l'ensemble des processus, code source ou applications utilisés dans ce projet. Pour plus d'informations, n'hésitez pas à télécharger la documentation de présentation kick-off ou me contacter pour la réalisation technique.

Télécharger Documentation


Présentation général du scénario


Mon entreprise édite un logiciel SaaS et souhaiterait s’orienter vers une démarche DevOps. Actuellement, la compilation du logiciel prend 6 heures et se fait de nuit sur les serveurs des outils internes quand ces derniers ne sont pas utilisés.
Dans le cadre d’une orientation DevOps, le but serait de pouvoir compiler le logiciel plusieurs fois par jour sans impacter le serveur des outils internes en termes de charge machine et à un coût modéré. L’entreprise décide de lancer un projet pilote sur une plate-forme IaaS sur le cloud afin de bénéficier de l'élasticité offerte par cette plate-forme.

L'entreprise décide donc de migrer l’ensemble de son SI vers le cloud. Les outils collaboratifs seront migrés vers Google Apps et le site de l’entreprise sera hébergé sur AWS.

L’entreprise garde simplement un serveur de fichiers dans ses locaux pour profiter de la vitesse du réseau local pour le transfert de fichiers volumineux. Ce serveur est également accessible par une liaison VPN depuis un site intranet privé hébergé sur AWS.
Je serai chargé de déployer la couche logicielle de cette infrastructure. Un collègue m'aidera pour cela et pour la configuration je serai accompagné d’un développeur, d’un testeur et d’un spécialiste de la supervision.

Réalisation du projet

  • Identifier les motivations qui mènent à ce projet et les bénéfices attendus
  • Définir des indicateurs clés permettant de mesurer la satisfaction des besoins auxquels répond ce projet
  • Identifier les grandes actions à réaliser pour ce projet (maximum une dizaine)
  • Évaluer pour chacune de ces tâches la durée et les ressources humaines nécessaires
  • Réaliser un diagramme de Gantt pour représenter graphiquement l’ordonnancement des tâches et les ressources humaines nécessaires
  • Déduire de ce diagramme le coût global du projet en Jours, hommes et intégrer dans ce budget le coût de la gestion de projet.
  • Les différents composants de l’infrastructure cible sont : des serveurs virtuels créés et configurés à la demande, un dépôt logiciel Git
    un ordonnanceur Jenkins permettant d’automatiser : des tests unitaires, des tests de validation, des tests d’intégration, des tests de performance,
    un outil de supervision et d'analyse de logs permettant de suivre de manière fine l’utilisation que font les utilisateurs du logiciel.

  • Compétences

  • Mettre en place un pipeline d'intégration continue avec GitLab
  • Mettre en place un pipeline de livraison continue avec GitLab
  • Sécuriser son réseau et protocoles en cloud
  • Mettre en place de l'autoscalling dans le cloud
  • Interconnecter un centre de données et l’infrastructure dans le Cloud
  • Créer, lancer et partager des images Docker
  • Orchestrer des images Docker grâce à Docker Compose
  • Encadrer des projets et pilotage du cycle de vie