View
43
Download
2
Category
Preview:
Citation preview
Openshift 3et Kubernetes
API Hour #26 - Clermont'ech du 27/03/2017Présenté par Julien Pervillé
2
À propos
Julien Pervillé, 38 ans,
Ingénieur système multi-usage chez Perfect-Memory depuis 2013
Github @jperville (projets chef, docker, openshift)
3
Sommaire1. Contexte
○ 12 factors, Docker
○ Kubernetes, Openshift 3
2. Openshift 3
○ Architecture
○ API
○ Workflow
3. En pratique
4
Contexte (1)● The Twelve Factor App (2012)
Site web : http://12factor.net
Liste de 12 principes à suivre pour écrire des applications web scalables
Par exemple : séparation processus/data, configuration par variables d’environnement, logs etc.
● Docker (2013)
Principe : 1 code source → 1 image docker→ N déploiements (dev/testing/production)
Docker propose des abstractions qui simplifient le déploiement des applications Twelve Factor
$ docker run --rm -ti –name=myapp -p 8080:8080 -v /opt/myapp:/data -e DATADIR=/data myapp
5
Contexte (2)● Kubernetes (2014)
Gestion de cluster et orchestration de containers Docker. Projet star sur Github (22000 étoiles).
Base théorique forte issue de l’expérience de Google dans le déploiement massif de containers.
Projet Open Source ; multiple offres commerciales comme Google Container Engine (GKE).
● Openshift 3 (2015)
Surcouche de Kubernetes pour l’Entreprise, par Red Hat.
Valeur ajoutée : utilisateurs, gestion droits, workflow source to image etc.
6
Openshift 3 (1)● Bien démarrer avec Openshift
– Documentation : https://docs.openshift.org/latest/welcome/index.html
– Téléchargements : https://github.com/openshift/origin/releases
– Déploiements jouets pour développeurs : `oc cluster up`, minishift, GKE
– Déploiement de production : AWS, GKE, metal (via playbook ansible ou cookbook chef)
● Prérequis :
– Système Linux récent (par exemple : Ubuntu 16.04, Centos 7)
– Docker récent
– Binaires client Openshift 3
7
Openshift 3 (2)
8
Openshift 3 (3)
9
Openshift 3 (4)
Workflow de déploiement continu des applications chez Perfect-Memory, avec Openshift.
10
En pratique
11
Conclusion et futur
Openshift et Kubernetes sont des plate-formes qui encouragent les bonnes pratiques, tant pour les développeurs que pour les administrateurs systèmes. Mais le nombre de concepts fait que ces plate-formes ont une certaine courbe d’apprentissage.
Certaines des fonctionnalités d’Openshift ont été intégrées dans Kubernetes (Deployments), d’autres sont sur le point de l’être (Templates).
Dans la prochaine version d’Openshift (v3.6), l’API Openshift est exposée sous forme de plugin « API Groups » Kubernetes ; à terme Openshift pourrait simplement devenir une extension de Kubernetes (tout en gardant sa valeur ajoutée).
12
Merci !
Questions ?
Recommended