ContainerCon Europe 2016 à Berlin : jour 1

On ne devient pas Expert par hasard ! Après avoir été présents dans tous les grand événements OpenStack (tous les summits OpenStack depuis 3 ans et co-organisateurs de l'OpenStack day Paris 2016, premier du nom) et AWS (les RE:invents, et sponsors depuis deux ans des AWS summit Paris), Osones est présent à la containerCon, organisée au sein de la Linuxcon de Berlin. Comme toujours, Osones vous propose de vivre la ContainerCon et LinuxCon Europe de Berlin ! Au programme de ce dossier spécial :

L'équipe Osones à Austin !

En avant Berlin !

La LinuxCon et la ContainerCon sont regroupées à Berlin, au programme: les conteneurs et la sécurité. Des COE (Containers Orchestration Engines) au Kernel Linux. Osones est présent toute la semaine pour suivre cet évènement.

La #ContainerCon, comment ca se passe ?

Cette année, la ContainerCon en Europe s'est déroulée à Berlin. Cet évènement est spécifique à l'Europe, les Nord Américains disposant de leur propre évènement en Août à Toronto, Canada. Il est couplé avec le LinuxCon Europe. Les deux événements, organisés par la Linux Foundation partagent les même Keynotes, l'espace des stands, le planning... Au final les deux événements ne font qu'un.

La salle des Keynotes

Même s'il n'est "que Européen" et pas mondial, cet événement traite de sujets dont on parle beaucoup en ce moment. Et contrairement à ce que l'on pourrait croire, il est intéressant de noter l'absence de surenchère commerciale de la part des acteurs comme IBM, HP, Intel, ou encore Google. Ces derniers nous ont habitués dans d'autres summit tech à une profusion de goodies, soirées déjantées et stands plus impressionnants : des jeux, des tirages au sort pour gagner des drônes, etc. Il n'en est rien ici, et c'est certainement la meilleur preuve que les technologies de conteneurisation ne joue pas la "hype", mais voient plus grand.

Le salon est très sobre, les stands sont à taille humaine, avec quelques goodies qu'il faut négocier en faisant - à minima - semblant de s'intéresser à la technologie en question... Le vrai rôle d'un goodie en somme.

A qui s'adresse l'évènement ?

Le public est assez large : développeurs, sysadmin, experts docker ou débutants. Les conférences sont très diversifiées. Les sessions vont de l'initiation "Kubernetes 101" à des sujets de sécurité dans les conteneurs, réservés aux initiés, dont nous étions friands.

Est-ce qu'une technologie ou une entreprise se démarque ?

Étonnamment, aucun technologie ou entreprise ne semble communiquer de manière extravagante. Contrairement à ce que l'on peut voir dans d'autres grandes messes technologiques, où les entreprises draguent littéralement leurs clients à coup d'évènements open bar, l'environnement est plutôt calme et serein. C'est assez agréable, la priorité reste la technique, même si on peut regretter, en tant que passionnés qui voudraient découvrir les autres acteurs du marché, de ne pas trouver un évènement plus festifs.

Le boothcamp

La keynote

On commence la Keynote de ce premier jour (mardi) avec Jim Zemlin, le directeur exécutif de la Linux Fondation qui présente une rétrospective du Kernel Linux en quelques chiffres.

Les succès

Les stats

Il enchaine ensuite avec la philosophie Open Source qui permet de créer de la valeur, par la collaboration de la communauté, une valeur ajoutée qui est ensuite réinjectée dans la communauté Open Source et qui va à son tour permettre de créer de la valeur. La boucle est bouclée.

S'en suit Solomon Hykes de Docker qui enchaine sur le côté Open Source de Docker, qui emprunte beaucoup au Kernel Linux. La grande différence : Linux a d'abord réalisé le plumbing (mécanique interne) et les distributions sont arrivées après.

Pour Docker, c'est exactement l'inverse : Docker était un produit pour les utilisateurs finaux qui a ensuite "Open Sourcé" sa mécanique interne. Par exemple : runc, libnetwork, libkv etc.

Solomon termine sa présentation en "Open Sourcant" Docker InfraKit, un framework d'infrastructure as code disponible depuis aujourd'hui sur github (https://github.com/docker/infrakit).

En 3ème partie, Steven Tan, Chief Architect et Cameron Bahar, SVP et Global CTO de Huawei nous presentent l'initiative OpenSDS qui a pour but de fournir un API commune pour abstraire les différents système de stockage, tels que du legacy, ceph, glusterfs etc.

Cela permettrait aux solutions comme OpenStack ou Kubernetes de s'affranchir du développement de plugins pour les différents type de stockage, ce qui le cas actuellement pour les deux technologies.

OS storage

Kube storage

Enfin, Jilayne Lovejoy, Principal Open Source Counsel pour ARM est venu nous parler de l'initiative Open Chain (https://www.openchainproject.org/) qui s'intéresse au côté légal des projets open source. Le projet a pour but de faciliter les échanges entre les entreprises, la collaboration entre avocats, ainsi que de définir des bonnes pratiques de communication pour plus de transparence. Le droit est un problème majeur dans le monde de l'Open Source, où il faut sans cesse naviguer entre les licences et les brevets.

Pour terminer, Graham Whaley, Sr. Software Engineer chez Intel, nous parle des similarités et différences entre VMs et conteneurs dans le but de présenter Intel Clear Container : une technologie qui permet de bénéficier de l'isolation d'une machine virtuel tout en profitant des avantages des conteneurs.

Voilà pour la Keynote, on peut maintenant passer à un petit résumé des différentes conf auxquelles nous avons pu assister.

Standardisation dans le monde des conteneurs

Un des points critiques du moment en ce qui concerne l'écosystème conteneurs est l'absence de standardisation. Des standards apparaissent plus ou moins tous les mois : entre Docker, CoreOS, OCI, personne ne tombe d'accord.

Vincent Batts de Red Hat nous fait un petit résumé de l'état actuel des standards et de ce que l'on peut espérer pour la suite.

Les domaines à standardiser sont les suivants :

  • Packaging
  • Runtimes :
    • Rkt
    • Docker
    • cri-o
    • Networking

En ce qui concerne les runtimes, il en existe déjà pas mal :

  • LCX
  • Docker
  • rkt

Le problème est qu'elles ont chacune une configuration specifique :

  • App Container Specification : implementée par rkt
  • Open Container Runtime: date de 2015, implementée par runc

Pour le réseaux :

  • Container Networking Interface : date de 2014, est composée de plugins et est utilisée par rkt, Kuberntes, OpenShift et d'autres
  • libnetwork : portée par Docker, présente des difficultés d'integration en dehors du Docker Engine.

Enfin pour le packaging nous avons :

  • Docker images : specifique a Docker
  • OCI image specification: Basée sur Docker 1.10 and Docker Registry v2, les images sont signables et suportées par differents acteurs tels que rkt, flatpak, skopeo.

On remarque que l'on est bien loin de consensus et qu'il y a encore beaucoup de discussions à mener afin de rendre les conteneurs standardisés, réellement portables, ennuyants, bref, beaucoup moins swag que maintenant.

On rappelle au passage que les standards de facto ne sont pas des standards xkcd

Docker user namespaces and seccomp

Paul Novarese de Docker fait un petit tour des améliorations de sécurité présentes dans Docker. Notamment :

  • La securité des images : Notary by docker qui permet de verifier l'integrité des images Docker.
  • La securité des conteneurs :
    • namespace : ce qui est visible
    • cgroup : ce qui est utilisable en matiere de resource
    • seccomp: ce qu'il est possible de realiser comme operations.

Les seccomp permettent de limiter ce qu'un processus et ses enfant peuvent réaliser en terme d'appels Kernel, Docker implémente un profile de base seccomp depuis la version 1.10 afin de fournir une sécurité out of the box. Il est bien sur possible d'appliquer des politiques personnalisées par conteneur.

Parmi les nouveautés les plus récentes, on distingues les "user namespace", qui vont permettre à un daemon docker de remapper l'utilisateur root d'un conteneur à un utilisateur non root du système hôte. Les conteneur pourront donc fonctionner directement en root sans en avoir les droits sur le système hôte en cas de compromission.

Les applications conteneurisées sont souvent plus sécurisées que sur du bare metal grâce à ces fonctionnalités. Pour rappel, ces fonctionnalités ne sont pas spécifiques à Docker mais dépendent de l'avancée du Kernel Linux.

Session Traefik : un reverse proxy pour vos micro services

On termine la journée avec la session du développeur français Emile Vauge @emilevauge, qui nous a bien fait rire avec les noms des release de Traefik (voir les articles de Kevin et Romain sur Traefik). La version actuelle porte le doux nom de "Reblochon", et nous auront droit à la version "Camembert" pour la version 1.1. Pour la prochaine version, faites vos jeux. Indice : ce ne sont pas des fromages choisis au hasard, ce sont ceux qu'Émile aime... On peut miser sur un fromage français à pâte molle qui sent pas mal.

C'est tout pour aujourd'hui, à demain ;)

Pierre Freund
Kevin Lefevre - @ArchiFleKs

Découvrez les technologies d'alter way