You are currently viewing Tout sur le stockage cloud avec l’interview d’un « DevOps »
Le cloud impose un changement radical de mentalité. © Adobe Stock / Gorodenkoff

Tout sur le stockage cloud avec l’interview d’un « DevOps »

 

Comment voir clair dans tout ce buzz autour du cloud ?

Le cloud c’est d’abord la fin des machines en local (« On Premise » ou « On Prem »). Mais il y a différentes visions. « Ah, j’ai mon cloud privé », m’a confié quelqu’un. Il venait d’installer des machines virtuelles (VM) !

 

Qu’apporte vraiment le cloud ?

Le premier apport du cloud reste la consommation à la demande de ressources informatiques. D’un point de vue financier, je paie ce que je consomme (en serveur, en stockage, etc.) et j’ai une vision en temps réel de ma facture IT (informatique). D’un point de vue technique, je réduis considérablement le temps d’approvisionnement des ressources IT pour un projet.

 

Alexandre Lalaque, spécialiste
des infrastructures informatiques.

Et les micro-services ?

Pourquoi utiliser un logiciel complet ? Je fais mon marché ! Je choisis LA fonction du logiciel qui m’intéresse. Je contrôle ce micro-service par API (Application Programming Interface). Le micro-service tourne dans un container. Les bonnes pratiques de développement et d’urbanisation des Systèmes d’Information (SI) ont évolué.

 

Quel genre de bonne pratique informatique ?

On réalise un découplage systématique des fonctionnalités : d’une appli monolithique, on passe à des « petits » services codés efficacement. Un service remplit une seule fonction. Ce micro-service est fortement découplé techniquement des autres micro-services. Les évolutions, la maintenance, les tests et le suivi en sont grandement facilités.

 

 

Pourquoi les VM disparaissent-elles ?

Les VM ne disparaissent pas complètement. Une VM émule un serveur complet. Or c’est l’applicatif tournant sur cette machine qui nous intéresse. L’applicatif tourne dans un conteneur (« container »). On ne se préoccupe pas du reste (le serveur qui héberge ce service notamment). L’évolution naturelle veut qu’on passe d’un modèle (déjà novateur il y a dix ans !) de consommation de serveurs/VM administrés par les administrateurs système (AdminSys/IT). On passe à un modèle où les développeurs consomment des ressources pour déployer leurs applications conteneurisées ou même du pur SaaS. Du producteur (développeur) au consommateur (utilisateurs) directement !

 

Par où commencer sa migration vers le cloud dans la pratique ?

On commence la migration vers le cloud par le besoin métier. Faites un tableau. Faites une matrice. Listez les logiciels, où ils tournent ou comment vous les utilisez aujourd’hui.

 

L’archivage est un premier usage du stockage dans cloud. Que recommandez-vous ?

Le cloud « immutable » permet de stocker et d’empêcher l’effacement.

 

Peut-on tout stocker dans le cloud ?

Non, organisez vos données pour ne pas tout stocker sur le cloud public. D’abord il y a un aspect légal. Pensez au RGPD (Réglement Général pour la Protection des Données), au HDS (Hébergement des Données de Santé). Mais après, techniquement, définissez la nature des données, leur utilisation, leur criticité, leur capacité à être anonymisées, la fréquence d’accès (souvent ou rarement), la taille des données (volumineuses en taille, en nombre de fichiers, ou les deux).

 

Et le stockage dans le cloud (Storage as a service) ?

Le stockage fait partie de l’infrastructure cloud (IAAS). À ne pas confondre avec SAAS (Software as a service).

 

Justement, pouvez-vous rappeler les trois types d’offres cloud IAAS, SAAS et PAAS ?

IAAS, SAAS et PAAS définissent où est placé le curseur des responsabilités :

  • J’utilise l’IAAS pour des machines virtuelles. Mon contrat définit un taux de disponibilité ;
  • Le PAAS ajoute des services à l’IAAS. Un exemple : S3 d’Amazon. Le modèle de stockage objet S3 est devenu un standard fiable et scalable. S3 fournit un certain niveau de service. Je complète avec d’autres services issus du PAAS comme le cryptage ;
  • J’utilise le SAAS pour le mail ou certaines bases de données.

 

« Scalable », qu’est-ce que ça signifie ?

