Formation Openstack Op Rateur
Total Page:16
File Type:pdf, Size:1020Kb
FORMATION OPENSTACK OP��RATEUR 1 ABOUT THESE TRAINING MATERIALS 2 . 1 TRAINING MATERIALS WRITTEN BY PARTICULE ex Osones/Alterway Cloud Native experts Devops experts Our training offers: https://particule.io/en/trainings/ Sources: https://github.com/particuleio/formations/ HTML/PDF: https://particule.io/formations/ 2 . 2 COPYRIGHT License: Creative Commons BY-SA 4.0 Copyright © 2014-2019 alter way Cloud Consulting Copyright © 2020 particule. Since 2020, all commits are the property of their owners 2 . 3 INTRODUCTION 3 . 1 GOALS OF THE TRAINING: OPENSTACK Discover OpenStack and use its different services Know how the project works and its capabilities Understand the internals of each OpenStack component Be able to make the right configuration choices Be capable of manually deploying an OpenStack cloud providing IaaS Know the best practices for deploying OpenStack Be able to track down the cause of an error in OpenStack Be able how to react in front of a bug and know the fix process 3 . 2 REQUIREMENTS Advanced sys admin skills for Linux such as Ubuntu, Red Hat or Debian, including: Package management Configuration files and services handling LVM (Logical Volume Management) and filesystems Notions: Virtualization: KVM (Kernel-based Virtual Machine), libvirt Network: iptables, namespaces SQL Optional: Comfortable in a Python environment 3 . 3 OPENSTACK: THE PROJECT 4 . 1 OVERVIEW 4 . 2 HIGH LEVEL Simple version 4 . 3 HISTORY Started in 2010 Goal: the Free Open Source Cloud Operating System Merge of two projects from Rackspace (Storage) and NASA (Compute) Free software distributed under Apache 2.0 license Birth of the Foundation in 2012 4 . 4 MISSION STATEMENT To produce a ubiquitous Open Source Cloud Computing platform that is easy to use, simple to implement, interoperable between deployments, works well at all scales, and meets the needs of users and operators of both public and private clouds. 4 . 5 RELEASES Austin (2010.1) Bexar (2011.1), Cactus (2011.2), Diablo (2011.3) Essex (2012.1), Folsom (2012.2) Grizzly (2013.1), Havana (2013.2) Icehouse (2014.1), Juno (2014.2) Kilo (2015.1), Liberty (2015.2) Mitaka (2016.1), Newton (2016.2) Ocata (2017.1), Pike (2017.2) Queens (2018.1), Rocky (2018.2) Stein (2019.1), Train (2019.2) Early 2020: Ussuri 4 . 6 SOME OF THE SUPPORTERS/CONTRIBUTORS ... Editors: Red Hat, Suse, Canonical, Vmware, ... Hardware makers: IBM, HP, Dell, ... Hardware makers/network: Juniper, Cisco, ... Hardware makers/storage: NetApp, Hitachi, ... Also: NASA, Rackspace, Yahoo, OVH, Citrix, SAP, ... Google! (since July 2015) https://www.openstack.org/foundation/companies/ 4 . 7 ... AND USERS All the previously mentioned contributors In France: Cloudwatt and Numergy Wikimedia CERN Paypal Comcast BMW Etc. Not counting confidential deployments https://www.openstack.org/user-stories/ 4 . 8 THE DIFFERENT SUB-PROJECTS https://www.openstack.org/software/project-navigator/ OpenStack Compute - Nova OpenStack (Object) Storage - Swift OpenStack Block Storage - Cinder OpenStack Networking - Neutron OpenStack Image Service - Glance OpenStack Identity Service - Keystone OpenStack Dashboard - Horizon OpenStack Telemetry - Ceilometer OpenStack Orchestration - Heat 4 . 9 THE DIFFERENT SUB-PROJECTS (2) But also: Bare metal (Ironic) Queue service (Zaqar) Database service (Trove) Data processing (Sahara) DNS service (Designate) Shared File Systems (Manila) Key management (Barbican) Container (Magnum) Others Client CLI and libraries OpenStack deployment tools Libraries used by OpenStack Tools used to develop OpenStack 4 . 10 APIS Each project supports its OpenStack API Some projects support the corresponding AWS API (Nova/EC2, Swift/S3) 4 . 11 THE 4 OPENS Open Source Open Design Open Development Open Community https://governance.openstack.org/tc/reference/opens.html https://www.openstack.org/four-opens/ 4 . 12 THE OPENSTACK FOUNDATION Main governance entity and legal representation of the project Board members are part of the sponsoring companies and elected by individual members Everyone can (freely) become an individual member Human resources: marketing, event managemement, release management, a few developers (mainly on infrastructure) 600 organizations across the world 80000 individual members in 170 countries 4 . 13 THE OPENSTACK FOUNDATION Main entities of the Foundation 4 . 14 OPEN INFRASTRUCTURE Lately, the OpenStack Foundation expands to Open Infrastructure Beyond OpenStack, new projects: Kata Containers Zuul Airship StarlingX 4 . 15 RESOURCES Announcements (new versions, security advisories): [email protected] Documentation portal: https://docs.openstack.org/ API/SDK: https://developer.openstack.org/ Project governance: https://governance.openstack.org/ Releases: https://releases.openstack.org/ Support: https://ask.openstack.org/ [email protected] #openstack@Freenode 4 . 16 RESOURCES News: Official blog: https://www.openstack.org/blog/ Planet: http://planet.openstack.org/ Superuser: http://superuser.openstack.org/ Commercial resources: https://www.openstack.org/marketplace/ among others Job board: https://www.openstack.org/community/jobs/ 4 . 17 USER SURVEY Regular survey done by the Foundation (every 6 months) Targets deployers and users Usable data: https://www.openstack.org/analytics 4 . 18 CERTIFIED OPENSTACK ADMINISTRATOR (COA) The only certification: Approved by the OpenStack Foundation Not linked to a specific company Content: Mainly OpenStack cloud user oriented https://www.openstack.org/coa/requirements/ Practical aspects: Practical exam, remote, duration: 2.5 hours Cost: $300 (one re-take possible) Ressources https://www.openstack.org/coa/ Tips: https://www.openstack.org/coa/tips/ Handbook: http://www.openstack.org/coa/handbook (unofficial) Exercises: https://github.com/AJNOURI/COA 4 . 19 RESOURCES - FRENCH COMMUNITY AND ASSOCIATION Logo OpenStack-fr https://openstack.fr/ - https://asso.openstack.fr/ Meetups: Paris, Lyon, Toulouse, Montréal, etc. OpenStack Days France (Paris): https://openstackdayfrance.fr Attending events such as Paris Open Source Summit Communication channels: [email protected] #openstack-fr@Freenode 4 . 20 INTERNALS 4 . 21 ARCHITECTURE Detailed view of the services 4 . 22 IMPLEMENTATION Everything is written in Python (Django for the web part) Each project is split in multiple services (example: API, scheduler, etc.) Re-use of existing components and existing libraries Usage of oslo.* libraries (developed by and for OpenStack): logs, config, etc. Usage of rootwrap to call underlying programs as root 4 . 23 IMPLEMENTATION - DEPENDENCIES Database: relational SQL (MySQL/MariaDB) Communication between services: AMQP (RabbitMQ) Caching: Memcached Distributed storage of configuration (to come): etcd 4 . 24 DEVELOPMENT MODEL 4 . 25 STATS (2017) 2344 developers 65823 changes (commits) https://www.openstack.org/assets/reports/OpenStack- AnnualReport2017.pdf 4 . 26 DEVELOPMENT: IN DETAILS Open to all (individuals and companies) 6 months release cycle Each cycle starts with a Project Team Gathering (PTG) During each cycle, an OpenStack Summit takes place 4 . 27 TOOLS AND COMMUNICATION Code: Git (GitHub is used as a mirror) Peer review for code: Gerrit Continous Integration (CI): Zuul Blueprints/specifications and bugs: Launchpad StoryBoard Communication: IRC and mailing-lists Translation: Zanata 4 . 28 DEVELOPMENT: IN DETAILS Change workflow in OpenStack 4 . 29 RELEASE CYLE: 6 MONTHS The schedule is published, example: https://releases.openstack.org/stein/schedule.html Milestone releases Freezes: Feature, Requirements, String RC releases Stable releases Special case for some projects: https://releases.openstack.org/reference/release_models.html 4 . 30 PROJECTS Project Teams: https://governance.openstack.org/reference/projects/index.html Each deliverable has its own versioning - Semantic versioning https://releases.openstack.org/ 4 . 31 WHO CONTRIBUTES? Active Technical Contributor (ATC) Person with at least one recent contribution in a recognized OpenStack project Voting rights (TC and PTL) Core reviewer: ATC with permissions to approve patches in a project Project Team Lead (PTL): elected by the ATC of each project Stackalytics provides stats on contributions http://stackalytics.com/ 4 . 32 WHERE TO FIND INFORMATIONS ABOUT THE OPENSTACK DEVELOPMENT How to contribute https://docs.openstack.org/project-team-guide/ https://docs.openstack.org/infra/manual/ Various informations, on the wiki https://wiki.openstack.org/ Blueprints and bugs on Launchpad/StoryBoard https://launchpad.net/openstack/ https://storyboard.openstack.org/ https://specs.openstack.org/ 4 . 33 WHERE TO FIND INFORMATIONS ABOUT THE OPENSTACK DEVELOPMENT Proposed patches and their reviews on Gerrit https://review.openstack.org/ CI state (among others) http://status.openstack.org/ Code (Git) and tarballs are available https://git.openstack.org/ https://tarballs.openstack.org/ IRC Freenode network Logs and meetings informations: http://eavesdrop.openstack.org/ Mailing-lists http://lists.openstack.org/ 4 . 34 UPSTREAM TRAINING 2 days training Learn how to become an OpenStack contributor Tools Processes Work and collaborate in an open way 4 . 35 OPENSTACK INFRA Team in charge of the OpenStack development infrastructure Works like the OpenStack developement teams and uses the same tools Result: Infrastructure as code open source https://opensourceinfra.org/ Uses (hybrid) cloud Develops some tools: Zuul yaml2ical 4 . 36 OPENSTACK SUMMIT Every 6 months at the middle of the development cycle In