SlideShare a Scribd company logo
DIVIDE AND CONQUER:
RESOURCE SEGREGATION IN THE OPENSTACK
CLOUD
Steve Gordon (@xsgordon)
Technical Product Manager, Red Hat
Why segregate resources?
● Infrastructure
–Expose logical groupings of infrastructure based on physical
characteristics
–Expose logical groupings of infrastructure based on some abstract
functionality/capability
–“More-massive” horizontal scalability
Why segregate resources?
● Infrastructure
–Expose logical groupings of infrastructure based on physical
characteristics
–Expose logical groupings of infrastructure based on some abstract
functionality/capability
–“More-massive” horizontal scalability
● Workloads
–Ensure an even spread of a single workload
–Ensure close placement of related workloads
Segregation in datacenter virtualization
● Infrastructure segregation:
–Logical data center constructs
● Contain some number of logical clusters
● Clusters typically:
–Are relatively small (0's to 00's of nodes per cluster)
–Are tightly coupled to physical storage and network layout
● Workload segregation:
–Host-level affinity/anti-affinity
–CPU-level affinity/anti-affinity (pinning)
Segregation in an elastic cloud
● Amazon EC2:
–Infrastructure segregation:
● Regions – Separate geographic areas (e.g. us-east-1)
● Availability Zones – Isolated locations within a region (e.g. us-east-1a)
–Workload segregation:
● Placement Groups – Workload affinity within an availability zone
Segregation in an elastic cloud
● Amazon EC2:
–Infrastructure segregation:
● Regions – Separate geographic areas (e.g. us-east-1)
● Availability Zones – Isolated locations within a region (e.g. us-east-1a)
–Workload segregation:
● Placement Groups – Workload affinity within an availability zone
● OpenStack:
–Overloads some of these terms (and more!)
–Application is more flexible for deployers and operators
Segregation in an elastic cloud
● Wait a second...weren't we moving to the cloud to hide all this
infrastructure stuff from the user?
Segregation in an elastic cloud
● Wait a second...weren't we moving to the cloud to hide all this
stuff from the user?
–Yes!
● Users and applications demand some visibility of:
–Failure domains
–Premium features
● Deployers and operators determine the level of granularity
exposed.
Segregation in OpenStack
● Infrastructure segregation:
–Regions
–Cells
–Host aggregates
–Availability zones
Segregation in OpenStack
● Infrastructure segregation:
–Regions
–Cells
–Host aggregates
–Availability zones
● Workload segregation:
–Server groups
REGIONS AND CELLS
Regions
● Complete OpenStack deployments
–Share at least a Keystone and Horizon installation
–Implement their own targetable API endpoints
● In default deployment all services in one region – 'RegionOne'.
● New regions are created using Keystone:
–$ keystone endpoint­create ­­region “RegionTwo”
Regions
● Target actions at a region's endpoint (mandatory):
–CLI:
● $ nova --os-region-name “RegionTwo” boot …
–Horizon:
Regions
Regions
Cells
● Standard (simplified) compute
deployment without Cells:
Cells
● Maintains a single compute endpoint
● Relieve pressure on queues
database at scale (000's of nodes)
● Introduces the cells scheduler
API (parent) cell
● Adds a load balancer in front of
multiple instances of the API service
● Has its own message queue
● Includes a new service, nova-cells
–Handles cell scheduling
–Packaged as openstack-nova-cells
–Required in every cell
Compute (child) cell
● Each compute cell contains:
–Its own message queue and database
–Its own scheduler, conductor, compute
nodes
Common cell configuration
● Setup database and message broker for each cell
● Initialize cell database using nova-manage
● Optionally:
–Modify scheduling filter/weight configuration for cells scheduler
–Create cells JSON file to avoid need to avoid reloading from database
API (parent) cell configuration
● Nova.conf:
–Change compute_api_class
–Enable cells
–Name the cell
–Enable and start nova-cells
Compute (child) cell configuration
● nova.conf
–Disable quota driver
–Enable cells
–Name the cell
–Enable and start nova-cells
Cells pitfalls
● That all sounds pretty good – sign me up!
● Lack of “cell awareness” in other projects
● Minimal test coverage in the gate
● Some standard functionality currently broken with cells:
–Host aggregates
–Security groups
So how do they stack up?
Regions
● Supported by all services
● Separate endpoints
● Exist above scheduling
● Linked via REST APIs
Cells
● Supported by compute
● Common endpoint
● Additional scheduling layer
● Linked via RPC
HOST AGGREGATES AND
AVAILABILITY ZONES
Host aggregates
● Logical groupings of hosts based on metadata
● Typically metadata describes special capabilities hosts share:
–Fast disks for ephemeral data storage
–Fast network interfaces
–Etc.
● Hosts can be in multiple host aggregates:
–“Hosts that have SSD storage and GPUs”
Host aggregates
● Implicitly user targetable:
–Admin defines host aggregate with metadata, and a flavor that matches it
–User selects flavor with extra specifications when requesting instance
–Scheduler places instance on a host in a host aggregate that matches
(extra specifications to metadata)
–User explicitly targets a capability, not an aggregate
Host aggregates (example)
Host aggregates (example)
● Create host aggregates:
–$ nova aggregate­create storage­optimized
–$ nova aggregate­create network­optimized
–$ nova aggregate­create compute­optimized
Host aggregates (example)
–$ nova aggregate­set­metadata 1 fast­storage=true
–$ nova aggregate­set­metadata 2 fast­network=true
–$ nova aggregate­set­metadata 3 high­freq­cpu=true
Host aggregates (example)
● Populate the aggregates:
–$ nova aggregate­add­host 1 host­1
–$ nova aggregate­add­host 1 host­2
–...
Host aggregates (example)
Host aggregates (example)
Host aggregates (example)
Host aggregates (example)
Host aggregates (example)
Host aggregates (example)
Host aggregates (example)
● Set flavor extra specifications:
–$ nova flavor­key 1 set fast­storage=true
–...
Host aggregates (example)
● Filter scheduler matches extra specifications of flavor to metadata
of aggregate.
Availability zones
● Logical groupings of hosts based on arbitrary factors like:
–Location (country, data center, rack, etc.)
–Network layout
–Power source
● Explicitly user targetable:
–$ nova boot ­­availability­zone “rack­1”
● OpenStack Block Storage (Cinder) also has availability zones
Availability zones
● Host aggregates are made explicitly user targetable by creating
them as an AZ:
–$ nova aggregate­create tier­1 us­east­tier­1 
–tier­1 is the aggregate name, us­east­tier­1 is the AZ name
● Host aggregate is the availability zone in this case
–Hosts can not be in multiple availability zones
● Well...sort of.
–Hosts can be in multiple host aggregates
Availability zones (example)
Availability zones (example)
So how do they stack up?
Host Aggregates
● Implicitly user targetable
● Hosts can be in multiple
aggregates
● Grouping based on common
capabilities
Availability Zones
● Explicitly user targetable
● Hosts can not be in multiple
zones (see previous disclaimer)
● Grouping based on arbitrary
factors such as location, power,
network
WORKLOAD SEGREGATION
Server groups
● Policies for defining workload placement rules for a group
–Anti-affinity filter – Grizzly
–Affinity filter – Havana
–API – Icehouse
● Implemented via scheduler filters:
–ServerGroupAffinityFilter
–ServerGroupAntiAffinityFilter
Server groups
● Affinity:
–Places instances within the group on the same host
● Anti-affinity:
–Places instances within the group on different hosts
● Not equivalent to AWS placement groups (host placement versus
availability zone placement)
Server groups
● Create the server group:
–$ nova server­group­create ­­policy=anti­affinity 
my_group 
–Really defining a policy rather than a group.
● Specify the group UUID or name when launching instances:
–$ nova boot ­­image ... ­­flavor … ­­hint 
group=group_id
Server groups (affinity)
Server groups (anti-affinity)
What next?
● Relevant design sessions:
–Simultaneous Scheduling for Server Groups
● Friday, May 16 • 1:20pm – 2:00pm
–Scheduler hints for VM life cycle
● Friday, May 16 • 2:10pm – 2:50pm
–Nova Dev/Ops Session
● Friday, May 16 • 3:00pm - 3:40pm
Resources
● Operations Guide – Chapter 5 “Scaling”
–http://docs.openstack.org/trunk/openstack-ops/content/scaling.html
● Configuration Reference Guide – Chapter 2 “Compute”
–http://docs.openstack.org/trunk/config-
reference/content/section_compute-cells.html
● OpenStack in Production Blog
–http://openstack-in-production.blogspot.fr/
Divide and conquer: resource segregation in the OpenStack cloud
Ad

More Related Content

What's hot (20)

Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1
Codership Oy - Creators of Galera Cluster
 
Kubernetes
KubernetesKubernetes
Kubernetes
erialc_w
 
Envoy and Kafka
Envoy and KafkaEnvoy and Kafka
Envoy and Kafka
Adam Kotwasinski
 
Cassandra at Instagram (August 2013)
Cassandra at Instagram (August 2013)Cassandra at Instagram (August 2013)
Cassandra at Instagram (August 2013)
Rick Branson
 
Distributed file systems dfs
Distributed file systems   dfsDistributed file systems   dfs
Distributed file systems dfs
Pragati Startup Presentation Designer firm
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
naveedchak
 
Revisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS SchedulerRevisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS Scheduler
Yongseok Oh
 
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
Vietnam Open Infrastructure User Group
 
Docker Swarm for Beginner
Docker Swarm for BeginnerDocker Swarm for Beginner
Docker Swarm for Beginner
Shahzad Masud
 
From Mainframe to Microservice: An Introduction to Distributed Systems
From Mainframe to Microservice: An Introduction to Distributed SystemsFrom Mainframe to Microservice: An Introduction to Distributed Systems
From Mainframe to Microservice: An Introduction to Distributed Systems
Tyler Treat
 
Prometheus design and philosophy
Prometheus design and philosophy   Prometheus design and philosophy
Prometheus design and philosophy
Docker, Inc.
 
Running Airflow Workflows as ETL Processes on Hadoop
Running Airflow Workflows as ETL Processes on HadoopRunning Airflow Workflows as ETL Processes on Hadoop
Running Airflow Workflows as ETL Processes on Hadoop
clairvoyantllc
 
Apache Spark Streaming in K8s with ArgoCD & Spark Operator
Apache Spark Streaming in K8s with ArgoCD & Spark OperatorApache Spark Streaming in K8s with ArgoCD & Spark Operator
Apache Spark Streaming in K8s with ArgoCD & Spark Operator
Databricks
 
Karpenter
KarpenterKarpenter
Karpenter
Knoldus Inc.
 
Kubernetes networking
Kubernetes networkingKubernetes networking
Kubernetes networking
Sim Janghoon
 
150416 OpenStack Networking with Neutron Jieun, Kim
150416 OpenStack Networking with Neutron Jieun, Kim150416 OpenStack Networking with Neutron Jieun, Kim
150416 OpenStack Networking with Neutron Jieun, Kim
jieun kim
 
Database replication
Database replicationDatabase replication
Database replication
Arslan111
 
Getting Started Monitoring with Prometheus and Grafana
Getting Started Monitoring with Prometheus and GrafanaGetting Started Monitoring with Prometheus and Grafana
Getting Started Monitoring with Prometheus and Grafana
Syah Dwi Prihatmoko
 
Building an Event Streaming Architecture with Apache Pulsar
Building an Event Streaming Architecture with Apache PulsarBuilding an Event Streaming Architecture with Apache Pulsar
Building an Event Streaming Architecture with Apache Pulsar
ScyllaDB
 
Apache Airflow in Production
Apache Airflow in ProductionApache Airflow in Production
Apache Airflow in Production
Robert Sanders
 
Kubernetes
KubernetesKubernetes
Kubernetes
erialc_w
 
Cassandra at Instagram (August 2013)
Cassandra at Instagram (August 2013)Cassandra at Instagram (August 2013)
Cassandra at Instagram (August 2013)
Rick Branson
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
naveedchak
 
Revisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS SchedulerRevisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS Scheduler
Yongseok Oh
 
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
Vietnam Open Infrastructure User Group
 
Docker Swarm for Beginner
Docker Swarm for BeginnerDocker Swarm for Beginner
Docker Swarm for Beginner
Shahzad Masud
 
From Mainframe to Microservice: An Introduction to Distributed Systems
From Mainframe to Microservice: An Introduction to Distributed SystemsFrom Mainframe to Microservice: An Introduction to Distributed Systems
From Mainframe to Microservice: An Introduction to Distributed Systems
Tyler Treat
 
Prometheus design and philosophy
Prometheus design and philosophy   Prometheus design and philosophy
Prometheus design and philosophy
Docker, Inc.
 
Running Airflow Workflows as ETL Processes on Hadoop
Running Airflow Workflows as ETL Processes on HadoopRunning Airflow Workflows as ETL Processes on Hadoop
Running Airflow Workflows as ETL Processes on Hadoop
clairvoyantllc
 
Apache Spark Streaming in K8s with ArgoCD & Spark Operator
Apache Spark Streaming in K8s with ArgoCD & Spark OperatorApache Spark Streaming in K8s with ArgoCD & Spark Operator
Apache Spark Streaming in K8s with ArgoCD & Spark Operator
Databricks
 
Kubernetes networking
Kubernetes networkingKubernetes networking
Kubernetes networking
Sim Janghoon
 
150416 OpenStack Networking with Neutron Jieun, Kim
150416 OpenStack Networking with Neutron Jieun, Kim150416 OpenStack Networking with Neutron Jieun, Kim
150416 OpenStack Networking with Neutron Jieun, Kim
jieun kim
 
Database replication
Database replicationDatabase replication
Database replication
Arslan111
 
Getting Started Monitoring with Prometheus and Grafana
Getting Started Monitoring with Prometheus and GrafanaGetting Started Monitoring with Prometheus and Grafana
Getting Started Monitoring with Prometheus and Grafana
Syah Dwi Prihatmoko
 
Building an Event Streaming Architecture with Apache Pulsar
Building an Event Streaming Architecture with Apache PulsarBuilding an Event Streaming Architecture with Apache Pulsar
Building an Event Streaming Architecture with Apache Pulsar
ScyllaDB
 
Apache Airflow in Production
Apache Airflow in ProductionApache Airflow in Production
Apache Airflow in Production
Robert Sanders
 

Viewers also liked (19)

Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
Belmiro Moreira
 
Publican
PublicanPublican
Publican
Stephen Gordon
 
Deltacloud - Abstracting for Freedom
Deltacloud - Abstracting for FreedomDeltacloud - Abstracting for Freedom
Deltacloud - Abstracting for Freedom
Stephen Gordon
 
OpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community UpdateOpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community Update
Stephen Gordon
 
Compute 101 - OpenStack Summit Vancouver 2015
Compute 101 - OpenStack Summit Vancouver 2015Compute 101 - OpenStack Summit Vancouver 2015
Compute 101 - OpenStack Summit Vancouver 2015
Stephen Gordon
 
A Container Stack for Openstack - OpenStack Silicon Valley
A Container Stack for Openstack - OpenStack Silicon ValleyA Container Stack for Openstack - OpenStack Silicon Valley
A Container Stack for Openstack - OpenStack Silicon Valley
Stephen Gordon
 
Deploying Containers at Scale on OpenStack
Deploying Containers at Scale on OpenStackDeploying Containers at Scale on OpenStack
Deploying Containers at Scale on OpenStack
Stephen Gordon
 
Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)
Stephen Gordon
 
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Stephen Gordon
 
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Stephen Gordon
 
