Upcoming Services in
OpenStack
Rohit Agarwalla, Technical Leader
DEVNET-1102
roagarwa@cisco.com, @rohitagarwalla
• OpenStack Overview
• Upcoming Services
• Trove
• Sahara
• Ironic
• Magnum
• Kolla
Agenda
OpenStack Overview
Design tenets – scale & elasticity, share nothing & distribute everything
Open source Cloud Computing Platform for Private and Public Clouds
OpenStack Projects
Compute (Nova) Dashboard (Horizon) Database (Trove)
Network (Neutron) Image (Glance) Orchestration (Heat)
Object Storage (Swift) Identity (KeyStone) Data Processing (Sahara)
Block Storage (Cinder) Telemetry (Ceilometer) Deployment (Triple O)
Bare Metal (Ironic) DNS (Designate) Application Catalog (Murano)
Containers (Magnum) Key Management (Barbican) Policy (Congress)
File System (Manila) Messaging (Zaqar) ….
OpenStack Progress
Austin – Oct 2010
Bexar – Feb 2011
Cactus– April 2011
Diablo – Sept 2011
Essex – April 2012
Folsom– Sept 2012
Grizzly– April 2013
Havana – Oct 2013
IceHouse– April 2014
Juno – Oct 2014
Kilo – May 2015
130 contributors
30 new features
2010
2011
2012
2013
2014
Started with Compute
and Storage service
12th OpenStack release
1933 contributors
760 new features
8300 bugs fixed
164 companies
Liberty – Oct 2015
24,000 people
495 companies
Mitaka – April 2016
2015
Newton – Oct 2016
Trove - Database as a
Service
• Database as a Service - Automating
complex database administrative
tasks – Deployment, Configuration,
Scaling, HA
• Single Admin Tenant Database per
Nova instance
• Datastore type - Relational and Non-
Relational
• Pluggable – Support for MySQL,
PostgreSQL, NoSQL – Cassandra,
MongoDB, Couchbase, Redis
• Integration with other projects –
Designate, Heat, Neutron
Trove
API Functionality
Management Create/Delete/Show/List Database
instance, Database, Users, Flavors
Security Support for Security Groups, No SSH by
default
Configuration
groups
Support for user defined configuration
settings (MySQL, MongoDB) – Eg:
max_connections, Buffer pool size etc
Backups Support for full backups and incremental
backups using Swift (MySQL,
Cassandara, Couchbase)
Replication Async mysql master-slave replication from
snapshot of master
Clustering Support for shards - three member replica-
sets (MongoDB)
Sahara – Data Processing
as a Service
• Cluster provisioning - Create and Manage Hadoop clusters
• Node Group Templates – Defines instances/nodes within a
cluster that will each run selected hadoop processes and store
data
• Plugins – Responsible for provisioning Hadoop cluster – Vanilla,
Hortonworks, MapR, Clouder, Spark
• Cluster Templates – What Node Groups to be included and
how many instances to be created in each
• Anti Affinity Groups – Processes may not be launched more than
once on a single host
• Cluster – Represents a Hadoop cluster run using Cluster
Template
• Image Registry – Used to provide additional information about
images using tags
• Cluster Scaling - Change instances in a existing Node group or add
new Node groups
Sahara
• Configure HDFS and MapReduce
parameters at Node and Cluster level
• Integration with Cinder, Swift, Neutron, Heat
API Functionality
Data
Sources
Stores URL which designates
the location of input and
output data
Job
Binaries
URL to script or Jar file stored
in internal DB or Swift
Jobs Specifies the job and lists all
individual Job Binary objects
required for execution
Job
Execution
Monitor and Manage a Job
executed/launched on a
Cluster
Ironic – Bare-Metal as a
Service
Ironic
• Service for Bare metal management
• Ironic API – RESTful API service
• Ironic Conductor – Interacts with hardware;
asynchronous handling of both requested and periodic
actions
• Ironic Python Agent – utility service temporarily booted
on machines to provide remote access to hardware for
provisioning and management
• Ironic Drivers – Communicate with hardware devices
• Nova driver
• Using Nova API can provision bare metal servers
• Based on Open technologies
• DHCP, TFTP, PXE - In a PXE environment, TFTP is
used to download NBP over the network using
information from the DHCP server.
• Ironic API – Chassis, Drivers, Links, Nodes, Ports
Magnum – Container as a
Service
• Nova Container virtualization drivers - Docker, LXC, OpenVZ,
ZeroVM
• Heat resource for Docker
• Container as a Service (“Nova of containers”) - Provide a REST
API for Container management
• Provide app isolation, portability, manageability with containers
• Containers in VMs, Bare Metal, Containers
• Resources
• Container – a container
• Node – a bare metal or virtual machine where work executes
• Bay – Collection of nodes where work is scheduled
• Service – a port to Pod mapping
• Pod – a collection of containers running on one physical or
virtual machine
Magnum
Kubernetes
Endpoint
Docker
Endpoint
Mesos
Endpoint
Magnum
Launch instances with
Agent for hosting
Containers
Operation on Service
and Pod objects
Operation on Container
object
• Integration with Kubernetes, Docker,
Mesos
• Companies – Rackspace, RedHat,
Cisco and others
Kolla – Containerization of
OpenStack Services
• Containerization of OpenStack services - All "core" OpenStack
services implemented as micro-services in Docker containers.
• Technology
• Dockers – Deploying containers and managing images
• Ansible – Orchestration tool for multi node deployment
• Jinja2 – Templating language for Python
• Developing and Deploying OpenStack service using Kolla
• Supports deployment from binary and source across multiple
distributions - CentOS, Debian, Fedora, Oracle Linux, RHEL,
and Ubuntu
• AIO and multinode deployment using Ansible with n-way active
high availability.
• Development environments using Heat, Vagrant, or bare-metal.
Kolla
Node
Keystone
Nova
Glance
Neutron
Horizon
Horizon
….
• OpenStack services ecosystem is
expanding
• Lots of opportunities to contribute and
influence the community
Summary
Thank you
Upcoming services in OpenStack