C’est la capacité de changer à la demande, et de manière transparente pour l’utilisateur, l’ordre de grandeur (accroître ou réduire les capacités) d’un équipement, d’un logiciel ou d’un processus informatique. Une capacité qui prend toute sa dimension avec l’évolution des technologies, des volumes de données, du trafic, de la virtualisation et du cloud.

Source : https://blog.octo.com/wp-content/uploads/2009/12/SegmentationParContrat.png

 

Un logiciel en SAAS tourne sur mon navigateur Internet (Chrome, Firefox…). C’est bien ça ?

SAAS revient à utiliser un logiciel complet à distance. On ne gère rien. C’est aujourd’hui très lié au navigateur.

 

Adobe Creative Cloud, Microsoft Sharepoint et Google Drive proposent du stockage en SAAS. Les trois proposent également des logiciels en SAAS. Seul Adobe couple le stockage aux logiciels utilisés dans l’audiovisuel (Premiere, Photoshop, After Effects…). Qui administre le cloud dans les chaînes TV et les entreprises en général ?

Le « Sys Admin » (administrateur système) met en place et gère le cloud, les sauvegardes, les alertes, les métriques (CPU, I/O). Dans les plus grandes entreprises, ces fonctions sont gérées par des équipes séparées (maintenance, ingénierie système). Une notion leur est commune : être proactif.

 

La R&D ou l’ingénierie déploie les services dans le cloud. Ces services évoluent constamment. Que fait la maintenance (les « Sys Admin ») pour maintenir le système 24h/24 ?

Beaucoup de « Sys Admin » passent leur temps à relancer les services qui tombent en panne. Il manque le lien entre développeurs et opérationnels. Souvent, un « super-héros » apparaît dans les DSI. C’est lui qui maintient en marche l’infrastructure cloud. Mais les super-héros, il faut arrêter !

 

© Adobe Stock / Tierney

 

Alors qui maintient les services cloud en fonctionnement ?

C’est le DevOps, il fait le lien entre R&D et le « Sys Admin » (maintenance). Leur rôle commence par décrire l’infrastructure cloud. Le DevOps utilise un gestionnaire de configuration système avec contrôle des versions.

 

DevOps est un nouveau métier en quelque sorte ?

Non, DevOps n’est pas un métier ! On le voit de plus en plus en entreprise. Au départ c’est une « philosophie » de travail, issue de l’agilité. L’objectif est de faire travailler efficacement « Developers » et « Operators ». On accélère la création de valeur ajoutée pour l’utilisateur final et la qualité, dans le domaine des logiciels.

 

Donc les métiers de Dev (développeur) et Ops (opérationnel) se rejoignent ?

On veut supprimer l’antagonisme historique des missions du Dev et du Ops :

  • Dev : livrer vite et souvent pour satisfaire les nouveaux besoins business ;
  • Ops : stabiliser au maximum pour garantir un niveau de service maximal au client.

 

Une « philosophie » informatique, waouh ! Et dans la pratique ?

Beaucoup de petites entreprises sont paumées. Elles voient arriver la technologie sans savoir la maîtriser.

 

Que conseillez-vous justement aux professionnels des médias, de la TV, du cinéma voire de la vidéo d’entreprise ?

Adopter de bonnes pratiques simples.

 

Donc l’enjeu est de déployer, tester et maintenir le cloud… ?

…avec le minimum d’interventions. Le cloud permet de banaliser le matériel, l’infrastructure.

 

Que conseillez-vous pour réduire l’effort et le risque face au cloud ?

Premièrement, l’intégration et le déploiement continus (« Continuous integration » / « Continuous deployment » – CI/CD). Cette approche permet d’automatiser la mise en production des tests unitaires jusqu’au test d’un déploiement complet.

 

Le cloud permet d’ajouter du stockage à la demande en quelque sorte (nouveau projet, pics de consommation…). CI/CD peut-il m’aider à tester la capacité du système ?

On raisonne à l’envers : penser l’infrastructure par les métriques plus que par les tests de charge. On produit de l’amélioration continue.

 

Quels outils utiliser pour dimensionner son cloud (et le stockage notamment) ?

Kubernetes (K8s) est un orchestrateur de container. On a vu plus haut qu’on tend à aller directement du développeur vers « le client » via des containers. K8s permet de « scaler » l’ensemble des containers et micro-services. Il fait partie des outils « cloud native » validés par la CNCF.

https://fr.wikipedia.org/wiki/Cloud_Native_Computing_Foundation