Multi-Cell OpenStack: How to Evolve Your Cloud to Scale - November, 2014
Multi-Cell OpenStack: How to Evolve Your Cloud to Scale - November, 2014Multi-Cell OpenStack: How to Evolve Your Cloud to Scale - November, 2014
Multi-Cell OpenStack: How to Evolve Your Cloud to Scale - November, 2014
Belmiro Moreira
 
Openstack study-nova-02
Openstack study-nova-02Openstack study-nova-02
Openstack study-nova-02
Jinho Shin
 
Moving to Nova Cells without Destroying the World
Moving to Nova Cells without Destroying the WorldMoving to Nova Cells without Destroying the World
Moving to Nova Cells without Destroying the World
Mike Dorman
 
Issues of OpenStack multi-region mode
Issues of OpenStack multi-region modeIssues of OpenStack multi-region mode
Issues of OpenStack multi-region mode
Joe Huang
 
Abortion
AbortionAbortion
Abortion
Mevelle Asuncion
 
CS Education Event - Open Learning
CS Education Event - Open LearningCS Education Event - Open Learning
CS Education Event - Open Learning
Collaborative Solutions
 
Getogether Taxi presentation at MCB 2014 Chengdu CHINA
Getogether Taxi presentation at MCB 2014 Chengdu CHINAGetogether Taxi presentation at MCB 2014 Chengdu CHINA
Getogether Taxi presentation at MCB 2014 Chengdu CHINA
Ticiana Hugentobler
 