Upcoming services in OpenStack

  • 2.
    Upcoming Services in OpenStack RohitAgarwalla, Technical Leader DEVNET-1102 roagarwa@cisco.com, @rohitagarwalla
  • 3.
    • OpenStack Overview •Upcoming Services • Trove • Sahara • Ironic • Magnum • Kolla Agenda
  • 4.
    OpenStack Overview Design tenets– scale & elasticity, share nothing & distribute everything Open source Cloud Computing Platform for Private and Public Clouds
  • 5.
    OpenStack Projects Compute (Nova)Dashboard (Horizon) Database (Trove) Network (Neutron) Image (Glance) Orchestration (Heat) Object Storage (Swift) Identity (KeyStone) Data Processing (Sahara) Block Storage (Cinder) Telemetry (Ceilometer) Deployment (Triple O) Bare Metal (Ironic) DNS (Designate) Application Catalog (Murano) Containers (Magnum) Key Management (Barbican) Policy (Congress) File System (Manila) Messaging (Zaqar) ….
  • 6.
    OpenStack Progress Austin –Oct 2010 Bexar – Feb 2011 Cactus– April 2011 Diablo – Sept 2011 Essex – April 2012 Folsom– Sept 2012 Grizzly– April 2013 Havana – Oct 2013 IceHouse– April 2014 Juno – Oct 2014 Kilo – May 2015 130 contributors 30 new features 2010 2011 2012 2013 2014 Started with Compute and Storage service 12th OpenStack release 1933 contributors 760 new features 8300 bugs fixed 164 companies Liberty – Oct 2015 24,000 people 495 companies Mitaka – April 2016 2015 Newton – Oct 2016
  • 7.
    Trove - Databaseas a Service
  • 8.
    • Database asa Service - Automating complex database administrative tasks – Deployment, Configuration, Scaling, HA • Single Admin Tenant Database per Nova instance • Datastore type - Relational and Non- Relational • Pluggable – Support for MySQL, PostgreSQL, NoSQL – Cassandra, MongoDB, Couchbase, Redis • Integration with other projects – Designate, Heat, Neutron Trove API Functionality Management Create/Delete/Show/List Database instance, Database, Users, Flavors Security Support for Security Groups, No SSH by default Configuration groups Support for user defined configuration settings (MySQL, MongoDB) – Eg: max_connections, Buffer pool size etc Backups Support for full backups and incremental backups using Swift (MySQL, Cassandara, Couchbase) Replication Async mysql master-slave replication from snapshot of master Clustering Support for shards - three member replica- sets (MongoDB)
  • 9.
    Sahara – DataProcessing as a Service
  • 10.
    • Cluster provisioning- Create and Manage Hadoop clusters • Node Group Templates – Defines instances/nodes within a cluster that will each run selected hadoop processes and store data • Plugins – Responsible for provisioning Hadoop cluster – Vanilla, Hortonworks, MapR, Clouder, Spark • Cluster Templates – What Node Groups to be included and how many instances to be created in each • Anti Affinity Groups – Processes may not be launched more than once on a single host • Cluster – Represents a Hadoop cluster run using Cluster Template • Image Registry – Used to provide additional information about images using tags • Cluster Scaling - Change instances in a existing Node group or add new Node groups Sahara • Configure HDFS and MapReduce parameters at Node and Cluster level • Integration with Cinder, Swift, Neutron, Heat API Functionality Data Sources Stores URL which designates the location of input and output data Job Binaries URL to script or Jar file stored in internal DB or Swift Jobs Specifies the job and lists all individual Job Binary objects required for execution Job Execution Monitor and Manage a Job executed/launched on a Cluster
  • 11.
  • 12.
    Ironic • Service forBare metal management • Ironic API – RESTful API service • Ironic Conductor – Interacts with hardware; asynchronous handling of both requested and periodic actions • Ironic Python Agent – utility service temporarily booted on machines to provide remote access to hardware for provisioning and management • Ironic Drivers – Communicate with hardware devices • Nova driver • Using Nova API can provision bare metal servers • Based on Open technologies • DHCP, TFTP, PXE - In a PXE environment, TFTP is used to download NBP over the network using information from the DHCP server. • Ironic API – Chassis, Drivers, Links, Nodes, Ports
  • 13.
  • 14.
    • Nova Containervirtualization drivers - Docker, LXC, OpenVZ, ZeroVM • Heat resource for Docker • Container as a Service (“Nova of containers”) - Provide a REST API for Container management • Provide app isolation, portability, manageability with containers • Containers in VMs, Bare Metal, Containers • Resources • Container – a container • Node – a bare metal or virtual machine where work executes • Bay – Collection of nodes where work is scheduled • Service – a port to Pod mapping • Pod – a collection of containers running on one physical or virtual machine Magnum Kubernetes Endpoint Docker Endpoint Mesos Endpoint Magnum Launch instances with Agent for hosting Containers Operation on Service and Pod objects Operation on Container object • Integration with Kubernetes, Docker, Mesos • Companies – Rackspace, RedHat, Cisco and others
  • 15.
    Kolla – Containerizationof OpenStack Services
  • 16.
    • Containerization ofOpenStack services - All "core" OpenStack services implemented as micro-services in Docker containers. • Technology • Dockers – Deploying containers and managing images • Ansible – Orchestration tool for multi node deployment • Jinja2 – Templating language for Python • Developing and Deploying OpenStack service using Kolla • Supports deployment from binary and source across multiple distributions - CentOS, Debian, Fedora, Oracle Linux, RHEL, and Ubuntu • AIO and multinode deployment using Ansible with n-way active high availability. • Development environments using Heat, Vagrant, or bare-metal. Kolla Node Keystone Nova Glance Neutron Horizon Horizon ….
  • 17.
    • OpenStack servicesecosystem is expanding • Lots of opportunities to contribute and influence the community Summary
  • 18.