클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning Ji-Woong Choi
TTA에 KVM 기반 프로비저닝 기술에 대한 데모 세션을 포함하는 세미나 관련 자료입니다. 클라우드환경으로 가고자 해서 Paas를 어떤 플랫폼위에 올린다면 그리고 가상화 환경이나 클라우드 환경으로 올린다면 어떤 환경으로 올릴것인가를 고민하여야 합니다.
그리고 이 hypervisor중에 cloud 환경에서 가장 주목받는 kvm을 기반으로 하는 두가지 가상화 클라우드 솔루션인 rhev와 openstack을 잠시 살펴볼 것입니다.
그리고 이러한 가상화 클라우드 환경에서 자동화 하는 솔류션을 어떻게 고려해야 하는가를 살펴보고, 그런 솔류션중에 하나인 아테나 피콕에 대해 살펴보겠습니다.
그리고 오픈스택환경하에서 구축해서 사용했던 사용기와 이를 자동화하기위해 개발자들이 사용했던 간단한 ansible provisioning 모습을 시연합니다.
source : http://www.opennaru.com/cloud/container/
가상머신을 구현하기 위하여 VMWARE, KVM, Hyper-V 기술들을 사용하였으나, 최근에는 Docker로 대표되는 LXC (Linux Containers) 와 같은 컨테이너형 가상화쪽으로 화제가 옮겨가고 있습니다.
컨테이너형 가상화 기술은 기존의 가상화 기술보다 가벼워 지고, 이식성이 뛰어난 특징을 가지고 있습니다.
최근에 컨테이너를 많이 사용하는 데에는 그럴 만한 이유가 있습니다. 컨테이너는 애플리케이션을 빠르게 제공하고, 다양한 배포 환경에 구애받지 않고 팀이 더욱 손쉽게 협업할 수 있기 때문입니다. 또한 효과적인 보안 솔루션 및 애플리케이션 통합 전략의 일부로 제공될 수 있습니다.
Architecting for the Cloud using NetflixOSS - Codemash WorkshopSudhir Tonse
This document provides an overview and agenda for a presentation on architecting for the cloud using the Netflix approach. Some key points:
- Netflix has over 40 million members streaming over 1 billion hours per month of content across over 40 countries.
- Netflix runs on AWS and handles billions of requests per day across thousands of instances globally.
- The presentation will discuss how to build your own platform as a service (PaaS) based on Netflix's open source libraries, including platform services, libraries, and tools.
- The Netflix approach focuses on microservices, automation, and resilience to support rapid iteration on cloud infrastructure.
This document provides an introduction to Docker. It begins by introducing the presenter and agenda. It then explains that containers are not virtual machines and discusses the differences in architecture and benefits. It covers the basic Docker workflow of building, shipping, and running containers. It discusses Docker concepts like images, containers, and registries. It demonstrates basic Docker commands. It shows how to define a Dockerfile and build an image. It discusses data persistence using volumes. It covers using Docker Compose to define and run multi-container applications and Docker Swarm for clustering. It provides recommendations for getting started with Docker at different levels.
[Container 기반의 DevOps] Cloud Native
열린기술공방에서 처음으로 런칭한 교육 프로그램의 트렌드 세션 자료입니다. 급변하는 환경에 맞춘 SW를 개발하고 배포하기 위해, 빠른 의사결정을 할 수 있는 환경과 프로세스가 더욱 중요해지고 있는데요. 기업들에게 왜 클라우드 네이티브 전략이 필수적인지에 대해 소개한 자료입니다.
열린기술공방의 교육 과정을 통해 Kubernetes위에서 동작하는 Application의 빌드부터 배포까지의 과정을 한 눈에 확인하실 수 있습니다.
Présentation portant sur le système de virtualisation Docker.
Langue : Français.
Auteur : Colin LEVERGER, me@colinleverger.fr, merci de citer vos sources ;)
Sources : Wikipedia / Docker site officiel : https://www.docker.com/
클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning Ji-Woong Choi
TTA에 KVM 기반 프로비저닝 기술에 대한 데모 세션을 포함하는 세미나 관련 자료입니다. 클라우드환경으로 가고자 해서 Paas를 어떤 플랫폼위에 올린다면 그리고 가상화 환경이나 클라우드 환경으로 올린다면 어떤 환경으로 올릴것인가를 고민하여야 합니다.
그리고 이 hypervisor중에 cloud 환경에서 가장 주목받는 kvm을 기반으로 하는 두가지 가상화 클라우드 솔루션인 rhev와 openstack을 잠시 살펴볼 것입니다.
그리고 이러한 가상화 클라우드 환경에서 자동화 하는 솔류션을 어떻게 고려해야 하는가를 살펴보고, 그런 솔류션중에 하나인 아테나 피콕에 대해 살펴보겠습니다.
그리고 오픈스택환경하에서 구축해서 사용했던 사용기와 이를 자동화하기위해 개발자들이 사용했던 간단한 ansible provisioning 모습을 시연합니다.
source : http://www.opennaru.com/cloud/container/
가상머신을 구현하기 위하여 VMWARE, KVM, Hyper-V 기술들을 사용하였으나, 최근에는 Docker로 대표되는 LXC (Linux Containers) 와 같은 컨테이너형 가상화쪽으로 화제가 옮겨가고 있습니다.
컨테이너형 가상화 기술은 기존의 가상화 기술보다 가벼워 지고, 이식성이 뛰어난 특징을 가지고 있습니다.
최근에 컨테이너를 많이 사용하는 데에는 그럴 만한 이유가 있습니다. 컨테이너는 애플리케이션을 빠르게 제공하고, 다양한 배포 환경에 구애받지 않고 팀이 더욱 손쉽게 협업할 수 있기 때문입니다. 또한 효과적인 보안 솔루션 및 애플리케이션 통합 전략의 일부로 제공될 수 있습니다.
Architecting for the Cloud using NetflixOSS - Codemash WorkshopSudhir Tonse
This document provides an overview and agenda for a presentation on architecting for the cloud using the Netflix approach. Some key points:
- Netflix has over 40 million members streaming over 1 billion hours per month of content across over 40 countries.
- Netflix runs on AWS and handles billions of requests per day across thousands of instances globally.
- The presentation will discuss how to build your own platform as a service (PaaS) based on Netflix's open source libraries, including platform services, libraries, and tools.
- The Netflix approach focuses on microservices, automation, and resilience to support rapid iteration on cloud infrastructure.
This document provides an introduction to Docker. It begins by introducing the presenter and agenda. It then explains that containers are not virtual machines and discusses the differences in architecture and benefits. It covers the basic Docker workflow of building, shipping, and running containers. It discusses Docker concepts like images, containers, and registries. It demonstrates basic Docker commands. It shows how to define a Dockerfile and build an image. It discusses data persistence using volumes. It covers using Docker Compose to define and run multi-container applications and Docker Swarm for clustering. It provides recommendations for getting started with Docker at different levels.
[Container 기반의 DevOps] Cloud Native
열린기술공방에서 처음으로 런칭한 교육 프로그램의 트렌드 세션 자료입니다. 급변하는 환경에 맞춘 SW를 개발하고 배포하기 위해, 빠른 의사결정을 할 수 있는 환경과 프로세스가 더욱 중요해지고 있는데요. 기업들에게 왜 클라우드 네이티브 전략이 필수적인지에 대해 소개한 자료입니다.
열린기술공방의 교육 과정을 통해 Kubernetes위에서 동작하는 Application의 빌드부터 배포까지의 과정을 한 눈에 확인하실 수 있습니다.
Présentation portant sur le système de virtualisation Docker.
Langue : Français.
Auteur : Colin LEVERGER, me@colinleverger.fr, merci de citer vos sources ;)
Sources : Wikipedia / Docker site officiel : https://www.docker.com/
Docker allows building, shipping, and running applications in portable containers. It packages an application with all its dependencies into a standardized unit for software development. Major cloud providers and companies support and use Docker in production. Containers are more lightweight and efficient than virtual machines, providing faster launch times and allowing thousands to run simultaneously on the same server. Docker simplifies distributing applications and ensures a consistent environment.
This document discusses repetitive system administration tasks and proposes Ansible as a solution. It describes how Ansible works using agentless SSH to automate tasks like software installation, configuration, and maintenance across multiple servers. Key aspects covered include Ansible's inventory, modules, playbooks, templates, variables, roles and Docker integration. Ansible Tower is also introduced as a GUI tool for running Ansible jobs. The document recommends Ansible for anyone doing the same tasks across multiple servers to gain efficiencies over manual processes.
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...Edureka!
( ** DevOps Training: https://www.edureka.co/devops ** )
This Docker Explained PPT will explain to you the fundamentals of Docker with a hands-on. Below are the topics covered in the PPT:
Problems Before Docker
Virtualization vs Containerization
What is Docker?
How does Docker work?
Docker Components
Docker Architecture
Docker Compose & Docker Swarm
Hands-On
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기NAVER D2
The document discusses running a TensorFlow Serving (TFS) container using Docker. It shows commands to:
1. Pull the TFS Docker image from a repository
2. Define a script to configure and run the TFS container, specifying the model path, name, and port mapping
3. Run the script to start the TFS container exposing port 13377
Microservices, Containers and Docker
This document provides an overview of microservices, containers, and Docker. It begins by defining microservices as an architectural style where applications are composed of independent, interchangeable components. It discusses benefits of the microservices style such as independent deployability, efficient scaling, and design autonomy. The document then introduces containers as a way to package applications and their dependencies to run uniformly across various environments. It compares containers to virtual machines. Finally, it describes Docker as an open source tool that automates deployment of applications into containers, providing portability and management of containers. The document concludes by discussing the need for container orchestration at scale.
- The document provides biographical information about Sri Rajan, including that he is from India, has worked in IT for over 10 years including 6 years at Rackspace, and has expertise in Linux, OpenStack, and automation.
- It also provides an overview of Rackspace, including that they have over 5,000 employees serving customers in over 120 countries from 9 data centers worldwide.
- Sri Rajan's contact information is included at the end.
Docker nous permet de déployer nos applications dans des conteneurs. Du coup notre infrastructure se retrouve divisée dans différents conteneurs, un pour la base de données, un pour le front, un pour le backend. Voir même une division en services lorsque l’on est dans une approche micro-services.
Mais comment faire communiquer ces différents conteneurs? Comment orchestrer un cluster de conteneurs? Kubernetes est une réponse à ces questions.
This document provides an overview of Kubernetes, a container orchestration system. It begins with background on Docker containers and orchestration tools prior to Kubernetes. It then covers key Kubernetes concepts including pods, labels, replication controllers, and services. Pods are the basic deployable unit in Kubernetes, while replication controllers ensure a specified number of pods are running. Services provide discovery and load balancing for pods. The document demonstrates how Kubernetes can be used to scale, upgrade, and rollback deployments through replication controllers and services.
OpenStack Glance provides image discovery, registration, and retrieval services. It has a RESTful API and supports storing images on various backends like filesystems and OpenStack Swift. Glance components include the Glance API, registry, and database. It supports many disk and container formats and has a caching mechanism. Images can be managed through the Glance API and used to launch instances.
Docker is an open source containerization platform that allows applications to be easily deployed and run across various operating systems and cloud environments. It allows applications and their dependencies to be packaged into standardized executable units called containers that can be run anywhere. Containers are more portable and provide better isolation than virtual machines, making them useful for microservices architecture, continuous integration/deployment, and cloud-native applications.
What is Docker | Docker Tutorial for Beginners | Docker Container | DevOps To...Edureka!
This DevOps Docker Tutorial on what is docker ( Docker Tutorial Blog Series: https://goo.gl/32kupf ) will help you understand how to use Docker Hub, Docker Images, Docker Container & Docker Compose. This tutorial explains Docker's working Architecture and Docker Engine in detail. This Docker tutorial also includes a Hands-On session around Docker by the end of which you will learn to pull a centos Docker Image and spin your own Docker Container. You will also see how to launch multiple docker containers using Docker Compose. Finally, it will also tell you the role Docker plays in the DevOps life-cycle.
The Hands-On session is performed on an Ubuntu-64bit machine in which Docker is installed.
This document discusses infrastructure as code and the HashiCorp ecosystem. Infrastructure as code allows users to define and provision infrastructure through code rather than manual configuration. It can be used to launch, create, change, and downscale infrastructure based on configuration files. Tools like Terraform allow showing what changes will occur before applying them through files like main.tf and variables.tf. Terraform is part of the broader HashiCorp ecosystem of tools.
This document discusses the evolution from monolithic applications to service-oriented architectures (SOA) and microservices. It begins by describing the monolith approach of one giant application that does everything. It then explains that SOA breaks applications into services that communicate with each other. Microservices take this further by making each service independent and focused on doing one thing well. The document outlines some key differences between SOA and microservices, such as microservices having no shared schema/contract and being independently deployable. Overall, it provides an overview of moving from monolithic applications to microservices.
Docker allows building, shipping, and running applications in portable containers. It packages an application with all its dependencies into a standardized unit for software development. Major cloud providers and companies support and use Docker in production. Containers are more lightweight and efficient than virtual machines, providing faster launch times and allowing thousands to run simultaneously on the same server. Docker simplifies distributing applications and ensures a consistent environment.
This document discusses repetitive system administration tasks and proposes Ansible as a solution. It describes how Ansible works using agentless SSH to automate tasks like software installation, configuration, and maintenance across multiple servers. Key aspects covered include Ansible's inventory, modules, playbooks, templates, variables, roles and Docker integration. Ansible Tower is also introduced as a GUI tool for running Ansible jobs. The document recommends Ansible for anyone doing the same tasks across multiple servers to gain efficiencies over manual processes.
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...Edureka!
( ** DevOps Training: https://www.edureka.co/devops ** )
This Docker Explained PPT will explain to you the fundamentals of Docker with a hands-on. Below are the topics covered in the PPT:
Problems Before Docker
Virtualization vs Containerization
What is Docker?
How does Docker work?
Docker Components
Docker Architecture
Docker Compose & Docker Swarm
Hands-On
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기NAVER D2
The document discusses running a TensorFlow Serving (TFS) container using Docker. It shows commands to:
1. Pull the TFS Docker image from a repository
2. Define a script to configure and run the TFS container, specifying the model path, name, and port mapping
3. Run the script to start the TFS container exposing port 13377
Microservices, Containers and Docker
This document provides an overview of microservices, containers, and Docker. It begins by defining microservices as an architectural style where applications are composed of independent, interchangeable components. It discusses benefits of the microservices style such as independent deployability, efficient scaling, and design autonomy. The document then introduces containers as a way to package applications and their dependencies to run uniformly across various environments. It compares containers to virtual machines. Finally, it describes Docker as an open source tool that automates deployment of applications into containers, providing portability and management of containers. The document concludes by discussing the need for container orchestration at scale.
- The document provides biographical information about Sri Rajan, including that he is from India, has worked in IT for over 10 years including 6 years at Rackspace, and has expertise in Linux, OpenStack, and automation.
- It also provides an overview of Rackspace, including that they have over 5,000 employees serving customers in over 120 countries from 9 data centers worldwide.
- Sri Rajan's contact information is included at the end.
Docker nous permet de déployer nos applications dans des conteneurs. Du coup notre infrastructure se retrouve divisée dans différents conteneurs, un pour la base de données, un pour le front, un pour le backend. Voir même une division en services lorsque l’on est dans une approche micro-services.
Mais comment faire communiquer ces différents conteneurs? Comment orchestrer un cluster de conteneurs? Kubernetes est une réponse à ces questions.
This document provides an overview of Kubernetes, a container orchestration system. It begins with background on Docker containers and orchestration tools prior to Kubernetes. It then covers key Kubernetes concepts including pods, labels, replication controllers, and services. Pods are the basic deployable unit in Kubernetes, while replication controllers ensure a specified number of pods are running. Services provide discovery and load balancing for pods. The document demonstrates how Kubernetes can be used to scale, upgrade, and rollback deployments through replication controllers and services.
OpenStack Glance provides image discovery, registration, and retrieval services. It has a RESTful API and supports storing images on various backends like filesystems and OpenStack Swift. Glance components include the Glance API, registry, and database. It supports many disk and container formats and has a caching mechanism. Images can be managed through the Glance API and used to launch instances.
Docker is an open source containerization platform that allows applications to be easily deployed and run across various operating systems and cloud environments. It allows applications and their dependencies to be packaged into standardized executable units called containers that can be run anywhere. Containers are more portable and provide better isolation than virtual machines, making them useful for microservices architecture, continuous integration/deployment, and cloud-native applications.
What is Docker | Docker Tutorial for Beginners | Docker Container | DevOps To...Edureka!
This DevOps Docker Tutorial on what is docker ( Docker Tutorial Blog Series: https://goo.gl/32kupf ) will help you understand how to use Docker Hub, Docker Images, Docker Container & Docker Compose. This tutorial explains Docker's working Architecture and Docker Engine in detail. This Docker tutorial also includes a Hands-On session around Docker by the end of which you will learn to pull a centos Docker Image and spin your own Docker Container. You will also see how to launch multiple docker containers using Docker Compose. Finally, it will also tell you the role Docker plays in the DevOps life-cycle.
The Hands-On session is performed on an Ubuntu-64bit machine in which Docker is installed.
This document discusses infrastructure as code and the HashiCorp ecosystem. Infrastructure as code allows users to define and provision infrastructure through code rather than manual configuration. It can be used to launch, create, change, and downscale infrastructure based on configuration files. Tools like Terraform allow showing what changes will occur before applying them through files like main.tf and variables.tf. Terraform is part of the broader HashiCorp ecosystem of tools.
This document discusses the evolution from monolithic applications to service-oriented architectures (SOA) and microservices. It begins by describing the monolith approach of one giant application that does everything. It then explains that SOA breaks applications into services that communicate with each other. Microservices take this further by making each service independent and focused on doing one thing well. The document outlines some key differences between SOA and microservices, such as microservices having no shared schema/contract and being independently deployable. Overall, it provides an overview of moving from monolithic applications to microservices.
Séminaire DEVOPS, DÉMARCHE ET MISE EN ŒUVRE - ORSYS FormationORSYS
Orsys est le premier Institut de formation aux Nouvelles Technologies de l'Informatique et l'un des acteurs les plus importants dans les domaines du Management et du Développement personnel.
Plus d’informations sur les séminaires ORSYS: http://www.seminaires-orsys.com/
DevOps à l'échelle: ce que l'on a fait, ce que l'on a appris chez Societe Gen...Adrien Blind
The following talk discusses Societe Generale's transformation journey to DevOps, and more largelly to continuous delivery principles, inside a large, traditionnal company. It emphases the importance of practices over tooling, a human centric approach massively leveraging on coaching, and our "framework" approach to make it scaling up to the IS level.
It has been initially delivered at DevOps Rex conference, with teammate Laurent Dussault, also DevOps coach at Societe Generale.
Démarche DevOps : présentation des enjeux et des objectifs de l'adaptation des organisations pour l'amélioration de la qualité des produits livré et l'accélération de la mise à disposition des évolutions
Le monde de l'informatique est divisé depuis toujours en deux univers : les personnes qui créent (Dev) et celles qui exploitent en production (Ops). Cette séparation peut générer stress et frustration. Les équipes n'ont pas l'impression d'aller dans le même sens et cela nuit à la productivité. Pour les réconcilier, un ensemble de pratiques et d'outils ont été imaginées: elles se cachent derrière le terme DevOps. Qu'est-ce que c'est exactement ? Quels problèmes est-ce que cela résout ? Quelle est la bonne approche pour le mettre en place? Nous vous proposons de découvrir notre vision sur ce sujet lors de cette session d'introduction.
20151118 Retour d'Expérience : déploiement Cloud OpenStack chez un opérateurObjectif Libre
Description du projet et enseignements / Bonnes Pratiques.
Présentation par Christophe Sauthier au Paris Open Source Summit le 18/11/2015 dans la Track Cloud / Enterprise.
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteAZUG FR
Dans cette session, nous aborderons les différentes actions qui nous ont permis de mener à bien ce projet ainsi que les contraintes et comment nous les avons contourner afin d'arriver à une infrastructure et garantir un PCA sur cette application.
L’utilisation de PHP est aujourd’hui généralisée dans tous les départements IT. Reconnue pour son évolutivité et son développement rapide, cette technologie doit désormais répondre à de fortes attentes en termes d’exigences et de qualité.
Quels sont les outils nécessaires pour piloter une équipe de développement de taille importante et produire plusieurs centaines de site web par an ? L’heure de l’industrialisation est venue, avec la mise en place d’une planification et d’une organisation de la production de code capables de détecter les bogues avant la publication.
Nous verrons les outils et méthodes nécessaires pour piloter la conception, la production, la publication et la gestion d’équipe.
Depuis maintenant trois sessions, Mathieu Boisvert enseigne les méthodes Agiles à la Chaire de gestion de projet de l'UQAM. Invariablement, les étudiants posent la question sur comment adapter les méthodes Agiles. Bien qu'il soit un expert en développement logiciel, Mathieu propose quelques exemples pour réfléchir avec les participants sur les préalables, les avantages et les difficultés d'adopter les méthodes Agiles dans n'importe quel domaine, notamment :
- La rédaction d'un document de soumission;
- La rédaction de matériel pour la gestion du changement;
- La construction d'une automobile;
- La création de matériel de cours;
- La construction d'un bâtiment.
À la fin de cette présentation, les participants auront une piste de solution pour adapter les méthodes Agiles à n'importe quel contexte.
Similaire à Devops, un tour d'horizon - Eutelsat 2018 (20)
[Capitole du Libre] #serverless - mettez-le en oeuvre dans votre entreprise...Ludovic Piot
Tout comme le Cloud IaaS avant lui, le serverless promet de faciliter le succès de vos projets en accélérant le Time to Market et en fluidifiant les relations entre Devs et Ops.
Mais sa mise en œuvre au sein d’une entreprise reste complexe et coûteuse.
Après 2 ans à mettre en place des plateformes managées de ce type, nous partagons nos expériences de ce qu’il faut faire pour mettre en œuvre du serverless en entreprise, en évitant les douleurs et en limitant les contraintes au maximum.
Tout d’abord l’architecture technique, avec 2 implémentations très différentes : Kubernetes et Helm d’un côté, Clever Cloud on-premise de l’autre.
Ensuite, la mise en place et l’utilisation d’OpenFaaS. Comment tester et versionner du Function as a Service. Mais aussi les problématiques de blue/green deployment, de rolling update, d’A/B testing. Comment diagnostiquer rapidement les dépendances et les communications entre services.
Enfin, en abordant les sujets chers à la production : * vulnerability management et patch management, * hétérogénéïté du parc, * monitoring et alerting, * gestion des stacks obsolètes, etc.
(RivieraDev 2018) #serverless - 2 ans de retourS d'expérienceLudovic Piot
The document discusses serverless computing from multiple perspectives. It begins with definitions of serverless from different sources and perspectives. It then discusses key aspects of serverless architectures for developers and operations teams. For developers, serverless allows a focus on business logic while infrastructure concerns are handled by the platform. For operations, serverless provides automatic scaling and an on-demand/pay-per-use model. The document then shares experiences with different serverless platforms, including an almost-CaaS model using Kubernetes and a PaaS from Clever Cloud.
DevoxxFR 2018 #serverless - Mettez-le en œuvre dans votre entreprise et arriv...Ludovic Piot
Clever Cloud provides a PaaS platform with the promise of "You write code, we run IT". Their platform aims to allow developers to simply git push their code and have it deployed and running in production. However, some challenges remain in ensuring the code is truly production-ready without issues. DevOps practices like continuous integration/delivery can help address this by automating testing and deployments. Overall the Clever Cloud PaaS focuses on empowering developers by handling the operations side so they can focus on writing code.
The document outlines the agenda for a Kubernetes bootcamp being held by ClusterEurope 2018. The morning session will cover Docker fundamentals and deploying a LAMP application using Docker, Minikube, and Helm. The afternoon session will cover additional Kubernetes features like namespaces, persistent volumes, secrets, auto-scaling, ingress, and liveness probes. It will also include a demonstration of serverless technologies using OpenFaaS. Pre-requisites for attendees include a Google account, Git, Minikube, Kubectl, and various code editors. The event is sponsored and will have help available from experienced SRE and cloud architects.
A quick comparison of managed kubernetes services at public cloud providers'Ludovic Piot
A quick comparison of the features between managed kubernetes services at public cloud providers' :
* a KOPS installation of a non-managed Kubernetes cluster on AWS IaaS,
* a managed GKE cluster on Google Cloud Platform
* and a managed AKS cluster on Microsoft Azure
CloudExpo Europe 2017 - DevOps entre client et fournisseurLudovic Piot
Cette vidéo présente une réflexion et un retour d'expérience de 2 ans de pratique du DevOps entre un infogérant/hébergeur et les équipes projet de ses clients.
Comment ont dû évoluer les dispositifs humain, organisationnel, opérationnel, technologique, contractuel et commercial dans la relation entre l'infogérant fournisseur (plutôt Ops) et ses clients (plutôt Devs).
Le speaker : Ludovic Piot a été le créateur et le responsable du pôle Conseil, Architecture et DevOps chez Oxalide pendant 2 ans et demi. Il revient sur les principes de cette mutation dans la relation client-fournisseur vers le DevOps, ses échecs et ses succès et surtout ses objectifs et ses résultats.
Avec l'avénement du DevOps et du cloud public, quel avenir reste-t-il pour les Ops ?
Dans cette conférence, Adrien Blind et Ludovic Piot présentent les mutations en cours du métier des Ops.
Conférence jouée au DevOps D-Day 2016 et lors du Treeptik/Nutanix DevOps Tour 2017.
Oxalide MorningTech #1 - BigData
1er MorningTech @Oxalide, animé par Ludovic Piot (@lpiot), le 15 décembre 2016.
Pour cette 1ère édition du Morning Tech nous vous proposons une overview sur un des thèmes du moment : le Big Data.
Au delà de ce buzz word nous aborderons :
Les grands concepts
Les étapes clés des projets Big Data et les technologies à utiliser (stockage, ingestion, …)
Les enjeux des architectures Big Data (architecture lambda, …)
L'intelligence artificielle (machine learning, deep learning, …)
Et nous finirons par un cas d'usage du big data sur AWS autour de l'utilisation des données gyroscopiques de vos internautes mobiles
Subject: Oxalide's 1st MorningTech talk about BigData.
Date: 15-dec-2016
Speakers: Ludovic Piot (@lpiot, @oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-morningtech-number-1-bigdata
Lien SlideShare : https://www.slideshare.net/LudovicPiot/oxalide-morningtech-1-bigdata
YouTube Video capture: https://youtu.be/7O85lRzvMY0
Main topics:
* Les grands enjeux du BigData
** les 3 V du Gartner : volume, variété, vélocité
* Le stockage des données
** datalake
** les technos
* L'ingestion des données
** ETL
** datastream
** les technos
* Les enjeux du compute
** map-reduce
** spark
** lambda architecture
* Démo d'une plateforme BigData sur AWS
* L'intelligence artificielle
** datascience exploratoire et notebooks,
** machine learning,
** deep learning,
** data pipeline
** les technos
* Pour aller plus loin
** La gouvernance des données
** La dataviz
Oxalide Workshop #5 - Docker avancé @ Kubernetes
5ème Workshop @Oxalide, animé par Julien Follenfant (@jf_flyn), Théo Chamley (@MrTrustor) et Ludovic Piot (@lpiot), le 13 octobre 2016.
Une étude de cas sur la mise en place d'une application Symfony2/PHP/MySQL sous forme de containers Docker, puis sous forme de pods dans Kubernetes.
Présentation de Kubernetes
Démonstration de miniKube
Démonstration du self-healing en cas de perte de pod et de perte de nœud du cluster Kubernetes sur AWS.
Subject: Oxalide's 5th Workshop about a case study on how to deploy a Symfony2 app in Docker, and then in miniKube and a production-ready Kubernetes cluster.
Date: 13-oct-2016
Speakers: Julien Follenfant (@jf_flyn, @oxalide), Théo Chamley (@MrTrustor, @oxalide) et Ludovic Piot (@lpiot, @oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-workshop-number-5-docker-avance-and-kubernetes
Lien SlideShare : https://www.slideshare.net/LudovicPiot/oxalide-workshop-5-docker-avanc-kubernetes
YouTube Video capture: https://youtu.be/072FHARQSmE
Main topics:
* Introduction à la démo dev Docker
* Démo dev Docker
* Passage de Docker à Kubernetes et miniKube
* Présentation de Kubernetes
* Présentation de miniKube
* Démo de miniKube et self-healing
* Démo application multi-instances en haute disponibilité dans Kubernetes
* Self-healing du cluster Kubernetes sur AWS
* Questions/réponses
Oxalide MorningTech #2 - Démarche de performance
2ème MorningTech @Oxalide, animé par Adrien Le Priol (@Priolix) et Ludovic Piot (@lpiot), le 28 février 2017.
Une vue d'ensemble sur la démarche et les outils pour aborder et maîtriser la performance de son site Web.
En 2012, Amazon publiait une étude indiquant que chaque seconde de performance perdue sur son site de commerce lui coûtait $1.6 milliards de chiffre d'affaire.
Par delà ce chiffre colossal avancé par le géant du Web, il est une réalité business : plus un site est lent, et moins les utilisateurs sont enclin à naviguer dessus. Les smartphones et le SoLoMo exacerbent cette réalité avec encore plus depuis 10 ans maintenant.
Sur le terrain, l'architecture technique des sites Web, de plus en plus complexe, rendent ses performances impossibles à prédire : complexité des développements applicatifs, multitude des composants impliqués dans l'architecture technique, recours à des services tiers (issus du SI de votre entreprise, ou de services tiers), big data, machine learning…
Une seule façon de prédire les performances : tester… en situation réelle.
A travers les différentes étapes d'une démarche d'optimisation des performances d'un site Web, les enjeux et les écueils d'une telle démarche vous seront détaillés.
Subject: Oxalide's MorningTech talk about an overview of how to deal with performance in a Web site.
Date: 28-feb-2017
Speakers: Adrien Le Priol (@Priolix, @Oxalide) and Ludovic Piot (@lpiot, @Oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-morning-tech-number-2-demarche-performance
Lien SlideShare : https://www.slideshare.net/LudovicPiot/morning-tech-2-demarche-performance-slides
YouTube Video capture: https://youtu.be/a8jSbvyBzYU
Main topics:
* Les enjeux de la performance d'un site Web
* Les différents éléments de performance d'un site Web
** Infrastructure, architecture technique, tuning, architecture applicative, WebPerf
* L'obsession de la mesure
* Les outils
* Les quickwins
** Caches, upscaling, outscaling, sharding
* La démarche de test de charge
** Méthodologie, outils, types de test, données de test
* La démarche PDCA
** Intégrer les tests de charge au cycle de développement
** Environnement éphémère
* Questions / Réponses
Cloud hybridation leveraging on Docker 1.12Ludovic Piot
Since many apps are not about just a single container, this talk discusses the ability and benefits of creating an hybrid Docker cluster capacity leveraging on Linux+Windows OS and x86+ARM architectures.
Moreover, the Docker nodes composing this cloud will be hosted across several providers (local DC, cloud vendors such as Azure or AWS), in order to face various scenarios (cloud migration, elasticity…).
Oxalide Workshop #4 - Docker, des tours dans le petit bassinLudovic Piot
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
4ème workshop @Oxalide, animé par Julien Follenfant, Théo Chamley (@MrTrustor) et Ludovic Piot (@lpiot), le 24 mai 2016.
Une entrée en matière sur la technologie Docker et son écosystème à date : pourquoi un tel engouement, à quel point Docker s'inscrit parfaitement dans la démarche DevOps…
Un TP sur le montage d'un cluster ElasticSearch avec le Dockerfile.
Une démo de kubernetes.
Subject: Oxalide's workshop about an overview of Docker and its ecosystem.
Date: 24-mai-2016
Speakers: Julien Follenfant (@Oxalide), Théo Chamley (@MrTrustor, @Oxalide) and Ludovic Piot (@lpiot, @Oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-workshop-number-4-docker-des-tours-dans-le-petit-bassin
Lien SlideShare : http://www.slideshare.net/LudovicPiot/workshop-4-docker-des-tours-dans-le-petit-bassin
YouTube Video capture: https://youtu.be/xJuRS6QYAAk
Main topics:
* Introduction 15 min (Ludovic Piot)
** D’où vient Docker ?
** Les principales caractéristiques de Docker
*** POrtable (package)
*** DIsposable (cattle vs. pet)
*** LIve (git style)
*** SOcial (registry / Github style)
* Hands-on #1 - Mon premier container (Julien Follenfant 35 min)
** Un tour d’horizon de DockerHub
** Installation de Docker Toolbox
** Création d’un Dockerfile (outil stand-alone)
** Introspecter un container
** Configurer un container
** Monter un cluster Elasticsearch 3 nœuds
* Comment ça marche ? (Théo Chamley 20 min)
** Namespaces & cgroups
** Layered FS (les poupées russes)
** Cache Image
** Networking
** Volumes
* Nouvelles collaborations (Ludovic Piot 10 min)
** CaaS (infra + cluster de containers vs. containers + appli)
* Ecosystème 20 min
** Les produits Docker, inc. (Ludovic Piot)
** Les alternatives (CoreOS, OpenContainer Initiative, Warden/Garden) (Ludovic Piot)
** La registry (Docker Registry, Nexus) (Ludovic Piot)
** L’autodiscovery (Consul, etcd, ZooKeeper) (Ludovic Piot)
** Les composants réseaux (haproxy, traefik, zipnish) (Julien Follenfant)
** Les orchestrateurs (kubernetes (Théo Chamley), Mesos/Marathon, Swarm, Fleet) (Ludovic Piot)
** Les solutions PaaS/CaaS intégrées (OpenShift, Rancher (Théo Chamley), Deis, CloudFoundry) => screenshots (Ludovic Piot)
** Les services de cloud publics (AWS ECS et ECR, GKE) (Ludovic Piot)
* Demo - utilisation de Kubernetes 15 min (Théo Chamley)
* Questions / Réponses
Oxalide Workshop #3 - Elasticearch, an overviewLudovic Piot
Après les 2 précédents ateliers Varnish, c’est au tour d’ElasticSearch de passer entre les mains Ludovic Piot (Oxalide) avec Edouard Fajnzilberg (Kernel42) . Ils ont déroulé le sujet avec les points de vue Syadmin et Dev.
Subject: Oxalide's workshop about an overview of elasticsearch.
Date: 10-mar-2016
Speakers: Edouard Fajnzilberg (Kernel42) and Ludovic Piot (Oxalide)
Language: french
Video capture: https://youtu.be/3bPoeVoUdFI
Main topics:
When do we use elasticsearch?
Why is it cool?
Introduction to Head plugin
Introduction to the REST API
Introduction to the Query DSL and the JSON document
How to configure a cluster?
How does it compare to a SGBD-R?
How does a reversed-index work?
An explaination of Lucene Segments
An explaination of the cluster architecture
An overview of the mappings (principles, dynamic mapping and templates)
An overview of the aggregations (buckets, metrics, multiple, nestable, sortable, aggregation types, use cases, pipelines)
An overview of the ecosystem (Sense, Logstash, Beats, Kibana, TimeLion, Marvel, Watcher, Shield, Head, Kopf, HQ, Inquisitor, BigDesk, SegmentSpy)
Slides de la présentation faite lors du PerfUG #3 du 29 août 2013 chez Octo Technology.
Sujet : comment déterminer rapidement les performances unitaires dont un système informatique est capable.
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Laurent Speyser
(Conférence dessinée)
Vous êtes certainement à l’origine, ou impliqué, dans un changement au sein de votre organisation. Et peut être que cela ne se passe pas aussi bien qu’attendu…
Depuis plusieurs années, je fais régulièrement le constat de l’échec de l’adoption de l’Agilité, et plus globalement de grands changements, dans les organisations. Je vais tenter de vous expliquer pourquoi ils suscitent peu d'adhésion, peu d’engagement, et ils ne tiennent pas dans le temps.
Heureusement, il existe un autre chemin. Pour l'emprunter il s'agira de cultiver l'invitation, l'intelligence collective , la mécanique des jeux, les rites de passages, .... afin que l'agilité prenne racine.
Vous repartirez de cette conférence en ayant pris du recul sur le changement tel qu‘il est généralement opéré aujourd’hui, et en ayant découvert (ou redécouvert) le seul guide valable à suivre, à mon sens, pour un changement authentique, durable, et respectueux des individus! Et en bonus, 2 ou 3 trucs pratiques!
L'IA connaît une croissance rapide et son intégration dans le domaine éducatif soulève de nombreuses questions. Aujourd'hui, nous explorerons comment les étudiants utilisent l'IA, les perceptions des enseignants à ce sujet, et les mesures possibles pour encadrer ces usages.
Constat Actuel
L'IA est de plus en plus présente dans notre quotidien, y compris dans l'éducation. Certaines universités, comme Science Po en janvier 2023, ont interdit l'utilisation de l'IA, tandis que d'autres, comme l'Université de Prague, la considèrent comme du plagiat. Cette diversité de positions souligne la nécessité urgente d'une réponse institutionnelle pour encadrer ces usages et prévenir les risques de triche et de plagiat.
Enquête Nationale
Pour mieux comprendre ces dynamiques, une enquête nationale intitulée "L'IA dans l'enseignement" a été réalisée. Les auteurs de cette enquête sont Le Sphynx (sondage) et Compilatio (fraude académique). Elle a été diffusée dans les universités de Lyon et d'Aix-Marseille entre le 21 juin et le 15 août 2023, touchant 1242 enseignants et 4443 étudiants. Les questionnaires, conçus pour étudier les usages de l'IA et les représentations de ces usages, abordaient des thèmes comme les craintes, les opportunités et l'acceptabilité.
Résultats de l'Enquête
Les résultats montrent que 55 % des étudiants utilisent l'IA de manière occasionnelle ou fréquente, contre 34 % des enseignants. Cependant, 88 % des enseignants pensent que leurs étudiants utilisent l'IA, ce qui pourrait indiquer une surestimation des usages. Les usages identifiés incluent la recherche d'informations et la rédaction de textes, bien que ces réponses ne puissent pas être cumulées dans les choix proposés.
Analyse Critique
Une analyse plus approfondie révèle que les enseignants peinent à percevoir les bénéfices de l'IA pour l'apprentissage, contrairement aux étudiants. La question de savoir si l'IA améliore les notes sans développer les compétences reste débattue. Est-ce un dopage académique ou une opportunité pour un apprentissage plus efficace ?
Acceptabilité et Éthique
L'enquête révèle que beaucoup d'étudiants jugent acceptable d'utiliser l'IA pour rédiger leurs devoirs, et même un quart des enseignants partagent cet avis. Cela pose des questions éthiques cruciales : copier-coller est-il tricher ? Utiliser l'IA sous supervision ou pour des traductions est-il acceptable ? La réponse n'est pas simple et nécessite un débat ouvert.
Propositions et Solutions
Pour encadrer ces usages, plusieurs solutions sont proposées. Plutôt que d'interdire l'IA, il est suggéré de fixer des règles pour une utilisation responsable. Des innovations pédagogiques peuvent également être explorées, comme la création de situations de concurrence professionnelle ou l'utilisation de détecteurs d'IA.
Conclusion
En conclusion, bien que l'étude présente des limites, elle souligne un besoin urgent de régulation. Une charte institutionnelle pourrait fournir un cadre pour une utilisation éthique.
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...OCTO Technology
par Claude Camus (Coach agile d'organisation @OCTO Technology) et Gilles Masy (Organizational Coach @OCTO Technology)
Les équipes infrastructure, sécurité, production, ou cloud, doivent consacrer du temps à la modernisation de leurs outils (automatisation, cloud, etc) et de leurs pratiques (DevOps, SRE, etc). Dans le même temps, elles doivent répondre à une avalanche croissante de demandes, tout en maintenant un niveau de qualité de service optimal.
Habitué des environnements développeurs, les transformations agiles négligent les particularités des équipes OPS. Lors de ce comptoir, nous vous partagerons notre proposition de valeur de l'agilité@OPS, qui embarquera vos équipes OPS en Classe Business (Agility), et leur fera dire : "nous ne reviendrons pas en arrière".
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...Horgix
This is the slide deck of a talk by Alexis "Horgix" Chotard and Laurentiu Capatina presented at the MongoDB Paris User Group in June 2024 about the feedback on how PayFit move away from a monolithic hell of a self-hosted MongoDB cluster to managed alternatives. Pitch below.
March 15, 2023, 6:59 AM: a MongoDB cluster collapses. Tough luck, this cluster contains 95% of user data and is absolutely vital for even minimal operation of our application. To worsen matters, this cluster is 7 years behind on versions, is not scalable, and barely observable. Furthermore, even the data model would quickly raise eyebrows: applications communicating with each other by reading/writing in the same MongoDB documents, documents reaching the maximum limit of 16MiB with hundreds of levels of nesting, and so forth. The incident will last several days and result in the loss of many users. We've seen better scenarios.
Let's explore how PayFit found itself in this hellish situation and, more importantly, how we managed to overcome it!
On the agenda: technical stabilization, untangling data models, breaking apart a Single Point of Failure (SPOF) into several elements with a more restricted blast radius, transitioning to managed services, improving internal accesses, regaining control over risky operations, and ultimately, approaching a technical migration when it impacts all development teams.
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...OCTO Technology
Par Nicolas Bordier (Consultant numérique responsable @OCTO Technology) et Alaric Rougnon-Glasson (Sustainable Tech Consultant @OCTO Technology)
Sur un exemple très concret d’audit d’éco-conception de l’outil de bilan carbone C’Bilan développé par ICDC (Caisse des dépôts et consignations) nous allons expliquer en quoi l’ACV (analyse de cycle de vie) a été déterminante pour identifier les pistes d’actions pour réduire jusqu'à 82% de l’empreinte environnementale du service.
Vidéo Youtube : https://www.youtube.com/watch?v=7R8oL2P_DkU
Compte-rendu :
3. Agenda
UNE TENTATIVE DE DÉFINITION
▪ Pourquoi un tel engouement ?
▪ Disclaimer
▪ Une proposition de définition
LES ORIGINES
▪ le mur de la confusion
▪ le mouvement agile : exemple à suivre
▪ le mur de la confusion
OPS, THE FINAL FRONTIER
▪ la software factory : terrain de réconciliation
KNOWING THE PATH VS. WALKING THE PATH
▪ DevOps is... / is not…
▪ TRS
▪ Tools
▪ Pistes de mise en œuvre
5. DEVOPS – pourquoi un tel engouement ?
Source:StateofDevOpsreport2016-2017
(Puppet+DevopsResearch&Assessment)
6. DEVOPS – pourquoi un tel engouement ?
Source:StateofDevOpsreport2016
(Puppet+DevopsResearch&Assessment)
7. DEVOPS – disclaimer
“It’s not about the destination,
it’s about the journey” – Gene Kim
DevOps n’est pas une méthodologie.
Il s’agit de créer une culture dans laquelle
Dev et Ops collaborent étroitement et en confiance.
8. DEVOPS – une proposition de définition
L’approche DEVOPS a un objectif unique :
▪ aligner l'ensemble des acteurs et des compétences
du système d’information…
▪ … sur la seule qualité du produit fourni à
l'utilisateur final
Pour cela, la démarche DEVOPS passe par…
▪ l'engagement de l'ensemble des acteurs sur la
chaîne de production de valeur,
▪ dans une collaboration libre et sans contrainte
▪ et le souci d’une amélioration continue
▪ par le partage d'informations et de responsabilité
▪ et des outils et méthodes communes
▪ en vue d'automatiser les actions
▪ et ainsi d’étendre au maximum l’autonomie des
différents acteurs en dehors de leur périmètre
propre
La démarche DEVOPS
L’approche DEVOPS
the Beal-Hedemark
golden square
Coût Temps
Qualité Satisfaction
Culture
Automation
Lean
Measure
Sharing
10. DEVOPS – le mur de la confusion
Depuis toujours, DEV et OPS s’opposent à cause
d’objectifs antagonistes…
Les DEV recherchent :
▪ la rapidité de mise à disposition des nouvelles
fonctionnalités aux utilisateurs finaux
▪ culture du produit
Les OPS recherchent :
▪ la stabilité, la robustesse
▪ la maîtrise, la performance
▪ la sécurité
▪ l’industrialisation
▪ l’efficience économique
▪ culture du service
Mais il y a confusion : ces objectifs sont des
objectifs intermédiaires et non exclusifs !
11. “We don’t need an accurate document, we
need a shared understanding” – Jeff Patton
12. AGILE – au départ, des difficultés similaires…
PRATIQUES
▪ des équipes en silo
▪ des échanges sous forme « contractuelle »
client/fournisseur
▪ un « effet tunnel » systémique
▪ des hypothèses de travail amont qui contraignent
la réalisation
CONSTATS
▪ un projet mal maîtrisé (coûts, délais)
▪ des écarts de conformité du livrable avec le besoin
▪ l’apparition tardive des soucis rend les correctifs
très coûteux et douloureux
▪ à chaque étape, la pression du planning conduit à
accepter les approximations des étapes amont
▪ l’OPS, en bout de cycle, doit se faire le garant du
livrable le plus « dénaturé »
13. AGILE – le pragmatisme et le business…
PRATIQUES
▪ des cycles courts et itératifs
▪ des équipes resserrées incluant fonctionnels et
techniques
▪ « Do, learn, adapt ! »
▪ « less documentation is more communication »
▪ la construction commune et quotidienne des
fonctionnalités du produit
▪ des mises en production plus fréquentes
CONSTATS
▪ un projet mieux maîtrisé (coûts, délais)
▪ des ajustements plus rapides et plus fréquents
pour rester pertinent
▪ l’introduction de la notion de « fail fast »
▪ une responsabilité partagée entre fonctionnels et
techniques
▪ … mais l’OPS n’est toujours pas systématiquement
inclus dans la démarche
15. ▪ Les méthodes agiles accélèrent et fiabilisent les
livraisons des DEV.
▪ Les OPS et le déploiement sont perçus comme
l’ultime frein à accélérer le Time-to-Market
(TTM).
▪ La nécessité de faire sauter ce dernier goulot d’
étranglement devient flagrante.
SOFTWARE FACTORY – le time-to-market s’impose…
16. L’usine logicielle,
utilisée par les DEV,
nécessite le
savoir-faire des OPS :
▪ forts besoins en
optimisation
d’infrastructure
▪ forts besoins en
automatisation
« système »
SOFTWARE FACTORY – terrain de réconciliation ❤
Usine de Build
Build
Vérifier la
qualité
du code
Compiler
Récupérer les
dépendances
Déployer
Documenter
Exécuter les tests
Packager
Référentiel
binaires
Référentiel
de tâches
et anomalies Plateforme
de tests
Documentation
& Indicateurs
BuildGestionnaire
de sources
Build
local
Notifications
Serveur
d’intégration
continue
17. Les besoins en environnements de test explosent :
▪ organisation des équipes par domaine fonctionnel
(feature teams)
▪ automatisation des tests (fonctionnels,
performances, robustesse, conformité graphique,
multi-canal)
SOFTWARE FACTORY – infrastructure everywhere!
18. Le déploiement continu en Production de chaque
nouvelle fonctionnalité dès qu’elle est livrée
démultiplie les besoins dans le savoir-faire des OPS :
▪ pression de la vélocité
▪ architecture technique complexe (micro-services)
▪ modèles de déploiement complexes (blue/green,
canary testing)
▪ évolution perpétuelle de l’infrastructure technique
▪ environnements éphémères
▪ bacs à sable à la demande pour les équipes des
systèmes connectés
CONTINUOUS DELIVERY – warp speed factor 8!
“How long would it take your organization to deploy a
change that involves just one single line of code?”
- Poppendiek
L’OPS devient
un acteur indispensable
à la réussite
du projet de développement
21. DEVOPS – is not…
5- “to be a devops, use the tool xxx…”
▪ DevOps n’est pas prioritairement une affaire d’outil.
▪ L’usage d’un outil fréquemment utilisé dans les
organisations DevOps n’est ni nécessaire, ni encore moins
suffisant pour faire du DevOps.
1- “One tool to rule them all”
▪ Le partage d’outils doit répondre à un besoin de
coopération et d’autonomie.
▪ Et non pas à un besoin d’industrialisation ou de respect des
standards.
2- “No-OPS”
▪ L’automatisation est un vecteur d’autonomisation des
acteurs et d’amélioration des opérations.
▪ Pas un moyen de se décharger de sa responsabilité.
3- “Every DEV has the root password”
▪ DevOps est un mouvement favorisant la coopération, pas le
remplacement des OPS par les DEV.
▪ Dans ce sens, certains DEV peuvent avoir besoin de root.
▪ Par nature, DevOps doit minimiser ce besoin.
4- “Every sysadmin should write code / every
DEV should rack servers”
▪ La coopération étroite ne veut pas dire la polyvalence de
tous.
▪ C’est, au contraire, reconnaître les forces et faiblesses de
chacun et en tirer le meilleur, collectivement.
22. DEVOPS – is…
7- “Fail fast”
L’erreur est une richesse d’expérience. Il faut l’accepter
comme une composante du mode opératoire, et expérimenter
au plus faible coût (et PDCA).
8- “Most valuable product”
Toute réalisation doit être itérative, pour accélérer l’arrivée
de la feedback loop. On doit chercher le plus petit élément de
réalisation qui apporte le maximum de valeur.
9- “In God we trust. Everything else, we test”
Toute réalisation n’est achevée que lorsque le test
garantissant la conformité de son fonctionnement est
associé.
10- “Less doc is more communication”
La documentation n’existe pas per se. Elle rendue inutile par
le partage des outils et méthodes, du même espace de travail
et les rituels de partage de connaissance (stand-up meeting,
peer-programming, demo)
11- “Everything fails all the time!” - Werner Vogels
Pannes et erreurs humaines sont inévitables. Par design, on
doit les circonscrire et mettre en place les contre-mesures
qui rendent ces pannes indolores.
1- “User-centric product”
La qualité et la pertinence du produit fourni à l’utilisateur final est la
seule chose qui importe.
2- “You build it, you run it!” - Werner Vogels
le DEV est (co-)responsable de ce qui arrive en Prod
(y-compris dans les astreintes).
3- “OPS as enablers, not gatekeepers”
- Lindsay Holmwood
Dans les domaines dont il est garant, l’OPS doit être
facilitateur par son savoir-faire et non-pas censeur.
4- “Measure everything” - Etsy
L’obsession de la mesure et de la traçabilité. Ce qui ne se
mesure pas n’est qu’affaire d’opinion.
5- “Plan, do, check, act (PDCA)”
La démarche d’amélioration continue, basée sur
l’expérimentation perpétuelle et la mesure du résultat qui en
ressort.
6- « Souriez, vous êtes filmés »
Par défaut, la modération n’existe pas. Elle n’intervient qu’à
postériori d’une douleur rencontrée. Pas d’over-engineering.
24. 6- Augmentez le feedback des Ops
7- Mesurez votre succès à travers des KPIs
… synthétiques
8- Adaptez vos processus business à votre
vélocité de développement
9- Participez à la communauté
1- Commencez petit
… et faites de ce succès un hérault
2- Concentrez-vous sur la culture
… et pas sur les outils
3- Investissez sur les outils qui créent de la
visibilité en temps réel
… et l’intégration poussée dans l’usage de ces
outils
4- Déployez des technologies
d’automatisation
… et ouvrez-en l’usage aux populations du projet
5- Augmentez votre vitesse de déploiement
… et faites-en un KPI du projet
DEVOPS – 9 bonnes pratiques à mettre en œuvre…
25. TRS – le Taux de Rendement Synthétique
Ponctualité des Mises
en Production
▪ P1 - Respect des dates
de MEP
▪ P2 - Cadence des MEP
par rapport aux
sprints
▪ P3 - Profondeur des
décalages de date de
livraison
Taux de
Charge
TRG
Taux de
Disponibilité
Taux de
Performance
Taux de
Qualité
TRS
Disponibilité de la
plateforme à chaque
étape
▪ D1 - Rapidité de mise
à dispo. des
environnements
▪ D2 - Dispo. des
environnements
Exigences non
fonctionnelles
▪ Q1 - Qualité du code
▪ Q2 - Préparation de la
MEP
Expérience utilisateur
▪ Q3 - performance
applicative ressentie
par l’utilisateur
▪ Q4 - Incidents suite à
MEP
Taux de
Disponibilité
Taux de
Performance
Taux de
Qualité
Utilisation efficiente
des ressources
▪ C1 - Taux d’utilisation
des ressources /
plateformes
26. LE TAUX DE RENDEMENT SYNTHÉTIQUE
▪ La mesure aide à fédérer et à faire adhérer
▪ Un moyen pratique d’établir un dialogue
▪ Le TRS permet d’aller vite à l’essentiel.
▪ Cultiver un état d’esprit collaboratif.
▪ L’essayer c’est l’adopter !
TRS – quels enseignements ?
27. 6- Augmentez le feedback des Ops
7- Mesurez votre succès à travers des KPIs
… synthétiques
8- Adaptez vos processus business à votre
vélocité de développement
9- Participez à la communauté
1- Commencez petit
… et faites de ce succès un hérault
2- Concentrez-vous sur la culture
… et pas sur les outils
3- Investissez sur les outils qui créent de la
visibilité en temps réel
… et l’intégration poussée dans l’usage de ces
outils
4- Déployez des technologies
d’automatisation
… et ouvrez-en l’usage aux populations du projet
5- Augmentez votre vitesse de déploiement
… et faites-en un KPI du projet
DEVOPS – 9 bonnes pratiques à mettre en œuvre…
28. Les nouvelles formes de collaboration – Build / ship / run
DEV OPS
Ephemeral
Envs
31. Roadmap partagée et adaptative
Utiliser un outil de project mgmt unique (Jira) :
▪ workflow peu contraignant
▪ workflow facile à faire évoluer
Documentation en maintenance collaborative
▪ Rendre la documentation accessible à tous.
▪ Centraliser la doc dans un unique référentiel (Confluence).
▪ Permettre une maintenance collaborative avec validation
croisée (pull requests)
▪ Documentation comme vecteur de maîtrise vs. vecteur de
références
Specs as tests
Décrire les fonctionnalités qui, une fois compilées,
servent :
▪ de tests unitaires (Cucumber)
▪ ou de tests d’acceptance (FitNesse)
Souriez, vous êtes filmés
Mettre en place une métrologie accessible à tous sur l’
évolution des docs et des specs :
▪ vélocité d’évolution
▪ qualité des revues
▪ nombre d’allers-retours
Plan – Quelques pistes de mise en œuvre
DEV OPS
32. Poste de dev. disponible on-demand
Utiliser un outil de déploiement automatisé pour
configurer le poste de DEV (Ansible, Vagrant, Packer) :
▪ code disponible sur un dépôt partagé
▪ code adaptable à des contextes projets
▪ à l’échelle d’une équipe / d’un projet / de l’entreprise
Peer-review
Permettre une validation croisée (pull requests) entre
DEV, mais aussi entre DEV et OPS.
Dépôts de code communautaires
Utiliser des dépôts centralisés :
▪ fonctionnalités de collaboration sociale (Github, Gitlab,
BitBucket)
▪ gouvernance de type community management
▪ réemploi de code comme stratégie d’entreprise.
Lazy-coupled services
Permettre une évolution dissociée de différentes
applications / composants.
Test development kit
cf. rubrique test
Code – Quelques pistes de mise en œuvre
DEV OPS
33. Envs éphémères on-demand
Pouvoir paralléliser les builds et les tests :
▪ envs. on-demand (Infra as Code)
▪ architecture technique iso prod
▪ jeu de données de test as a service
Orchestration as Code
Décrire le workflow de build et de tests par
programmation (Jenkins Job DSL, Gitlab CI)
Performance des tests
Optimiser au maximum le temps de passage
end-to-end des tests.
▪ mise à dispo de l’env. de test
▪ passage des tests (tests automatisés)
▪ restitution consolidée des résultats
Test development kit
Fournir un jeu de tests (jeu de données compris) pour
tout code communautaire :
▪ tests automatisés
▪ jeu de données de test
▪ code de provisionning d’env. de test
▪ code de provisionning de workflow de test
Build / test – Quelques pistes de mise en œuvre
DEV OPS
34. Test like an Ops
Embarquer les tests liés au run :
▪ tests de fail-over / recovery / clustering
▪ tests de restauration de données
▪ tests de rollback
▪ tests de performance (nominal, aux limites, endurance)
▪ tests d’upscaling / outscaling
▪ tests d’accès / de sécurité
▪ tests de débordement
Page d’autodiagnostic
Inclure des tests de base au sein de l’applicatif
▪ test d’accès R/W aux données / aux logs (DB et FS)
▪ test de connexion aux composants techniques / applis
tierces
▪ test de load-balancing
▪ identification des serveurs portant les composants testés
▪ affichage de la configuration embarquée
Smoke tests
Jouer un scénario fonctionnel minimal avant et après
chaque opération en production
Test – Quelques pistes de mise en œuvre
DEV OPS
35. Release on demand
Autonomiser les acteurs du projet sur les opérations
techniques :
▪ configuration partagée et collaborative (CMDB on git)
▪ envs. on-demand (Infra as Code)
▪ déploiements automatisés
In God we trust. Everything else, we test
Tracer et tester l’état de la plateforme avant et après
chaque release/deploiement.
Full stack release management
Versionner et tracer tous les éléments mis en œuvre
dans une release :
▪ application
▪ données
▪ code de déploiement
▪ documentation et specs
▪ tests
▪ infrastructure (immutable infrastructure)
Release / deploy – Quelques pistes de mise en œuvre
DEV OPS
36. Self-service
Autonomiser les acteurs du projet sur les opérations
techniques :
▪ automatiser les tâches les plus courantes
▪ outil d’orchestration (Jenkins)
Ops As a Service… on demand
Packager et fournir les activités des administrateurs sur
un projet comme des services clé-en-main.
In God we trust. Everything else, we test
Inclure le provisionning et la configuration de la
métrologie avec chaque tâche de déploiement.
Partager les retours d’expérience
Rendre les post-mortem publics (fail con’).
Exposer les bonnes pratiques / les succès locaux.
Supervision collaborative
Partager la maintenance et le suivi de la supervision :
▪ outil accessible par tous les acteurs du projet
▪ capacités techniques et applicatives, voire projet
▪ maintenance collaborative avec validation croisée
▪ déploiement et maintenance as code : tests
Operate / monitor – Quelques pistes de mise en œuvre
DEV OPS