Esc guidelines for guidelines update 2010
Esc guidelines for guidelines update 2010Esc guidelines for guidelines update 2010
Esc guidelines for guidelines update 2010
Domènec Melgosa Arnau
 
BÜYÜK ÖLÇEKLİ GYARİMENKUL PROJELERİNDE STRATEJİK PLANLAMA
BÜYÜK ÖLÇEKLİ GYARİMENKUL PROJELERİNDE STRATEJİK PLANLAMABÜYÜK ÖLÇEKLİ GYARİMENKUL PROJELERİNDE STRATEJİK PLANLAMA
BÜYÜK ÖLÇEKLİ GYARİMENKUL PROJELERİNDE STRATEJİK PLANLAMA
Serdar Serdaroglu, MSc
 
Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
Belmiro Moreira
 
Deltacloud - Abstracting for Freedom
Deltacloud - Abstracting for FreedomDeltacloud - Abstracting for Freedom
Deltacloud - Abstracting for Freedom
Stephen Gordon
 
OpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community UpdateOpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community Update
Stephen Gordon
 
Compute 101 - OpenStack Summit Vancouver 2015
Compute 101 - OpenStack Summit Vancouver 2015Compute 101 - OpenStack Summit Vancouver 2015
Compute 101 - OpenStack Summit Vancouver 2015
Stephen Gordon
 
