Chargement...

Talk

Défiler

Article précédent: Comment éviter le "trip technologique" en innovation!
Prochain article: Votre littératie numérique est-elle suffisante pour demeurer concurrentiel?

22 juin 2020

Le cloud, comment s'y retrouver?

par Kevin Moore Président

Cloud

Depuis plusieurs années, Amazon, Google et Microsoft ont déployé des fortunes pour mettre en place leurs infrastructures cloud. Ils ont également investi d’importantes sommes en marketing afin d’amener les entreprises à opérer une migration vers le cloud.

La vraie question que j’aimerais vous poser ici est plutôt: comprenez-vous bien ce qu'est le cloud? Quels avantages peut-il y avoir pour vous? Quelle stratégie de migration de vos systèmes devriez-vous adopter pour tirer avantage du cloud?

Pour nous, c'est notre quotidien. Nous comprenons bien l'offre et l'applicabilité de ces services. Pour vous qui êtes dans votre entreprise, cela peut paraître beaucoup plus abstrait. Seulement chez AWS, le nombre de services est passé de 25 en 2013 à plus de 182 en 2019. Maintenant, multipliez le tout par 3, on parle d'une offre de plus de 500 services, il est donc tout à fait normal que vous ayez de la difficulté à vous y retrouver!

Le cloud, je veux bien, mais c'est quoi au juste?

Qu'est-ce que le cloud au juste? Le mot "cloud" ou infonuagique est utilisé à plusieurs sauces. Chaque personne qui tente de vous le vendre vous donnera une explication différente, ou presque…

Afin de mettre un peu de lumière sur le sujet, regardons en détail les 4 catégories de services offerts sur le cloud:

1. Infrastructure as a Service (IaaS

On parle ici d'avoir un accès simple et rapide à une infrastructure (ordinateurs, réseau, stockage) hébergée chez votre fournisseur cloud. Ceci vous permet donc de migrer vos serveurs physiques vers une infrastructure infonuagique virtualisée, donc plus besoin de vous soucier de votre hardware. De plus, ceci vous permet de libérer certains de vos locaux en plus d’éliminer le risque de devoir acheter du nouveau matériel à tous les 3 à 5 ans afin de suivre la demande en termes d’ordinateurs et de puissance serveur. Ce dont vous avez besoin maintenant est une excellente connexion internet pour accéder à votre infrastructure cloud, et ce, peu importe l’endroit où vous vous trouvez. Ceci étant dit, l’avantage majeur est que la gestion de vos machines virtuelles reste sous votre responsabilité tout en éliminant la gestion du volet matériel.

2. Container as a Service (CaaS)

Ici, c'est le petit nouveau dans la série de "as-a-service". Mais d’abord, qu'est-ce qu'un container? Un container est une micro-machine virtuelle. Sur cette machine, les développeurs n'installent que ce qui est nécessaire, donc ça regroupe entre autres le code ainsi que les configurations d’une application. L’avantage est que la micro-machine demande moins de ressources qu'une machine virtuelle. C'est également plus sécuritaire et facilement portable.

Avec l'arrivée de Kubernetes (orchestrateur), les containers ont pris beaucoup de place. Vous pouvez voir l’orchestrateur comme un chef d'orchestre. C'est lui qui analyse l'ensemble des containers et qui alloue les ressources. Il décide si plus de containers sont requis pour répondre à la demande. Il augmente également le nombre de machines qui sont requises pour faire croître le nombre de containers.

Avec ces containers, nous pouvons maintenant prendre des solutions complètes et écrire des scripts pour les déployer de manière constante. Il devient donc facile de prendre une solution existante et de la déployer dans notre cluster Kubernetes. Vous pouvez voir ces services ou systèmes plus complexes comme des PaaS qui sont déployés par vous, dans votre cluster. Un autre avantage de ce mode est que vous n'avez pas à vous attacher à un cloud en particulier. Vous pourrez déplacer votre cluster de Google à Amazon à Microsoft et même le ramener chez vous si vous le souhaitez.

Google offre Anthos tandis que Microsoft offre Arc qui tous deux permettent de déployer sur différents cloud en même temps. Ceci réduit également les chances d'interruption de service, car ce risque sera partagé à travers différents fournisseurs. Beaucoup de clients apprécient d'ailleurs cette latitude. Un autre avantage est que Kubernetes supporte des containers Linux et Windows. Ceci permet de migrer et d'isoler d'anciens systèmes afin de les faire fonctionner dans votre cluster. Donc, il s'agit ici d'un mix de IaaS (micro-machine virtuelle) et PaaS (service disponible à la demande et qui supporte l'auto-scaling). La gestion de votre cluster peut être entièrement gérée par les services Kubernetes en ligne, mais vous devrez quand même vous assurer que les systèmes déployés (containers) dans votre cluster fonctionnent bien.

3. Platform as a Service (Paas)

On parle ici d'un environnement de développement dans le cloud. Il s'agit de services qui accélèrent le développement d'applications sur mesure et qui sont entièrement gérés. Par entièrement géré, je fais référence à tout ce qui touche aux mises à jour et technicalités de déploiement. Techniquement, avec un PaaS vous voulez vous éloigner de la machine et vous n’y avez plus accès. Par exemple, si vous utilisez un fournisseur cloud pour une BD MongoDB, votre fournisseur va vous offrir la création de votre BD en un seul clic. Il va s'occuper de la créer, de générer les accès nécessaires, de faire les backups à intervalles voulus et vous ne payerez que pour ce que vous utilisez. Idem pour d'autres services plus complexes à installer comme Kafka ou Apache Spark par exemple. Ces systèmes sont distribués et parfois le déploiement et la configuration initiale peuvent être "time-consuming".

En mode PaaS, vous répondez à quelques questions, et voilà, votre service est prêt à utiliser. Il s'agit donc d'une façon plus rapide d'arriver au point X, mais vous vous attacherez directement à un fournisseur cloud en particulier. Ainsi, c’est l’une des facettes qui diffère un PaaS à un CaaS, car tel que mentionné ci-haut, avec un CaaS il n’est pas nécessaire de s’attacher à un fournisseur cloud. Bref, dépendamment de vos besoins, je dirais que ceci peut être intéressant comme approche pour certaines situations et d’autres fois moins. En résumé, si les contraintes d’un PaaS ne répondent pas aux besoins spécifiques de votre entreprise, je vous suggère d’opter pour le mode CaaS.

4. Software as a Service (SaaS)
Il y a fort à parier que vous utilisez présentement des logiciels ou applications hébergés dans le cloud tels qu’Office365 et QuickBooks online. Si c’est le cas, vous utilisez des SaaS sans même le savoir!

Les SaaS sont majoritairement des solutions logicielles bâties à l'aide d'un PaaS ou d'un CaaS, comme vous pouvez le constater sur l’image ci-dessous.

Source: https://azure.microsoft.com/fr-fr/overview/what-is-iaas/

Les SaaS répondent à un besoin d’affaires bien précis, par exemple : une application de gestion des dépenses, une application pour vos feuilles de temps ou encore votre solution comptable en ligne. Avec ce type de service, vous serez normalement facturé à l’utilisation sur une base mensuelle en fonction de la structure de prix du fournisseur (par utilisateur, par version, etc…). Vous trouverez aussi certains logiciels plus étoffés tels que certains ERP offerts en mode SaaS. Les mises à jour se font auto-magiquement sans que vous n'ayez à faire quoi que ce soit. Cependant, plus le SaaS offre des personnalisations, plus on doit être prudent. L'erreur que les clients font souvent est qu'ils trouvent un SaaS qui offre 70-80% de ce qu'ils veulent et au lieu de l'utiliser tel quel, ils l’adaptent à leurs processus. C'est à partir de ce moment que les problèmes se pointent le bout du nez. Certains vont vouloir modifier directement le SaaS via certains points d'extensions pour adapter les fonctionnalités aux besoins spécifiques de leur organisation. Le problème est que le SaaS peut effectuer des mises à jour qui peuvent potentiellement briser vos personnalisations. Ces mêmes personnalisations que vous aviez mises en place initialement pour « faciliter » votre travail au quotidien. Bref, vous pourriez arriver au bureau un beau matin, le SaaS a fait une mise à jour et malheureusement toute l’entreprise est arrêtée, car vos modifications n’ont pas suivi la mise à jour. Ce qui est probablement un des pires scénarios envisagés, et qui est très, voire trop souvent, vécu en entreprise. Il faut donc savoir qu’avec un SaaS, vous devez l’utiliser tel qu’il est et suivre ses façons de faire sans le dénaturer, et ce, sous aucun prétexte! Si vous êtes prêt à respecter cette condition, alors les SaaS sont une option très intéressante. Si je reviens à mes exemples de départ, les courriels et Quickbooks, ces systèmes sont standardisés et personne n'a besoin de les personnaliser en dehors de ce qui est permis. Ils sont donc d'excellents candidats à une utilisation SaaS. Idem si vous trouvez un SaaS dans votre domaine qui est 1:1 avec vos façons de faire, je vous dis alors un bon go for it.

Si vous voulez vraiment aller en mode SaaS, l'autre façon de l'adopter est de modifier les processus et façons de faire de son organisation afin de se plier aux façons de faire du SaaS. Si vous êtes prêt à le faire, le SaaS est une bonne approche. Dans tous les cas, cette solution offre généralement des APIs (application programming interface) qui permettent de créer certains objets ou d'obtenir certaines informations. En d’autres termes, ces APIs peuvent être utilisés pour automatiser certains aspects et non pour changer les processus ou le flow d'information du SaaS.

Finalement, avec les SaaS, il est important de garder en tête que vous n'avez aucun contrôle sur l'évolution de la plateforme. Vous devrez suivre la parade et travailler avec les paramètres imposés par le fournisseur. De l'autre côté de la médaille, vous aurez droit à des améliorations régulières à la plateforme, et ce, de manière gratuite. Puisque vous n'aurez pas ou très peu d'influence sur quelles fonctionnalités doivent être ajoutées, modifiées ou supprimées, c’est un important point à prendre en considération dans votre réflexion.

 Rappelons qu’un des principaux avantages du cloud est qu'il vous permet de payer à l'utilisation et ceci est vrai pour chacune des solutions présentées. Vous pouvez alors moduler vos factures en fonction de l'utilisation que vous faites. Vous n'avez plus besoin d'acheter de plus gros serveurs "au cas où" vous pourriez avoir besoin de plus d’espace ou de puissance de calcul dans le futur. L'adhésion est simple, il suffit de créer votre compte, entrer votre carte de crédit et vous ne payerez qu’à l'utilisation!

Vous comprendrez donc que vous venez remplacer votre CAPEX (capital expenditure) par un OPEX (operational expenditure).  Comme vous pouvez le constater, il y a plusieurs façons de faire le saut vers le cloud et tout dépend des besoins spécifiques de votre organisation. 

Par où dois-je le prendre?
Afin de vous éclairer, voici un petit guide pour vous aider à choisir quand utiliser quelle approche. Gardez en tête que chaque client et chaque système a ses particularités. 

SaaS
Si un SaaS répond entièrement à vos besoins, sans que vous n’ayez besoin d’y apporter aucune modification, allez-y pour cette option. La règle est simple, SaaS = on le prend tel quel. Par contre, la réalité est souvent un peu plus complexe et votre entreprise aura assurément besoin de plus d'un SaaS pour opérer. L’avantage concurrentiel d’une entreprise se retrouve fréquemment dans les opérations et méthodes de travail de celle-ci, ce qui explique pourquoi un SaaS répond difficilement aux besoins 1:1 d’une entreprise, même si elles sont finalement dans la même industrie. De là, si vous êtes très chanceux, vous pourrez utiliser 4-5 SaaS qui vont être en mesure de vous offrir exactement ce que vous voulez. Cependant, ceci fera en sorte qu'à un moment ou un autre, vous aurez de la double saisie à faire et vous devrez utiliser les API. Ce qui vous amène au SaaS + PaaS.

SaaS + Automatisation PaaS
Dans le cas où vous avez besoin de plus d'un SaaS, vous voudrez peut-être éviter la double saisie (par exemple, votre système comptable et votre système de feuilles de temps/projet). Au passage vous aurez quelques données à modifier et d'autres à créer. Donc pour synchroniser tout ce beau monde, vous aurez besoin d'un peu de code natif ou d'utiliser certains outils d'automatisation tels que Zapier ou IFTTT. À noter que ces outils d'automatisation sont disponibles en ligne et permettent de faire certaines automatisations simples.

PaaS
Vous pouvez aussi décider de développer des systèmes propres à vous et qui collent parfaitement à vos processus. Ceci permet entre autres de se doter d'avantages compétitifs. Ils pourront bien entendu se connecter avec d'autres systèmes existants ou des SaaS que vous utilisez déjà. Cependant, si vous et tous vous compétiteurs fonctionnez de la même manière, il devient difficile d'innover. Vous êtes limité par les systèmes que vous utilisez, dans ce cas, tous les mêmes. Donc une façon de s'affranchir est d'offrir des produits ou des services différents sur mesure. Les PaaS sont la porte d'entrée, car ils vous permettent de rapidement développer des solutions qui sont robustes et "scalable". Tel que mentionné plus haut, ils vous attachent à un fournisseur cloud précis, mais accélèrent le développement. Ici vous devez vous poser les questions suivantes à savoir si vous y allez pur PaaS ou si vous optez plutôt pour du CaaS. À quel point la portabilité d'un fournisseur cloud à l'autre est importante pour vous? À quel point voulez-vous vous dégager entièrement de la maintenance et des mises à jour des produits que vous utiliserez pour bâtir votre solution? Est-ce que le prix de votre liberté est trop grand pour vos ambitions?

CaaS
Si votre liberté et votre autonomie prime sur le prix et la rapidité de mise-en-œuvre, alors allez-y pour l'option CaaS. Ici, vous avez toute la latitude désirée. Sachez qu'une bonne partie des services PaaS peuvent être rapidement déployés sur Kubernetes. Une chose importante à savoir est que plusieurs services en mode PaaS sont basés sur des projets open source à la base. Donc vous en aurez presqu'autant pour votre argent. Vous perdrez peut-être certaines automatisations "point and click" au niveau des déploiements que vous devrez scripter. Mis à part ceci, vous aurez le même niveau de performance et d'auto-scaling qu'en mode PaaS. Il faudra simplement prévoir du temps pour la gestion des environnements, des mises à jour et autres interventions nécessaires au bon fonctionnement de votre cluster Kubernetes. Un autre avantage du CaaS est que vous pouvez migrer certaines de vos applications existantes qui roulent sur vos serveurs vers des containers dans Kubernetes. Vous obtiendrez ainsi une meilleure isolation et moins de machines virtuelles à maintenir. Vous pourrez ainsi vous assurer de garder les applications en isolation et ainsi éviter que certaines mises à jour d'une application impactent les autres applications. Vous pourrez donc faire fonctionner votre parc applicatif entièrement dans Kubernetes. Donc avant d'envisager de vous créer de gros serveurs en mode IaaS et d'y installer vos systèmes, si vous êtes en mesure de le faire, optez pour le CaaS. Migrez vos applications vers des containers et déployez-les dans le cloud. Vous faciliterez ainsi le déploiement de vos systèmes. 

IaaS
Finalement, si les options précédentes ne fonctionnent pas ou ne sont pas rentables ou possibles, vous pouvez effectuer une migration IaaS. Dans ce cas, calculez votre ROI et l'impact OPEX vs CAPEX afin de prendre une décision éclairée.

Now what?
J'espère que ces petites explications vous permettront de vous faire une meilleure idée de ce qu'est le cloud. Il existe plusieurs options, mais aussi plusieurs façons de faire son entrée dans l’infonuagique. L'important est de choisir la bonne approche qui convient aux besoins spécifiques de votre entreprise!

Rappelez-vous, peu importe la solution que vous choisirez, cela vous permettra de :

  • Payer à l'utilisation
  • D’ajuster votre utilisation en fonction de vos besoins (en termes de stockage et de puissance de calcul par exemple).
  • Vous affranchir de tout le volet matériel, donc vous passez en OPEX vs CAPEX.

Évidemment, chacune des stratégies aura des avantages et des inconvénients. Je vous conseille donc de vous faire accompagner pour avoir la meilleure architecture cloud en fonction de vos besoins. 

Sachez que nous avons déployé des solutions cloud (toutes stratégies confondues) tant chez nos clients de type startup que de nos clients de type grande entreprise. Tant localement, que distribué géographiquement. Nous avons travaillé chacune de ces stratégies individuellement. Nous avons aussi fait tous les groupements et permutations possibles. Il nous fera donc plaisir de vous aider!

Data is king, AI is the new electricity!
Un des points que nous n'avons pas abordé dans cette introduction est le fait que vous générez de plus en plus de données. Ces données sont en partie chez vous, chez les SaaS que vous utilisez, dans le cloud, dans les téléphones mobiles de vos clients ou de vos employé(e)s et aussi dans les appareils IoT (internet des objets) que vous avez ou que vous aurez prochainement.

Nos sources de données se multiplient et c'est une bonne chose, car l'intelligence artificielle a besoin de beaucoup de données. Par contre, si vos données sont partout, elles sont également nulle part. Il sera donc très difficile de faire des croisements entre les différentes sources et de les utiliser pour entraîner des modèles d'IA.

Il existe plusieurs solutions cloud (SaaS, PaaS, CaaS et un mixte de tout ça) pour vous aider à construire votre premier data lake. En quelques mots, un data lake est un entrepôt de données qui contient toutes vos données dans leur formes brutes et transformées.

Il est donc très pertinent de commencer à construire votre data lake en utilisant le cloud pour lire l'ensemble des vos données, et ce, peu importe où elles se trouvent. Une fois centralisées dans votre data lake, nous pourrons alors utiliser ces données pour les faire parler et aussi pour entraîner des modèles d'IA qui pourront vous aider dans vos opérations quotidiennes. Que soit pour détecter des "patterns" que nous n'aviez jamais vu ou pour prédire des comportements, tout ce monde s'ouvrira maintenant à vous.

The end...
Pour conclure, gardez en tête que ceci n'est qu'une introduction au cloud. Chaque concept introduit pourrait être expliqué en plusieurs pages de textes. Nous avons voulu garder le texte court et en surface pour vous donner une bonne compréhension de base. Si vous avez des questions plus précises sur les stratégies à adopter ou que vous aimeriez avoir tout simplement plus d’informations, il nous fera plaisir de vous aider. N'hésitez pas à communiquer avec nous. Nous travaillons avec tous les partenaires cloud (Amazon, Google et Microsoft). Nous avons réalisé une multitude de projets cloud, car nous sommes nés avec le cloud. Tous les projets que nous avons faits avaient leurs propres particularités, donc il n'y a pas de recette magique. Laissez-nous vous aider dans votre migration cloud, mais surtout à mettre en marche l'innovation au sein de votre entreprise.

 

Vous avez des questions? Contactez-nous!