K8s est utilisé pour tout type d’infra (dans le cloud et On Premise). K8s n’est plus un outil Google, c’est maintenant un projet Open Source.

 

Et le stockage ?

Les automatismes permettent d’adapter l’infrastructure en temps réel. Gérer cette élasticité du cloud est le rôle du DevOps. Comment analyser le besoin ? Quelles briques utiliser et de quel fournisseur ? Comment panacher les services pour gérer les coûts ? Le DevOps répond à ces questions et cela inclut notamment le stockage.

 

Vu la souplesse du cloud, faut-il y déplacer tout son stockage ?

Tout dépend du besoin. Vous pouvez par exemple conserver votre propre stockage et utiliser le cloud pour les pics de capacité (débordement de puissance). C’est la notion d’« hybridation ».

 

Quel risque d’être marié à un seul cloud d’un leader comme Amazon, Google ou Microsoft ?

Chaque fournisseur a ses propres outils. La réversibilité est essentielle mais pas évidente. Heureusement, beaucoup d’outils tiers permettent de contrôler AWS, Azure et Google Cloud.

 

Le cloud promet un casse-tête technique et humain !

Le cloud impose un changement radical de mentalité : ça demande du temps à un développeur de devenir DevOps.

 

Quid de la confidentialité des données ?

Rien n’est magique dans le cloud ! La sécurité et la confidentialité des données doivent être gérées. Le DevOps doit apprendre à utiliser les outils qui facilitent quand même la tâche. L’administrateur système ou l’ingénieur cloud doit « architecturer » et « consommer » le cloud public de façon optimisée et sécurisée. Dans la pratique, on peut voir que les blocs de données sont randomisés (stockés de manière aléatoire). Deux processus de cryptage sont possibles avec AWS (chez vous ou chez AWS).

 

Stockage et traitement de l’image et du son sont étroitement liés. Que conseillez-vous ?

Éviter les aller-retours de données. Chez AWS, il est plus cher de transférer que de stocker. Certains cloud proposent une fonction « cache ». Il s’agit d’un équipement à installer chez vous pour réduire les aller-retours.

 

On imagine bien le travail d’amélioration continue…

Administrateurs système et ingénieurs cloud vont adopter les bonnes pratiques de développement logiciel. Ils appliquent cela sur la partie Ops (infrastructure, cloud, etc.) :

  • « Infra As Code », en documentant chaque nouvelle version ;
  • Travail collaboratif de validation du code avant livraison (« pair programming »).

 

Pourquoi créer des « scripts » qui décrivent son infrastructure cloud ?

IAAS et PAAS offrent des ressources. Chaque fournisseur propose son API. L’API contrôle ces ressources et est un contrat technique public. Cette API est gérée comme un logiciel classique (une application). On appelle ça « Infrastructure as Code » (IaC).

 

Donc l’IaC décrit mon installation dans le cloud en quelque sorte ?

Oui, on peut remonter les machines de manière automatisée si besoin. On utilise Git pour gérer les versions de l’IaC.

 

Ainsi Git, GitHub ou GitLab peuvent gérer le code de mes logiciels et mon infrastructure cloud ! Mais comment faire face à ces changements radicaux ?

Les gens se sont spécialisés. La technologie cloud évolue si vite ! En six mois, on est dépassé…

 

Tout le monde ne peut pas se payer un DevOps. En plus, les DevOps sont très recherchés. C’est LE rôle tendance de l’informatique ?

En plus, les DevOps démarrent la conception de l’infra (cloud ou pas) dès la conception fonctionnelle du logiciel, avec l’équipe projet (PO/Devs).

 

Et la sécurité informatique ? On en parle peu alors que la sécurité est essentielle.

Justement, DevOps évolue pour inclure la sécurité et la supervision. Ce nouveau rôle s’appelle DevSecOps.

 

DevSecOps… Enchanté ! Nos lecteurs font de la vidéo professionnelle, pas de l’informatique ! Mais le cloud paraît indispensable pour rester compétitif. Beaucoup d’info à digérer. Comment aller plus loin ?

Je recommande le blog d’Octo Technologie : https://blog.octo.com/

et ces docs de référence : https://agilemanifesto.org/iso/fr/manifesto.html

https://12factor.net/fr/

https://fr.wikipedia.org/wiki/Microservices

On s’aperçoit que tout est lié (lean/agile/devops/cloud/microservices/API).

Propos recueillis par François Abbe 

Article paru pour la première fois dans Mediakwest #47, p. 108-111