Pause Cloud & DevOps

Pause Cloud & DevOps du 19 juillet

Objectif Libre vous propose un résumé de l’actualité Cloud & DevOps en ce mois d’été.

Prenez un café et quelques minutes : faites une pause !

Au menu aujourd’hui :

  • Le CERN s’entiche du logiciel libre
  • Linux ou le système le plus utilisé sur Microsoft Azure
  • Sortie de NATS 2.0
  • ARA Records Ansible 1.0 enfin disponible

Bonne lecture !

 


Le CERN s’entiche du logiciel libre

 

Le mois dernier, le CERN annonçait qu’il quitterait Microsoft pour se tourner vers des technologies open source particulièrement en ce qui concerne les terminaux utilisateurs de l’organisation.

La raison invoquée est financière, le CERN ne bénéficiant plus de tarifs préférentiels académiques, s’est vu majorer ses licences d’utilisation par la firme de Redmond.

Ceci semble avoir motivé le centre à utiliser des alternatives respectant la culture du logiciel libre. C’est d’ailleurs l’objectif de leur projet lancé depuis un peu plus d’un an, Microsoft Alternatives project, ou MAlt qui, comme son nom l’indique, vise à remplacer au maximum les technologies Microsoft présentes au CERN.

 

En savoir plus :

 


Linux ou le système le plus utilisé sur Microsoft Azure

 

Pour rappeler l’historique, il y a de cela trois ans, Mark Russinovich, directeur technique d’Azure, déclarait qu’un quart des instances présentes sur Azure étaient des systèmes Linux. Puis en 2017, la firme de Redmond annonçait que Linux représentait 40% des machines virtuelles déployées sur leur cloud public. Pour qu’ensuite, au début de ce mois, Sasha Levin, un développeur noyau Linux de Microsoft révèle que l’utilisation de Linux sur leur cloud a surpassé Windows.

Certains pourraient être surpris par cette nouvelle bien que l’on constate aujourd’hui que Linux est le système de prédilection employé par les entreprises, aussi bien pour leur cloud privé que public. L’utilisation de Windows Server ne cesse de diminuer et ce depuis plusieurs années. Dans le plus récent IDC Worldwide Operating Systems and Subsystems Market Shares report qui est de 2017, Linux représentait alors 68% du marché, ses parts n’ont fait qu’augmenter jusqu’à nos jours.

Scott Guthrie, vice-président exécutif de la branche cloud et entreprise de Microsoft déclarait en septembre 2018 que chaque mois, Linux devenait de plus en plus présent sur Azure. Il ajouta que cette tendance n’était pas seulement présente du côté des clients de leur cloud public mais aussi du côté des services natifs d’Azure qui se trouvent souvent avoir Linux pour environnement. Exemple frappant, le système de Software Defined Network d’Azure est entièrement basé sur Linux pour ne citer que celui-ci.

Nous sommes aujourd’hui dans un monde où Linux, icône de la culture du logiciel libre, domine et continue son ascension, même chez Microsoft.

 


Sortie de NATS 2.0

Logo de NATS

Les systèmes distribués actuels augmentent considérablement la complexité opérationnelle à mesure qu’ils montent en charge. Des problèmes surviennent autour de la découverte de services, de la connectivité, de la montée en charge pour les volumes ainsi que pour l’intégration d’applications et de leurs mises à jour. La reprise après un incident peut s’avérer particulièrement laborieuse, d’autant plus que les systèmes ont évolué pour fonctionner dans des périmètres définis par la technologie plutôt que par des problématiques métiers. À mesure que la complexité augmente, les systèmes deviennent coûteux en temps et donc en argent. Ils deviennent fragiles, ce qui rend fastidieux le déploiement de services et d’applications entravant au même instant l’innovation, s’en suivant une augmentation du délai de rentabilisation ainsi que du coût total d’exploitation.

C’est à cette problématique que NATS, un service de messaging open source répond depuis sa création en 2010. Aujourd’hui dans sa version 2.0, NATS fournit une fonctionnalité que son créateur Derek Collison décrit comme étant des « conteneurs pour le messaging » avec une sécurité accrue et un management décentralisé.

Collison déclare que NATS 2.0 a été conçu comme un moyen de fournir un service de messaging hautement disponible qui pourrait être exécuté partout et endiguerait la complexité des systèmes distribués modernes décrite plus haut.

Pour comparer à une solution de messaging existante et plus mature comme Kafka, NATS a été conçu pour des scénarii où une haute performance et une latence basse sont requises et que la perte de quelques données ne soient pas critique. Ce que la documentation de NATS décrit comme « fire and forget » (faire feu puis oublier). D’un point de vue architecture cela est dû à l’absence d’une couche de persistance, NATS ne stocke aucune donnée durablement par ses propres moyens. À noter que NATS ne requiert aucune dépendance externe pour fonctionner alors que Kafka devra s’appuyer sur Zookeeper.

Au début de l’année dernière, le projet open source NATS rejoignait la Cloud Native Computing Foundation (CNCF) en incubation.

Pour ceux considérant une montée de version, NATS 2.0 offre une rétrocompatibilité totale et est distribué sous une licence Apache 2.0.

 

En savoir plus :

 


ARA Records Ansible 1.0 enfin disponible

Logo de ARA Records Ansible

ARA inspecte les playbooks Ansible et les rend plus simple à comprendre et à débugger. Le projet sauvegarde les résultats des playbooks dans une base de données locale ou distante en utilisant un plugin de callback Ansible et fournit une API pour intégrer ces données dans des outils et des interfaces.

Après plus de trois ans depuis la création du projet, la version finale 1.0 de ARA Records Ansible est enfin disponible. La nouvelle sortie marque l’obsolescence d’ARA 0.x et bien que toutes les fonctionnalités n’ont pas été portées, le projet va de l’avant et comblera celles qui sont manquantes dans les futures sorties.

Les principaux changements depuis ARA 0.x sont les suivants :

  • Le backend, originellement en Flask, a été réécrit à l’aide de Django/Django-rest-framework.
  • Une nouvelle API ainsi que de nouveaux clients sont disponibles pour enregistrer et faire appel à des résultats de playbook.
  • Les dépendances du projet ont été séparées : les plugins Ansible, le backend d’API et l’interface web peuvent être installés indépendamment.
  • L’interface web a été réécrite pour être un projet standalone : ara-web.

En résumé, tous les différents composants avant la 1.0, l’interface web incluse, communiquaient directement avec le modèle de base de données. A présent ces premiers interagissent avec la nouvelle API REST, ce qui produit un développement, une maintenance et une intégration facilités.

Il est utile de noter qu’ARA est un projet libre et open source, protégé par une licence GPLv3.
Les revues de code et la CI sont hébergées sur la plate-forme de développement de la fondation OpenStack : OpenDev. Ce faisant, qui le souhaite peut participer au projet en se renseignant au moyen de la documentation contributeur.

 

En savoir plus :