montreal linux meetup - openstack overview (2017.10.03)
TRANSCRIPT
cloudops.com @cloudops_
OpenStack OverviewOctober 3rd 2017
Stacy Véronneau● Director of OpenStack Solutions and Lead OpenStack
Architect at CloudOps.● Using public cloud resources since 2007● Started ‘exploring’ OpenStack at Folsom and using at
Grizzly● OpenStack MeetUp organizer
○ Montreal, Ottawa, Edmonton and Toronto(Co-Org)
● Speaker at OpenStack Days and Summit○ Austin, Montreal, Barcelona, Boston, Ottawa
● OpenStack Mentor since August 2017
cloudops.com @cloudops_Page
About CloudOps
3
We enable our customers to own their destiny in a cloudy world by
leveraging open source cloud orchestration and best of breed technologies.
Our team has built and continues to support dozens of regional clouds for
telco and community cloud service providers around the world.
We’ve helped hundreds of software companies migrate to and scale their
businesses on regional cloud platforms such as cloud.ca and public clouds
such as Google Cloud Platform and Amazon Web Services.
cloudops.com @cloudops_
What is OpenStack?
cloudops.com @cloudops_Page
What is OpenStack?
5
As described by Wikipedia
“OpenStack is a cloud computing project aimed at providing an infrastructure as a service (IaaS).”
The software platform consists of interrelated components that control hardware pools of processing, storage and networking”
cloudops.com @cloudops_Page
What is OpenStack?
6
● What it is○ Abstraction Layer
○ A group of interrelated projects
○ IaaS Solution
○ Community Driven
● What it isn’t○ Interdependent project (Exceptions Apply)
○ A complete standalone solution, extra components are needed
○ Standalone Virtualisation solution
cloudops.com @cloudops_Page
OpenStack Capabilities
7
● Virtual machines (VMs) on demand○ Provisioning
○ Snapshotting
● Networks○ Provisioning
○ Isolation
● Storage for VMs and arbitrary files
● Multi-tenancy○ Quotas for different projects, users
○ User can be associated with multiple projects
cloudops.com @cloudops_
History and a High Level Recap
cloudops.com @cloudops_Page
History
9
● Started in 2010 by and
● Foundation created in 2012
● Latest release was on August 30th 2017 and is named Pike
The Mission:
“To produce the ubiquitous Open Source Cloud Computing platform that
will meet the needs of public and private clouds regardless of size, by being
simple to implement and massively scalable”.
cloudops.com @cloudops_Page
History - Release Naming
10
Only single words with a maximum of 10 characters are good candidates for a name. Bonus points for sounding cool.
● Austin: The first design summit took place in Austin, TX
● Bexar: The second design summit took place in San Antonio, TX (Bexar county).
● Cactus: Cactus is a city in Texas
● Diablo: Diablo is a city in the bay area near Santa Clara, CA
● Essex: Essex is a city near Boston, MA
● Folsom: Folsom is a city near San Francisco, CA
● Grizzly: Grizzly is an element of the state flag of California (design summit takes place in San Diego, CA)
● Havana: Havana is an unincorporated community in Oregon
● Icehouse: Ice House is a street in Hong Kong
● Juno: Juno is a locality in Georgia
● Kilo: Paris (Sèvres, actually, but that's close enough) is home to the Kilogram, the only remaining SI unit tied to an artifact
● Liberty: Liberty is a village in the Canadian province of Saskatchewan
● Mitaka: It’s named after the town located in the Tokyo metro area, known for Inokashira park and the Ghibli museum,
● Newton (Austin, Texas): The "Newton House", located at 1013 E. Ninth St., Austin, TX, is listed on the National Register of Historic Places
● 2017.1 Ocata (Barcelona, Spain): Ocata is a beach about 20 minutes north of Barcelona by train
● 2017.2 Pike, the Massachusetts Turnpike, also the Mass Pike (Boston)
● 2018.1 Queens, Queens Pound river in the Souther Coast region of NSW (Australia)
● 2018.2 Rocky (British Columbia, Canada)
cloudops.com @cloudops_Page
History - Architecture @ Cactus
11
Source: docs.openstack.org
cloudops.com @cloudops_Page
History - Architecture Now
12
Source: docs.openstack.org
cloudops.com @cloudops_
High LevelatHigh Speed
cloudops.com @cloudops_Page
OpenStack - Is NOT VMware
14
cloudops.com @cloudops_Page
OpenStack - Is more an In-House AWS
15
cloudops.com @cloudops_Page
OpenStack vs AWS
16
Project Name Description AWS Equiv. Codename(s)
Compute Provision and manage large pools of on-demand computing resources EC2 Nova
Block Storage Volumes on commodity storage gear, and drivers for turn-key block storage solutions EBS Cinder
Object Storage Petabytes of reliable storage on standard gear S3 Swift
Networking L2-focused on-demand networking with some L3 capabilities VPC Neutron
Dashboard Self-service, role-based web interface for users and administrators Console Horizon
Metering Centralized metering data for all services for integration to external billing CloudWatch Ceilometer
Identity Multi-tenant authentication system that ties to existing stores (e.g. LDAP) and Image Service IAM Keystone
Image Management Upload, download, and manage VM images for the compute service VM Import/Export Glance
Orchestration Application orchestration layer that runs on top of and manages OpenStack Compute
CloudFormation, CloudWatch Heat
cloudops.com @cloudops_Page
OpenStack - Is NOT a Product
17
cloudops.com @cloudops_Page
OpenStack - Is an AWESOME platform
18
cloudops.com @cloudops_Page
OpenStack - High Level & High Speed
19
cloudops.com @cloudops_
Let’s Talk DistrosOpenStack Overview
cloudops.com @cloudops_Page
OpenStack - Let’s Talk Distros
21
cloudops.com @cloudops_
Core ServicesOpenStack Overview
cloudops.com @cloudops_Page
OpenStack - Core Services
23
OpenStack embraces a modular architecture to provide a set of core services that facilitates
scalability and elasticity as core design tenets.
cloudops.com @cloudops_Page
OpenStack - Core Services
24
Each service:
● Is also a “top-level” OpenStack component
● Has an elected “Project Technical Lead” (PTL)
● Has separate developers and design teams
● Has a well defined public API
○ With the exception of Horizon, which is the Web GUI, all other
projects have a RESTful (JSON/HTTP) API
● Has a separate database and an isolated persistent layer
cloudops.com @cloudops_Page
OpenStack Programs Relationships
25
ProvidesNetwork connectivity
for
Image
Glance
Stores disk files in
NeutronNetwork
Block Storage
CinderProvides
volumes for
NovaCompute
Poll data from
CeilometerMetering
Poll data from
Poll data from
Object Storage
SwiftStores images in
HeatOrchestrate
Arranges and directsProvidesUI for
ProvidesUI for
ProvidesUI for
ProvidesUI for
ProvidesUI for
ProvidesUI for
ProvidesUI for
Common UIHorizonDashboard
KeystoneIdentity
ProvidesAuth for
ProvidesAuth for
ProvidesAuth for
ProvidesAuth for
ProvidesAuth for
Access Control
ProvidesAuth for
ProvidesAuth for
ProvidesUI for
ProvidesAuth for
Not a program, but important to understand the relationship
Database
Not a program, but important to understand the relationship
Message Queue
cloudops.com @cloudops_Page
OpenStack Deployment Topology
26
Control Cluster
Horizon Keystone
GlanceNeutron
CinderNova
Compute Cluster
computenode
computenode
computenode
computenode
computenode
computenode
Storage Cluster (Cinder Volume, Swift)
storagenode
storagenode
storagenode
storagenode
storagenode
storagenode
Heavy CPU and RAM Heavy Disk and I/O
CeilometerHeat
cloudops.com @cloudops_
KeystoneProvides Identity, Token, Catalog and Policy services for use specifically by projects in the OpenStack family
OpenStack Overview
cloudops.com @cloudops_
Nova APIA RESTful API web service which is used to interact with Nova Compute
OpenStack Overview
cloudops.com @cloudops_
Nova SchedulerA daemon, which determines, on which compute host the request should run
OpenStack Overview
cloudops.com @cloudops_
NeutronNetwork as a Service
OpenStack Overview
cloudops.com @cloudops_
CinderBlock Storage as a Service
OpenStack Overview
cloudops.com @cloudops_
GlanceProvides services for discovering, registering, and retrieving virtual machine images
OpenStack Overview
cloudops.com @cloudops_
SwiftSwift is a highly available, distributed, eventually consistent object/blob store
OpenStack Overview
cloudops.com @cloudops_
CephThe all-in-one storage service that is not an OpenStack project
OpenStack Overview
cloudops.com @cloudops_
CeilometerThe Telemetry Service
OpenStack Overview
cloudops.com @cloudops_
HeatThe Orchestrator
OpenStack Overview
cloudops.com @cloudops_
HorizonProvides a baseline UI for managing OpenStack services
OpenStack Overview
cloudops.com @cloudops_
MagnumContainer Infrastructure Management Service(Big Tent Project)
OpenStack Overview
cloudops.com @cloudops_
DependenciesThe bare minimum components outside of Openstack
OpenStack Overview
cloudops.com @cloudops_
Provisioning of a VMThe most common and complex process in OpenStack and involves interaction of most of OpenStack components
OpenStack Overview
cloudops.com @cloudops_Page
OpenStack - Provisioning of a VM
41
● Users log into Horizon and initiate a VM create
● Keystone authorizes
● Nova API initiates provisioning and saves state to DB
● Nova Scheduler finds appropriate host
● Neutron configures networking
● Cinder provides block device
● Image URI is looked up through Glance
● Image is retrieved via Swift
● VM is rendered by Hypervisor
● VM now accessible by the users
cloudops.com @cloudops_
Deployment ToolsOpenStack Overview
cloudops.com @cloudops_Page
OpenStack - Deployment Tools
43
The deployment tools for OpenStack are like Baskin Robbins.
It’s a 31 flavors buffet.
● OpenStack Ansible
● Puppet / Chef / Salt OpenStack
● Fuel
● JuJu + Charms
● Triple-O / Kolla / OpenStack Helm / Conjur-Up / PackStack / DevStack ...
cloudops.com @cloudops_
What About That Magical Thing Called Kubernetes
OpenStack Overview
cloudops.com @cloudops_Page
OpenStack - Kubernetes
45
There are many ways to use Kubernetes when it comes to OpenStack. You can use it to deploy
OpenStack or you can use it within OpenStack. It’s been called the infrastructure club sandwich.
● K8s to deploy OpenStack○ OpenStack Helm
○ Kolla
● K8s in OpenStack○ Kubespray / OpenShift
○ Magnum / Rancher
○ KubeAdm
cloudops.com @cloudops_
What Else is Needed?OpenStack Overview
cloudops.com @cloudops_Page
OpenStack - What else is needed?
47
You now have a shiny new OpenStack Cloud but beside spinning instances,
what can you do to maximize utilisation and ROI?
● CI/CD Systems
● External AAA (Authentication, Authorization, Accounting) Integration
● Logging, Monitoring and Alerting (Day 2)
● Plan WorkLoad Onboarding
cloudops.com @cloudops_Page
OpenStack - What else is needed?
48
● Workshops
○ Architecture Design Assessment
○ Knowledge leveling sessions
○ Hands-on labs
○ Day 2 troubleshooting scenarios
○ SDN and OpenStack
○ OpenStack and Containers
○ OpenStack and Ceph
cloudops.com @cloudops_Page 49
cloudops.com @cloudops_Page
Open Source Magic In OpenStack
50
cloudops.com @cloudops_Page
Open Source is what makes OpenStack an AWESOME platform!
51
OpenStack Days Canada● October 19th 2017 - Nature Museum● https://www.openstackcanada.com/
Reach out on Slack if you have more questionshttp://openstack-canada-slack-invite.herokuapp.com/
cloudops.com @cloudops_
Thank you for your time
[email protected]://www.linkedin.com/in/stacyveronneau/ https://www.meetup.com/preview/Montreal-OpenStack