26
DevOps et "Containerization" Lundi 14 Décembre 2015

Afterworks @Nouméa - DevOps, approche par container et Docker

Embed Size (px)

Citation preview

Page 1: Afterworks @Nouméa - DevOps, approche par container et Docker

DevOps et "Containerization"Lundi 14 Décembre 2015

Page 2: Afterworks @Nouméa - DevOps, approche par container et Docker

Les afterworks• Partager l'expérience et les passions• Etre un point de rencontre des passionnés de technologie Microsoft• Réunir et rencontrer des personnes intéressés par les nouvelles

technologies• Axé sur l'échange• Evènement "Non Microsoft" (officiel)

• Retrouvez-nous sur :• Facebook "Afterworks Nouméa" :

https://www.facebook.com/groups/afterworks.communautes.noumea/ • Lien : https://lescommunautesms-public.sharepoint.com/afterworks

Page 3: Afterworks @Nouméa - DevOps, approche par container et Docker

Afterworks 14/12/15 - Agenda• DevOps

• Virtualisation VS Container

• Docker

• Windows Container / Hyper-V Container

• Nano server

Page 4: Afterworks @Nouméa - DevOps, approche par container et Docker

Remerciements

Page 5: Afterworks @Nouméa - DevOps, approche par container et Docker

DevOps et "Containerization"Où comprendre comment le container a rendu possible l'approche DevOps - Julien CHABLE – Lundi 14 Décembre 2015

Page 6: Afterworks @Nouméa - DevOps, approche par container et Docker

Speaker Julien CHABLESociété : NCIT – Consultant SharePoint & .NET

Most Valuable Professional SharePoint Server

Certifications :• MCT & MCP SharePoint 2010/2013

Compétences :• SharePoint• Office 365 & Azure• Développement .NET

Me contacter :• Email : [email protected] • Mob : +687 95 61 57• Blog : http://julien.chable.net • Twitter : @JChable

Page 7: Afterworks @Nouméa - DevOps, approche par container et Docker

Agenda• DevOps

• VM versus Container

• Docker et "Docker for Windows"

• Windows Server container

• Hyper-V container

Page 8: Afterworks @Nouméa - DevOps, approche par container et Docker

Dev versus OpsLors d'un déploiement :

Ops : "Ton appli se déploit pas !"Dev : "Ca marche sur ma machine"

Ops : "C'est pas mon serveur, c'est ton code"

Page 9: Afterworks @Nouméa - DevOps, approche par container et Docker

Les différences …• Le déconnexion entre ces publics amène à des conflits et

un manque d'efficacité

• Les Devs ne déploient pas des applications exemptes de bugs

• Les Ops sont motivés pour résister au changement

• Le processus de développement est Agile• Le processus opérationnel est statique

Page 10: Afterworks @Nouméa - DevOps, approche par container et Docker

Quel est le rôle des Devs et des Ops• Développeur• Crée le changement• Ajout ou modifie des fonctionnalités (et des bugs)

• Ops• Crée la stabilité du service• Crée ou améliorer les services

Page 11: Afterworks @Nouméa - DevOps, approche par container et Docker

N'oublions pas que …• Nous sommes tous là pour apporter des fonctionnalités

et des solutions aux utilisateurs

• Le changement :• … est requis pour améliorer le fonctionnement de l'entreprise et de

sa compétitivité/efficacité• … ne signifie pas une rupture• … doit être exploité et non craint

Page 12: Afterworks @Nouméa - DevOps, approche par container et Docker

Qu'est-ce que le DevOps• C'est une approche qui relie le fossé entre le

développement logiciel agile et les opérations

• Un esprit collaboratif entre les Devs et les Ops

• Pour les Ops, ce que Agile est au développement logiciel pour les Devs

• C.A.M.S. : Culture, Automation, Measurement, Sharing

Page 13: Afterworks @Nouméa - DevOps, approche par container et Docker

DevOps et industrialisation par le container

Page 14: Afterworks @Nouméa - DevOps, approche par container et Docker

DevOps : approche par container• Dans un monde idéal :• Je suis un développeur :

• Je fabrique un container pour mon application (frameworks, dépendances, etc)

• Je ne m'occupe pas du stockage, réseau, etc