A Container Stack for Openstack - OpenStack Silicon Valley
A Container Stack for Openstack - OpenStack Silicon ValleyA Container Stack for Openstack - OpenStack Silicon Valley
A Container Stack for Openstack - OpenStack Silicon Valley
Stephen Gordon
 
Deploying Containers at Scale on OpenStack
Deploying Containers at Scale on OpenStackDeploying Containers at Scale on OpenStack
Deploying Containers at Scale on OpenStack
Stephen Gordon
 
Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)
Stephen Gordon
 
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Containers for the Enterprise: Delivering OpenShift on OpenStack for Performa...
Stephen Gordon
 
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Stephen Gordon
 
Multi-Cell OpenStack: How to Evolve Your Cloud to Scale - November, 2014
Multi-Cell OpenStack: How to Evolve Your Cloud to Scale - November, 2014Multi-Cell OpenStack: How to Evolve Your Cloud to Scale - November, 2014
Multi-Cell OpenStack: How to Evolve Your Cloud to Scale - November, 2014
Belmiro Moreira
 
Openstack study-nova-02
Openstack study-nova-02Openstack study-nova-02
Openstack study-nova-02
Jinho Shin
 
Moving to Nova Cells without Destroying the World
Moving to Nova Cells without Destroying the WorldMoving to Nova Cells without Destroying the World
Moving to Nova Cells without Destroying the World
Mike Dorman
 
