Cloudlets: là où le cloud rencontre les appareils intelligents

Les clouds publics à grande échelle sont bien établis en tant que nouvelle plate-forme pour les systèmes d'enregistrement. Les fournisseurs d'applications ERP, de chaîne d'approvisionnement, de marketing et de vente sont aujourd'hui majoritairement ou exclusivement basés sur des clouds publics hyperscale. À lui seul, Oracle compte des milliers de clients pour son front-office et son back-office SaaS. Et la liste des clients augmente à un rythme bien supérieur à celui des applications traditionnelles de front-office et de back-office.

Les clouds publics hyperscale sont également, bien entendu, un endroit approprié pour exécuter de nouvelles applications cloud natives qui améliorent ou étendent ces applications de système d'enregistrement. Ces nouvelles applications sont conçues différemment. Alors que les systèmes d'enregistrement sont généralement de grandes applications monolithiques exécutées dans des machines virtuelles dans le cloud, les applications cloud natives sont généralement écrites sous forme de microservices, conditionnées dans des conteneurs et orchestrées pour fournir une application complète aux utilisateurs. Parmi les avantages de cette approche:

  • Une innovation plus rapide
  • La possibilité de fournir une personnalisation spécifique pour chaque utilisation d'application
  • Amélioration de la réutilisation du code
  • Économies de coûts par rapport à la virtualisation conventionnelle grâce à la plus grande densité de déploiement des conteneurs et à une consommation plus efficace des ressources

Tout cela est de notoriété publique, sans cesse vanté, n'est plus débattu.

Moins discutée, cependant, est la galaxie des applications qui ne sont pas nécessairement adaptées au déploiement centralisé de cloud hyperscale. Au lieu de cela, ces applications prospèrent dans des environnements informatiques distribués, potentiellement basés sur des services cloud, à la périphérie du réseau ou à proximité. Ces applications sont des systèmes d'engagement et des systèmes de contrôle.

Des systèmes à la pointe

Les systèmes d'engagement ont été définis par un cabinet d'analystes de premier plan comme «différents des systèmes d'enregistrement traditionnels qui consignent les transactions et maintiennent la comptabilité financière en ordre: ils se concentrent sur les personnes, pas sur les processus ... pour fournir directement des applications et des produits intelligents. dans le contexte de la vie quotidienne et des flux de travail en temps réel des clients, partenaires et employés. » Les systèmes d'engagement, qui sont conçus pour faciliter les interactions humaines, sont intrinsèquement plus décentralisés que les systèmes d'enregistrement.

Un troisième type d'application à distinguer est ce que j'appellerai des systèmes de contrôle. Ces applications fournissent un contrôle en temps réel entre les appareils intelligents. L'exemple classique est peut-être celui des véhicules autonomes. Si deux voitures accélèrent sur l'autoroute à 65 miles par heure, elles ne vont pas coordonner automatiquement leur espacement en envoyant des données sur la vitesse et la position à un centre de données distant pour traitement. Ils vont communiquer directement les uns avec les autres, en répondant en quelques microsecondes. Que ce soit pour accélérer les automobiles, fabriquer des chaînes de montage ou faire de la chirurgie robotique, minimiser la latence du réseau est un enjeu clé pour l'Internet des objets.

Les développeurs qui construisent des systèmes d'engagement et des systèmes de contrôle adoptent également le modèle devops basé sur des microservices et des conteneurs. Pour ces types d'applications, les conteneurs offrent:

  • Coût de déploiement quasi nul sur un grand nombre de systèmes (pensez à des centaines de milliers de véhicules)
  • Temps de démarrage rapides, avec relecture et réinitialisation instantanées
  • Une plus grande portabilité en raison de problèmes de compatibilité de plate-forme réduits sur éventuellement de nombreux types d'ordinateurs sur le réseau

Où ces conteneurs fonctionneront-ils? Pour les systèmes de contrôle, les conteneurs fonctionneront généralement dans les appareils intelligents eux-mêmes - par exemple, à l'intérieur d'une voiture autonome.

Pour exécuter des systèmes d'engagement, les entreprises devront implanter de l'immobilier numérique à la périphérie du réseau, à proximité de leurs clients, employés et partenaires - pas dans des nuages ​​à grande échelle, mais plutôt dans des nuages ​​beaucoup plus petits adaptés aux applications légères basées sur des conteneurs. . Appelez-les cloudlets.

Entrez cloudlets

Les Cloudlets sont un moyen de rapprocher la capacité de cloud computing des appareils intelligents à la périphérie du réseau. Comme les chercheurs de Carnegie Mellon définissent les cloudlets, ils constituent le niveau intermédiaire d'une hiérarchie à trois niveaux: appareil intelligent, cloudlet et cloud. Les Cloudlets peuvent être considérés comme un centre de données dans une boîte, dans le but de rapprocher le cloud de l'appareil. Sur la base des idées du chercheur de la CMU, je pense que les cloudlets devraient avoir quatre attributs clés:

  • Conception d'appareil de petite taille, économique et sans entretien, basée sur la technologie cloud standard
  • Puissant, bien connecté et sécurisé
  • Maintient uniquement l'état souple (conçu pour les microservices et les conteneurs)
  • Situé en bordure du réseau, à proximité des appareils intelligents avec lesquels il communiquera

Les implications sont importantes. Par exemple, alors que de nombreuses personnes ont une vision de l'entreprise virtuelle exécutant des applications de manière centralisée dans un seul centre de données hyperscale dans le cloud, la réalité est que les entreprises innovantes déploieront des applications d'engagement et de contrôle dans des centaines, voire des milliers de cloudlets dans le monde.