• Je suis un opérateur :• Je lance des containers (et pas besoin

de les modifier)• J'arrange la plomberie

stockage/réseau selon mon référentiel

Page 15: Afterworks @Nouméa - DevOps, approche par container et Docker

DevOps : une réalité

Page 16: Afterworks @Nouméa - DevOps, approche par container et Docker

Machine virtuelle • Ressemble à une machine physique• Boot, noyau, drivers• Système d'exploitation• Utilitaires et framework• Processeur et RAM dédiée• Stockage dédié (dont OS et autres dépendances)

• Communique avec l'extérieur via des périphériques virtuels

• La virtualisation aujourd'hui :• Virtualiser le processeur et la mémoire :

(relativement) facile• Virtualiser le stockage et le réseau : (plus) difficile

défaillances, plusieurs composants doivent interagir

Page 17: Afterworks @Nouméa - DevOps, approche par container et Docker

Container• N'essaie pas de ressembler à une machine

physique• Pas de boot, de noyau, de drivers• Pas d'OS, d'utilitaires, …

• Exécute du code dans un processus (qui tourne sur le noyau hôte)

• Communique avec l'extérieur via des appels systèmes

• Analogie à une machine virtuel (CLR, JVM)• Exécution de MSIL/bytecode, communication via les APIs• Pas de noyau, OS, … juste l'application

Un container inclut les applications et les dépendances mais partage l'OS avec les autres

containers

Page 18: Afterworks @Nouméa - DevOps, approche par container et Docker

Avantage du container• Elimination du risque de

dépendances manquantes Le Dev livre sa machine

• Isolation des applications• Densification des serveurs applicatifs• Amélioration de la consistance des

environnements• Réutilisation des images

(configuration + application)• Accélération des déploiements et des

livraisons vers les utilisateurs• Plus de fiabilité ( Devs <-> Ops)

Page 19: Afterworks @Nouméa - DevOps, approche par container et Docker

Portabilité• Résolument orienté Cloud• Changement

d'hébergement (serveur ou fournisseur) simple et fiable

Page 20: Afterworks @Nouméa - DevOps, approche par container et Docker

Docker• Réutilisation de la fonctionnalité du container Linux

existante dans le kernel (mais trop complexe à mettre en œuvre)

• Leader du container en 2015

• Projet open source :• https://github.com/docker/docker

• Disponible nativement sur Linux

• Docker Hub dispose de 100 000 images

Page 21: Afterworks @Nouméa - DevOps, approche par container et Docker

Démonstration

Page 22: Afterworks @Nouméa - DevOps, approche par container et Docker

Docker et Windows• Même expérience Docker sur

Windows que sur Linux• Windows 7.1, 8/8.1 (Windows 10

non supporté)

• Windows Server 2016 (TP4 aujourd'hui) propose 2 types de containes :• Windows Server container• Hyper-V container

Page 23: Afterworks @Nouméa - DevOps, approche par container et Docker

Windows Server container• Implémentation des containers Docker sur Windows Server• Peut-être gérer avec les clients Docker (même ligne de

commande) et PowerShell• Chaque application s'exécute dans son propre espace utilisateur,

isolant les containers sur l'OS partagé

Page 24: Afterworks @Nouméa - DevOps, approche par container et Docker

Windows Server Container - Limites• Une isolation insuffisante (l'isolation user-mode partage du

kernel). Sur un tenant de confiance (entreprise), cela n'est pas un souci. Sur un multi-tenant Cloud, un tenant pourrait essayer d'utiliser le noyau partagé pour attaquer les autres tenants

• Il existe une dépendance avec la version de l'OS hôte et le niveau de patch qui peut causer des soucis si un patch est déployé sur l'hôte qui pourrait rendre inopérationnel les applications

Solution : Hyper-V container

Page 25: Afterworks @Nouméa - DevOps, approche par container et Docker

Hyper-V container• Nouveauté dans Windows Server 2016• Exécution du container en silo dans une VM Hyper-V légère et sans

état• VM Hyper-V invisible : identifié comme un processus

Page 26: Afterworks @Nouméa - DevOps, approche par container et Docker

DevOps et "Containerization"Où comprendre comment le container a rendu possible DevOps - Julien CHABLE – Lundi 14 Décembre 2015

MERCI POUR VOTRE ECOUTE !