Issues of OpenStack multi-region mode
Issues of OpenStack multi-region modeIssues of OpenStack multi-region mode
Issues of OpenStack multi-region mode
Joe Huang
 
Getogether Taxi presentation at MCB 2014 Chengdu CHINA
Getogether Taxi presentation at MCB 2014 Chengdu CHINAGetogether Taxi presentation at MCB 2014 Chengdu CHINA
Getogether Taxi presentation at MCB 2014 Chengdu CHINA
Ticiana Hugentobler
 
Esc guidelines for guidelines update 2010
Esc guidelines for guidelines update 2010Esc guidelines for guidelines update 2010
Esc guidelines for guidelines update 2010
Domènec Melgosa Arnau
 
BÜYÜK ÖLÇEKLİ GYARİMENKUL PROJELERİNDE STRATEJİK PLANLAMA
BÜYÜK ÖLÇEKLİ GYARİMENKUL PROJELERİNDE STRATEJİK PLANLAMABÜYÜK ÖLÇEKLİ GYARİMENKUL PROJELERİNDE STRATEJİK PLANLAMA
BÜYÜK ÖLÇEKLİ GYARİMENKUL PROJELERİNDE STRATEJİK PLANLAMA
Serdar Serdaroglu, MSc
 
Ad

Similar to Divide and conquer: resource segregation in the OpenStack cloud (20)

Openstack Scheduler and Scalability Issue
Openstack Scheduler and Scalability IssueOpenstack Scheduler and Scalability Issue
Openstack Scheduler and Scalability Issue
Vigneshvar A.S
 
Boyan Krosnov - Building a software-defined cloud - our experience
Boyan Krosnov - Building a software-defined cloud - our experienceBoyan Krosnov - Building a software-defined cloud - our experience
Boyan Krosnov - Building a software-defined cloud - our experience
ShapeBlue
 
PostgreSQL as an Alternative to MSSQL
PostgreSQL as an Alternative to MSSQLPostgreSQL as an Alternative to MSSQL
PostgreSQL as an Alternative to MSSQL
Alexei Krasner
 
Data has a better idea the in-memory data grid
Data has a better idea   the in-memory data gridData has a better idea   the in-memory data grid
Data has a better idea the in-memory data grid
Bogdan Dina
 
D108636GC10_les01.pptx
D108636GC10_les01.pptxD108636GC10_les01.pptx
D108636GC10_les01.pptx
Suresh569521
 
Migrating to XtraDB Cluster
Migrating to XtraDB ClusterMigrating to XtraDB Cluster
Migrating to XtraDB Cluster
percona2013
 
Introduction to Container Storage Interface (CSI)
Introduction to Container Storage Interface (CSI)Introduction to Container Storage Interface (CSI)
Introduction to Container Storage Interface (CSI)
Idan Atias
 
Getting data into Rudder
Getting data into RudderGetting data into Rudder
Getting data into Rudder
RUDDER
 
Azure storage deep dive
Azure storage deep diveAzure storage deep dive
Azure storage deep dive
Sergio Navarro Pino
 
Quick-and-Easy Deployment of a Ceph Storage Cluster
Quick-and-Easy Deployment of a Ceph Storage ClusterQuick-and-Easy Deployment of a Ceph Storage Cluster
Quick-and-Easy Deployment of a Ceph Storage Cluster
Patrick Quairoli
 
Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209
mffiedler
 
Advanced Globus System Administration Topics
Advanced Globus System Administration TopicsAdvanced Globus System Administration Topics
Advanced Globus System Administration Topics
Globus
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
Sakari Keskitalo
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
Sakari Keskitalo
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
Codership Oy - Creators of Galera Cluster
 
Introduction to ClustrixDB
Introduction to ClustrixDBIntroduction to ClustrixDB
Introduction to ClustrixDB
I Goo Lee
 
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Databricks
 
Stop Worrying and Keep Querying, Using Automated Multi-Region Disaster Recovery
Stop Worrying and Keep Querying, Using Automated Multi-Region Disaster RecoveryStop Worrying and Keep Querying, Using Automated Multi-Region Disaster Recovery
Stop Worrying and Keep Querying, Using Automated Multi-Region Disaster Recovery
DoKC
 
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Lars Marowsky-Brée
 
Oracle rac 10g best practices
Oracle rac 10g best practicesOracle rac 10g best practices
Oracle rac 10g best practices
Haseeb Alam
 
Openstack Scheduler and Scalability Issue
Openstack Scheduler and Scalability IssueOpenstack Scheduler and Scalability Issue
Openstack Scheduler and Scalability Issue
Vigneshvar A.S
 
Boyan Krosnov - Building a software-defined cloud - our experience
Boyan Krosnov - Building a software-defined cloud - our experienceBoyan Krosnov - Building a software-defined cloud - our experience
Boyan Krosnov - Building a software-defined cloud - our experience
ShapeBlue
 
