Download - DEVNET-1106Upcoming Services in OpenStack
Upcoming Services in OpenStack
Rohit Agarwalla (@rohitagarwalla), Technical Leader
DEVNET-1106
3© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
• OpenStack Overview
• OpenStack Project Governance
• Upcoming Services in OpenStack• Trove• Sahara• Congress• Magnum• Ironic
Agenda
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
OpenStack Overview
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106 5
OpenStack Overview
Design tenets – scale & elasticity, share nothing & distribute everything
Open source Cloud Computing Platform for Private and Public Clouds
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
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
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
OpenStack Project Governance
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Incubation-Integration Requirements
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Project Structure Issues and Reforms
Issues
Current ladder structure process inhibits OpenStack adoption
Projects part of “integrated” release recognized officially part of OpenStack
Integrated release “package” lacks definition and spans different XaaS services
Reforms
• Replace the single “integrated” release with tags and objective rules to apply them to projects - Maturity, Security-supported, Massively Scalable etc
• Projects that meet OpenStack inclusion criteria be hosted under OpenStack git namespaces
• More details here
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Upcoming Services in OpenStack
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Trove - Database as a Service
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
• Database as a Service - Automating complex database administrative tasks – Deployment, Configuration, Scaling, HA
• Single 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
• Companies – HP, Tesora and others
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)
https://wiki.openstack.org/wiki/Trove
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Trove Architecture
• API
• Taskmanager • Managing the lifecycle of instances – Talks to
Nova, Cinder, Glance• Managing operations on the database instance
• Guestagent• Performing operations on the database itself
• Conductor• Status – Heartbeat messages, Backup/Restore
checks
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Sahara – Data Processing as a Service
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
• 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
• Companies – Mirantis, RedHat and othershttps://wiki.openstack.org/wiki/Sahara
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
• Elastic Data Processing (EDP) – Execution of jobs on clusters created from Sahara.
• Supports – Hadoop - Hive, Pig, MapReduce, MapReduce.Streaming, Java and Spark
Sahara Architecture
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
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Congress – Policy as a Service
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Congress• Policy as a Service for governance and compliance in a Cloud
• Policy language - Datalog (variant of SQL) – store state in a collection of tables• Classification – Cloud states that violate policy (error table)• Enforcement – Action associated with a policy• Access Control – Control over users that can execute actions
• Enforcement • Proactive – Prevent policy violations before they occur• Reactive – Corrective actions when policy is violated• Interactive – Human decides corrective action for policy violations• Assistive – Services offer information to prevent policy violations
• API• Policy, Policy rules, Policy Tables, Policy Table Rows• Data sources, Data sources Tables, Data sources Rows
• Companies – VMware, HP, Huawie and others
Eg: Every Network connected to a VM must either be public or private and owned by someone in the same group as the VM’s ownererror :- nova:vm(vm), neutron:network(network), nova:network(vm, network), not neutron:public(network), neutron:private(network), nova:owner(vm, vm-own), neutron:owner(network, net-own), not same-group(vm-own, net-own)
https://wiki.openstack.org/wiki/Congress
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Magnum – Container as a Service
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
• Nova Container virtualization drivers - Docker, LXC, OpenVZ, ZeroVM • Provide basic container features• Container features such as setting environment variables, accepting
a shell command to execute at runtime cannot fit into virt drivers
• 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 Docker container• Pod – a collection of containers running on one physical or virtual
machine• Service – a port to Pod mapping• Node – a bare metal or virtual machine where work executes• Bay – Collection of nodes where work is scheduled
Magnum
Kubernetes Endpoint
Docker Endpoint
Nova Endpoint
Magnum
Launch instances with Agent for hosting Containers
Operation on Service and Pod objects
Operation on Container object
• Integration with Kubernetes, Docker, Nova
• Companies – Rackspace, RedHat, Cisco and others
https://wiki.openstack.org/wiki/Magnum
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
Ironic – Bare-Metal as a Service
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
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
https://wiki.openstack.org/wiki/Ironic
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106
• OpenStack services ecosystem is expanding
• Lots of opportunities to contribute and influence the community
Summary
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106 24
OpenStack@DevNet www.developer.cisco.com/openstack
Thank you
25© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicDEVNET-1106