Pour un détaillant, il peut être évident où placer l'infrastructure cloudlet et les conteneurs qu'ils gèrent: dans les points de vente du détaillant. Pour les autres entreprises qui n'ont pas de présence locale de brique et de mortier, les fournisseurs de télécommunications offrent des services cloud dans les centres de données métropolitains ou même aussi géolocalisés que la tour de téléphonie cellulaire la plus proche.

En effet, plutôt que de posséder des centaines de centres de données là où une présence est souhaitée, les entreprises peuvent louer une tranche de cloud pendant un certain temps - en fait une chambre d'hôtel pour leur application dans un centre de données local. L'application s'enregistre et se déconnecte selon les besoins des personnes, des appareils ou des capteurs en périphérie du réseau.

Conteneurs d'élevage

Une autre implication importante: l'approche traditionnelle et manuelle de la résolution des problèmes cède la place à l'automatisation. Avec des centaines ou des milliers de conteneurs poussés vers un grand nombre de cloudlets, les jours de dépannage en production sont révolus.

Vous avez une panne matérielle? Les conteneurs à autoscaling peuvent lancer automatiquement un nouveau conteneur sur du matériel cloud redondant selon les besoins. Panne du logiciel système? Les conteneurs défectueux peuvent être éliminés et un nouveau conteneur chargé. Panne du logiciel d'application? Corrigez la source une fois et diffusez une nouvelle vague de conteneurs dans le monde. Ne corrigez ou n'améliorez jamais les conteneurs sur le terrain.

C'est ce qu'on appelle le modèle de déploiement et de gestion des applications «bétail contre animaux de compagnie» tel que décrit par Gavin McCance du CERN. Les animaux sont uniques. Ils sont élevés à la main et soignés avec amour. Quand ils tombent malades, vous les remettez en santé. Il en va de même pour les systèmes OLTP traditionnels et d'aide à la décision construits avec des applications monolithiques massives et complexes.

En revanche, les systèmes basés sur des microservices et des conteneurs sont davantage traités comme du bétail. Les bovins sont presque identiques les uns aux autres. Vous pouvez en avoir des centaines ou des milliers. Quand on tombe malade, on le remplace par un autre.

La vision fondamentale des opérations informatiques pour les systèmes d'engagement et de contrôle basés sur des conteneurs est donc différente. Le service informatique produira de nombreux conteneurs et les poussera vers des cloudlets proches des utilisateurs et des données pour une utilisation à court terme, généralement des heures ou des jours. Si un conteneur tombe en panne ou devient obsolète, il n'est ni corrigé ni mis à niveau: il est supprimé et un nouveau conteneur est poussé vers le cloudlet.

Pour qu'une entreprise fonctionne comme un tout cohérent, les systèmes d'enregistrement, les systèmes d'engagement et les systèmes de contrôle devront être intégrés. Une infrastructure commune pour l'ensemble du cycle de vie - développer, créer, distribuer, surveiller et gérer - peut être utilisée pour créer et déployer des services cloud distribués sous forme de conteneurs. Les grandes applications SaaS monolithiques ne disparaîtront pas, mais elles peuvent être l'exception, pas la règle.

Les technologies nécessaires pour faire de ce concept une réalité commencent à être mises au point. Il y a une reconnaissance croissante de l'importance d'avoir une suite d'outils qui simplifie le cycle de vie du développement, du déploiement et de la gestion des conteneurs.

Le développement d'applications basé sur des microservices repose généralement sur des outils tels que des langages de script, des frameworks de développement, des référentiels sources, des outils de suivi des bogues, des outils d'intégration continue et des référentiels binaires. D'autres outils mettent en package et déploient des microservices en tant que conteneurs. Les outils de gestion pour le déploiement et la configuration sont conçus pour des implémentations fréquentes de services identiques sur des serveurs identiques. Les outils d'orchestration sont utilisés pour créer des collections logiques de conteneurs appartenant à une application pour la gestion des clusters, la planification, la découverte de services, la surveillance, etc.

De nombreuses entreprises fournissent ces outils et les normes de l'industrie commencent à apparaître. En fin de compte, ces outils et normes peuvent permettre aux entreprises d'exploiter un centre de données virtuel composé de nombreux services cloud dans potentiellement des dizaines ou des centaines de centres de données physiques.

Comment démarrer sur cette vision plus large d'un datacenter virtuel? Il y a deux étapes immédiates. Tout d'abord, transférez vos systèmes d'enregistrement dans le cloud public et libérez vos ressources internes pour vous concentrer sur de nouveaux systèmes innovants d'engagement et de contrôle. Deuxièmement, mettez en place une discipline devops au sein de votre organisation informatique. Les deux étapes peuvent être longues et ardues, mais elles peuvent être amorties au fur et à mesure. À la fin du voyage se trouve un centre de données virtuel doté de l'évolutivité, de la fiabilité et de la réactivité nécessaires à une véritable entreprise en temps réel.

Robert Shimp est vice-président du groupe Linux et gestion des produits de virtualisation chez Oracle.

Le New Tech Forum offre un lieu pour explorer et discuter des technologies d'entreprise émergentes avec une profondeur et une ampleur sans précédent. La sélection est subjective, basée sur notre choix des technologies que nous pensons importantes et qui intéressent le plus les lecteurs. n'accepte pas les supports marketing pour la publication et se réserve le droit de modifier tout le contenu fourni. Envoyez toutes vos demandes à [email protected]