PostgreSQL as an Alternative to MSSQL
PostgreSQL as an Alternative to MSSQLPostgreSQL as an Alternative to MSSQL
PostgreSQL as an Alternative to MSSQL
Alexei Krasner
 
Data has a better idea the in-memory data grid
Data has a better idea   the in-memory data gridData has a better idea   the in-memory data grid
Data has a better idea the in-memory data grid
Bogdan Dina
 
D108636GC10_les01.pptx
D108636GC10_les01.pptxD108636GC10_les01.pptx
D108636GC10_les01.pptx
Suresh569521
 
Migrating to XtraDB Cluster
Migrating to XtraDB ClusterMigrating to XtraDB Cluster
Migrating to XtraDB Cluster
percona2013
 
Introduction to Container Storage Interface (CSI)
Introduction to Container Storage Interface (CSI)Introduction to Container Storage Interface (CSI)
Introduction to Container Storage Interface (CSI)
Idan Atias
 
Getting data into Rudder
Getting data into RudderGetting data into Rudder
Getting data into Rudder
RUDDER
 
Quick-and-Easy Deployment of a Ceph Storage Cluster
Quick-and-Easy Deployment of a Ceph Storage ClusterQuick-and-Easy Deployment of a Ceph Storage Cluster
Quick-and-Easy Deployment of a Ceph Storage Cluster
Patrick Quairoli
 
Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209
mffiedler
 
Advanced Globus System Administration Topics
Advanced Globus System Administration TopicsAdvanced Globus System Administration Topics
Advanced Globus System Administration Topics
Globus
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
Sakari Keskitalo
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
Sakari Keskitalo
 
Introduction to ClustrixDB
Introduction to ClustrixDBIntroduction to ClustrixDB
Introduction to ClustrixDB
I Goo Lee
 
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Databricks
 
Stop Worrying and Keep Querying, Using Automated Multi-Region Disaster Recovery
Stop Worrying and Keep Querying, Using Automated Multi-Region Disaster RecoveryStop Worrying and Keep Querying, Using Automated Multi-Region Disaster Recovery
Stop Worrying and Keep Querying, Using Automated Multi-Region Disaster Recovery
DoKC
 
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Lars Marowsky-Brée
 
Oracle rac 10g best practices
Oracle rac 10g best practicesOracle rac 10g best practices
Oracle rac 10g best practices
Haseeb Alam
 
Ad

More from Stephen Gordon (7)

Toronto RHUG: Container-native virtualization
Toronto RHUG: Container-native virtualizationToronto RHUG: Container-native virtualization
Toronto RHUG: Container-native virtualization
Stephen Gordon
 
KubeVirt (Kubernetes and Cloud Native Toronto)
KubeVirt (Kubernetes and Cloud Native Toronto)KubeVirt (Kubernetes and Cloud Native Toronto)
KubeVirt (Kubernetes and Cloud Native Toronto)
Stephen Gordon
 
OpenStackTO: Friendly coexistence of Virtual Machines and Containers on Kuber...
OpenStackTO: Friendly coexistence of Virtual Machines and Containers on Kuber...OpenStackTO: Friendly coexistence of Virtual Machines and Containers on Kuber...
OpenStackTO: Friendly coexistence of Virtual Machines and Containers on Kuber...
Stephen Gordon
 
KubeWHAT!?
KubeWHAT!?KubeWHAT!?
KubeWHAT!?
Stephen Gordon
 
Kubernetes and OpenStack at Scale
Kubernetes and OpenStack at ScaleKubernetes and OpenStack at Scale
Kubernetes and OpenStack at Scale
Stephen Gordon
 
Dude, This Isn't Where I Parked My Instance?
Dude, This Isn't Where I Parked My Instance?Dude, This Isn't Where I Parked My Instance?
Dude, This Isn't Where I Parked My Instance?
Stephen Gordon
 
What's new in OpenStack Liberty
What's new in OpenStack LibertyWhat's new in OpenStack Liberty
What's new in OpenStack Liberty
Stephen Gordon
 
Toronto RHUG: Container-native virtualization
Toronto RHUG: Container-native virtualizationToronto RHUG: Container-native virtualization
Toronto RHUG: Container-native virtualization
Stephen Gordon
 
KubeVirt (Kubernetes and Cloud Native Toronto)
KubeVirt (Kubernetes and Cloud Native Toronto)KubeVirt (Kubernetes and Cloud Native Toronto)
KubeVirt (Kubernetes and Cloud Native Toronto)
Stephen Gordon
 
OpenStackTO: Friendly coexistence of Virtual Machines and Containers on Kuber...
OpenStackTO: Friendly coexistence of Virtual Machines and Containers on Kuber...OpenStackTO: Friendly coexistence of Virtual Machines and Containers on Kuber...
OpenStackTO: Friendly coexistence of Virtual Machines and Containers on Kuber...
Stephen Gordon
 
Kubernetes and OpenStack at Scale
Kubernetes and OpenStack at ScaleKubernetes and OpenStack at Scale
Kubernetes and OpenStack at Scale
Stephen Gordon
 
Dude, This Isn't Where I Parked My Instance?
Dude, This Isn't Where I Parked My Instance?Dude, This Isn't Where I Parked My Instance?
Dude, This Isn't Where I Parked My Instance?
Stephen Gordon
 
What's new in OpenStack Liberty
What's new in OpenStack LibertyWhat's new in OpenStack Liberty
What's new in OpenStack Liberty
Stephen Gordon
 

Recently uploaded (20)

Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 

Divide and conquer: resource segregation in the OpenStack cloud

  • 1. DIVIDE AND CONQUER: RESOURCE SEGREGATION IN THE OPENSTACK CLOUD Steve Gordon (@xsgordon) Technical Product Manager, Red Hat
  • 2. Why segregate resources? ● Infrastructure –Expose logical groupings of infrastructure based on physical characteristics –Expose logical groupings of infrastructure based on some abstract functionality/capability –“More-massive” horizontal scalability
  • 3. Why segregate resources? ● Infrastructure –Expose logical groupings of infrastructure based on physical characteristics –Expose logical groupings of infrastructure based on some abstract functionality/capability –“More-massive” horizontal scalability ● Workloads –Ensure an even spread of a single workload –Ensure close placement of related workloads
  • 4. Segregation in datacenter virtualization ● Infrastructure segregation: –Logical data center constructs ● Contain some number of logical clusters ● Clusters typically: –Are relatively small (0's to 00's of nodes per cluster) –Are tightly coupled to physical storage and network layout ● Workload segregation: –Host-level affinity/anti-affinity –CPU-level affinity/anti-affinity (pinning)
  • 5. Segregation in an elastic cloud ● Amazon EC2: –Infrastructure segregation: ● Regions – Separate geographic areas (e.g. us-east-1) ● Availability Zones – Isolated locations within a region (e.g. us-east-1a) –Workload segregation: ● Placement Groups – Workload affinity within an availability zone
  • 6. Segregation in an elastic cloud ● Amazon EC2: –Infrastructure segregation: ● Regions – Separate geographic areas (e.g. us-east-1) ● Availability Zones – Isolated locations within a region (e.g. us-east-1a) –Workload segregation: ● Placement Groups – Workload affinity within an availability zone ● OpenStack: –Overloads some of these terms (and more!) –Application is more flexible for deployers and operators
  • 7. Segregation in an elastic cloud ● Wait a second...weren't we moving to the cloud to hide all this infrastructure stuff from the user?
  • 8. Segregation in an elastic cloud ● Wait a second...weren't we moving to the cloud to hide all this stuff from the user? –Yes! ● Users and applications demand some visibility of: –Failure domains –Premium features ● Deployers and operators determine the level of granularity exposed.
  • 9. Segregation in OpenStack ● Infrastructure segregation: –Regions –Cells –Host aggregates –Availability zones
  • 10. Segregation in OpenStack ● Infrastructure segregation: –Regions –Cells –Host aggregates –Availability zones ● Workload segregation: –Server groups
  • 12. Regions ● Complete OpenStack deployments –Share at least a Keystone and Horizon installation –Implement their own targetable API endpoints ● In default deployment all services in one region – 'RegionOne'. ● New regions are created using Keystone: –$ keystone endpoint­create ­­region “RegionTwo”
  • 13. Regions ● Target actions at a region's endpoint (mandatory): –CLI: ● $ nova --os-region-name “RegionTwo” boot … –Horizon:
  • 16. Cells ● Standard (simplified) compute deployment without Cells:
  • 17. Cells ● Maintains a single compute endpoint ● Relieve pressure on queues database at scale (000's of nodes) ● Introduces the cells scheduler
  • 18. API (parent) cell ● Adds a load balancer in front of multiple instances of the API service ● Has its own message queue ● Includes a new service, nova-cells –Handles cell scheduling –Packaged as openstack-nova-cells –Required in every cell
  • 19. Compute (child) cell ● Each compute cell contains: –Its own message queue and database –Its own scheduler, conductor, compute nodes
  • 20. Common cell configuration ● Setup database and message broker for each cell ● Initialize cell database using nova-manage ● Optionally: –Modify scheduling filter/weight configuration for cells scheduler –Create cells JSON file to avoid need to avoid reloading from database
  • 21. API (parent) cell configuration ● Nova.conf: –Change compute_api_class –Enable cells –Name the cell –Enable and start nova-cells
  • 22. Compute (child) cell configuration ● nova.conf –Disable quota driver –Enable cells –Name the cell –Enable and start nova-cells
  • 23. Cells pitfalls ● That all sounds pretty good – sign me up! ● Lack of “cell awareness” in other projects ● Minimal test coverage in the gate ● Some standard functionality currently broken with cells: –Host aggregates –Security groups
  • 24. So how do they stack up? Regions ● Supported by all services ● Separate endpoints ● Exist above scheduling ● Linked via REST APIs Cells ● Supported by compute ● Common endpoint ● Additional scheduling layer ● Linked via RPC
  • 26. Host aggregates ● Logical groupings of hosts based on metadata ● Typically metadata describes special capabilities hosts share: –Fast disks for ephemeral data storage –Fast network interfaces –Etc. ● Hosts can be in multiple host aggregates: –“Hosts that have SSD storage and GPUs”
  • 27. Host aggregates ● Implicitly user targetable: –Admin defines host aggregate with metadata, and a flavor that matches it –User selects flavor with extra specifications when requesting instance –Scheduler places instance on a host in a host aggregate that matches (extra specifications to metadata) –User explicitly targets a capability, not an aggregate
  • 29. Host aggregates (example) ● Create host aggregates: –$ nova aggregate­create storage­optimized –$ nova aggregate­create network­optimized –$ nova aggregate­create compute­optimized
  • 31. Host aggregates (example) ● Populate the aggregates: –$ nova aggregate­add­host 1 host­1 –$ nova aggregate­add­host 1 host­2 –...
  • 38. Host aggregates (example) ● Set flavor extra specifications: –$ nova flavor­key 1 set fast­storage=true –...
  • 39. Host aggregates (example) ● Filter scheduler matches extra specifications of flavor to metadata of aggregate.
  • 40. Availability zones ● Logical groupings of hosts based on arbitrary factors like: –Location (country, data center, rack, etc.) –Network layout –Power source ● Explicitly user targetable: –$ nova boot ­­availability­zone “rack­1” ● OpenStack Block Storage (Cinder) also has availability zones
  • 41. Availability zones ● Host aggregates are made explicitly user targetable by creating them as an AZ: –$ nova aggregate­create tier­1 us­east­tier­1  –tier­1 is the aggregate name, us­east­tier­1 is the AZ name ● Host aggregate is the availability zone in this case –Hosts can not be in multiple availability zones ● Well...sort of. –Hosts can be in multiple host aggregates
  • 44. So how do they stack up? Host Aggregates ● Implicitly user targetable ● Hosts can be in multiple aggregates ● Grouping based on common capabilities Availability Zones ● Explicitly user targetable ● Hosts can not be in multiple zones (see previous disclaimer) ● Grouping based on arbitrary factors such as location, power, network
  • 46. Server groups ● Policies for defining workload placement rules for a group –Anti-affinity filter – Grizzly –Affinity filter – Havana –API – Icehouse ● Implemented via scheduler filters: –ServerGroupAffinityFilter –ServerGroupAntiAffinityFilter
  • 47. Server groups ● Affinity: –Places instances within the group on the same host ● Anti-affinity: –Places instances within the group on different hosts ● Not equivalent to AWS placement groups (host placement versus availability zone placement)
  • 48. Server groups ● Create the server group: –$ nova server­group­create ­­policy=anti­affinity  my_group  –Really defining a policy rather than a group. ● Specify the group UUID or name when launching instances: –$ nova boot ­­image ... ­­flavor … ­­hint  group=group_id
  • 51. What next? ● Relevant design sessions: –Simultaneous Scheduling for Server Groups ● Friday, May 16 • 1:20pm – 2:00pm –Scheduler hints for VM life cycle ● Friday, May 16 • 2:10pm – 2:50pm –Nova Dev/Ops Session ● Friday, May 16 • 3:00pm - 3:40pm
  • 52. Resources ● Operations Guide – Chapter 5 “Scaling” –http://docs.openstack.org/trunk/openstack-ops/content/scaling.html ● Configuration Reference Guide – Chapter 2 “Compute” –http://docs.openstack.org/trunk/config- reference/content/section_compute-cells.html ● OpenStack in Production Blog –http://openstack-in-production.blogspot.fr/

Editor's Notes

  • #2: Role at Red Hat involves talking to customers, primarily about OpenStack compute Confusion about various options for compute segregation common Here we are! I'm a compute guy, so primarily talking about compute
  • #3: Physical characteristics might include: Geographic location (country, state, city, data center, rack) Power source Network layout Anything really, but typically something where a fault would take out the entire unit or it's desirable to upgrade it as one.
  • #4: Physical characteristics might include: Geographic location (country, state, city, data center, rack) Power source Network layout Anything really, but typically something where a fault would take out the entire unit or it's desirable to upgrade it as one.
  • #5: 30 hosts for vSphere/ESXi cluster ~30 clusters for vCenter management
  • #6: In EC2 one user's us-east-1a may differ from anothers.
  • #13: AVAILABLE_REGIONS Some facility for sharing other facilities between regions by adding endpoints for same IP in both. Token replication, use memcached to help
  • #14: AmbiguousEndpoints
  • #31: No facility for setting metadata via Horizon, yet.
  • #41: Targeting is not mandatory. If a default is specified it is used. If no default is specified
  • #48: Not equivalent with current policies anyway.
  • #50: Trying to boot more instances in a group with affinity than the hardware allows results in NoValidHost (hard affinity)
  • #51: Trying to boot more instances than there are hosts available in a group with anti-affinity results in NoValidHost (hard anti-affinity).