GowthamLabs
GowthamLabs
Published in
8 min readMay 4, 2018

--

Openstack: A Courageous jump into the Ocean of Cloud Computing

OpenStack is a collection of open source software projects that provides capabilities necessary to build a typical IaaS based solution for enterprises, that includes, but not limited to VM’s, Containers, self-service provisioning.

Compute Service

  1. Nova (Compute) — Nova provides a way to provision compute instances. Nova supports creating virtual machines, baremetal servers,and has limited support for system containers. Nova runs as a set of daemons on top of existing Linux servers to provide that service.
  2. Glance (Image Service) — Glance provides a service where users can upload and discover data assets that are meant to be used with other services. It currently includes images and metadata definitions.Glance image services include discovering, registering, and retrieving virtual machine (VM) images. Glance has a RESTful API that allows querying of VM image metadata as well as retrieval of the actual image.
  3. Ironic (Bare Metal Provisioning Service) — Ironic is an integrated OpenStack program which aims to provision bare metal machines instead of virtual machines, forked from the Nova baremetal driver.
  4. Magnum (Container Orchestration Engine Provisioning) — Magnum is an OpenStack API service for making container orchestration engines such as Docker Swarm, Kubernetes, and Apache Mesos available as first class resources in OpenStack.
  5. Storlets (Computable Object Store) — Openstack Storlets is an extension to Openstack Swift which allows to run user defined code inside the object store in a secure and isolated manner through the use of Docker containers.
  6. Zun (Container Management Service) — Zun provides an OpenStack API for launching and managing containers backed by different container technologies.

Storage, Backup & Recovery

  1. Swift (Object Store) — Swift offers cloud storage software that can store and retrieve lots of data with a simple API.It’s built for scale and optimized for durability, availability, and concurrency across the entire data set. Swift is ideal for storing unstructured data that can grow without bound.
  2. Cinder (Block Storage) — Cinder is a Block Storage service which is designed to present storage resources to end users that can be consumed by the Nova.
  3. Manila (Shared File Systems) — Manila is a file share service that was recently labeled as an officially incubated OpenStack program.
  4. Karbor (Application Data Protection as a Service) — Karbor protects the Data and Meta-Data that comprises an OpenStack-deployed Application against loss/damage by providing a standard framework of APIs and services that allows vendors to provide plugins through a unified interface
  5. Freezer (Backup, Restore, and Disaster Recovery) — Freezer is a distributed backup restore and disaster recovery as a service platform. It is designed to be multi OS focused on providing efficiency and flexibility for block based backups, file based incremental backups, point-in-time actions, jobs synchronization and many other features.

Networking & Content Delivery

  1. Neutron (Networking) — Neutron is a system for managing networks and IP addresses. OpenStack Networking ensures the network is not a bottleneck or limiting factor in a cloud deployment, and gives users self-service ability, even over network configurations.
  2. Designate (DNS Service) — Designate is a multi-tenant DNSaaS service for OpenStack. It provides a REST API with integrated Keystone authentication. It can be configured to auto-generate records based on Nova and Neutron actions. Designate supports a variety of DNS servers including Bind9 and PowerDNS.
  3. Dragonflow (Neutron Plugin) — Dragonflow is a distributed control plane implementation of Neutron. Its mission is to implement advanced networking services driven by the Neutron API and running on a distributed control plane. It support containers networking and large scale production loads.
  4. Kuryr (Container plugin) — OpenStack and Neutron are no longer the new kid in the block, Neutron has matured and its popularity in OpenStack deployments over nova-network is increasing, it has a very rich ecosystem of plugins and drivers which provide networking solutions and services (like LBaaS, VPNaaS and FWaaS).
  5. Octavia (Load Balancer) — Octavia is an operator-grade open source scalable load balancer. Octavia is currently under development.
  6. Tackernfv (Orchestration) — Tacker is an official OpenStack project building a Generic VNF Manager and a NFV Orchestrator to deploy and operate Network Services and Virtual Network Functions on an NFV infrastructure platform like OpenStack.
  7. Tricircle (Networking Automation for Multi-Region Deployments) — The Tricircle is to provide networking automation across Neutron in multi-region OpenStack deployments.

Data & Analytics

  1. Trove (Database as a Service) — OpenStack Trove is a database as a service open source project. The project’s mission is to provide scalable and reliable cloud database as a service provisioning functionality for relational and non-relational database engines and to improve its full-featured and extensible open source framework.
  2. Sahara (Big Data Processing Framework Provisioning) — The Sahara project provides a simple means to provision a data-intensive application cluster on top of OpenStack. It’s the ex Savanna project, renamed due to potential trademark issues.
  3. Searchlight (Indexing and Search) — Searchlight dramatically improves the user focused search capabilities and performance on behalf of various OpenStack cloud services. It accomplishes this by offloading user search queries from existing API servers and indexing their data into ElasticSearch.

Security, Identity & Compliance

  1. Keystone (Identity service) — Keystone is an OpenStack service that provides API client authentication,service discovery,and distributed multi-tenant authorization by implementing OpenStack’s Identity API.
  2. Barbican (Key Management) — Barbican is a REST API designed for the secure storage,provisioning and management of secrets such as passwords,encryption keys and X.509 Certificates.
  3. Congress (Governance) — Congress aims to provide an extensible open-source framework for governance and regulatory compliance across any cloud services within a dynamic infrastructure. It is a cloud service whose sole responsibility is policy enforcement.
  4. Mistral(Workflow service) — Mistral is a workflow service. Most business processes consist of multiple distinct interconnected steps that need to be executed in a particular order in a distributed environment.

Management Tools

  1. Horizon (Dashboard) — Horizon is the canonical implementation of Openstack’s Dashboard,which provides a web based user interface to OpenStack services including Nova,Swift,Keystone,etc.
  2. Openstack Client (CLI) (Command-line client) — OpenStack Client is a command line client for OpenStack that brings the command set for Compute, Identity, Image, Object Storage and Block Storage APIs together in a single shell with a uniform command structure.
  3. Rally (Benchmark service) — Rally can easily create graphical OpenStack test results with pie charts, performance charts, and histograms, for reports that viewers can quickly digest.
  4. Senlin (Clustering service) — Senlin is a clustering service for OpenStack clouds. It creates and operates clusters of homogeneous objects exposed by other OpenStack services.
  5. Vitrage (RCA (Root Cause Analysis service)) — Vitrage is the OpenStack RCA service for organizing,analyzing and expanding OpenStack alarms & events,yielding insights regarding the root cause of problems and deducing their existence before they are directly detected.
  6. Watcher (Optimization Service) — Watcher provides a flexible and scalable resource optimization service for multi-tenant OpenStack-based clouds. Watcher provides a complete optimization loop — including everything from a metrics receiver, optimization processor and an action plan applier.

Deployment Tools

  1. Chef Openstack (Chef cookbooks for OpenStack) — Chef is a systems integration framework built to bring the benefits of configuration management to your entire infrastructure. This framework makes it easy to deploy servers and applications to any physical, virtual, or cloud location, no matter the size of the infrastructure.
  2. Kolla (Container deployment) — Kolla provides production-ready containers and deployment tools for operating OpenStack clouds that are scalable, fast, reliable, and upgradable using community best practices.
  3. Openstack Charms (Juju Charms for OpenStack) — Develop and maintain Juju Charms for deploying and managing OpenStack services.
  4. Openstack — Ansible (Ansible Playbooks for OpenStack) — OpenStack-Ansible provides Ansible playbooks and roles for the deployment and configuration of an OpenStack environment.
  5. Puppet Openstack (Puppet Modules for OpenStack) — The Puppet modules for OpenStack bring scalable and reliable IT automation to OpenStack cloud deployments.
  6. Tripleo (Deployment service) — Develop and maintain tooling and infrastructure able to deploy OpenStack in production, using OpenStack itself wherever possible.

Application Services

  1. Heat (Orchestration) — Heat orchestrates the infrastructure resources for a cloud application based on templates in the form of text files that can be treated like code. Heat provides both an OpenStack-native ReST API and a CloudFormation-compatible Query API. Heat also provides an autoscaling service that integrates with the OpenStack Telemetry services, so you can include a scaling group as a resource in a template.
  2. Zaqar (Messaging Service) — Zaqar is a multi-tenant cloud messaging service for web and mobile developers. The service features a fully RESTful API, which developers can use to send messages between various components of their SaaS and mobile applications. Underlying this API is an efficient messaging engine designed with Scalability and security in mind. Other OpenStack components can integrate with Zaqar to surface events to end users and to communicate with guest agents that run in the “”over-cloud”” layer. Cloud operators can leverage Zaqar to provide equivalents of SQS and SNS to their customers.
  3. Murano (Application Catalog) — Murano enables application developers and cloud administrators to publish various cloud-ready applications in a browsable catalog. Cloud users including inexperienced ones can then use the catalog to compose reliable application environments with the push of a button. Murano uses OpenStack Heat to orchestrate infrastructure resources for the application.
  4. Solum (Software Development Lifecycle Automation) — To make cloud services easier to consume and integrate with your application development process by automating the source-to-image process, and simplifying app-centric deployment.

Monitoring & Metering

  1. Ceilometer (Metering & Data Collection Service) — Ceilometer’s goal is to efficiently collect, normalise and transform data produced by OpenStack services. The data it collects is intended to be used to create different views and help solve various telemetry use cases.
  2. Cloudkitty (Billing and Chargebacks) — CloudKitty is a rating-as-a-service project designed to translate metrics to prices. CloudKitty supports multiple collectors, multiple rating policies and multiple outputs.
  3. Monasca (Monitoring) — Monasca is a open-source multi-tenant, highly scalable, performant, fault-tolerant monitoring-as-a-service solution that integrates with OpenStack. It uses a REST API for high-speed metrics processing and querying and has a streaming alarm engine and notification engine.
  4. Aodh (Alarming Service) — Aodh’s goal is to enable the ability to trigger actions based on defined rules against sample or event data collected by Ceilometer.
  5. Panko (Event, Metadata Indexing Service) — Panko provide a metadata indexing, event storage service which enables users to capture the state information of OpenStack resources at a given time. Its aim is to enable a scalable means of storing both short and long term data for use cases such as auditing and system debugging.

Openstack Distributions

  1. Debian
  2. Stack Buffet
  3. H3 Cloud OS
  4. FusionSphere OpenStack
  5. Bright OpenStack
  6. Platform 9 Managed OpenStack
  7. Hyper-C
  8. Swift Stack Object Storage Platform
  9. Oracle OpenStack for Oracle Solaris
  10. IBM Spectrum Scale for Object Storage
  11. Ultimum OpenStack
  12. TECS OpenStack
  13. PRIMEFLEX for OpenStack
  14. Mirantis OpsCare
  15. Dell EMC Ready Bundle for Red Hat OpenStack
  16. AWcloud OpenStack Distribution
  17. Breqwatr Cloud Appliance
  18. SUSE OpenStack Cloud
  19. ESCloud
  20. Mirantis Cloud Platform
  21. Debian
  22. VMware Integrated OpenStack
  23. Animbus Cloud OS
  24. Fish OS
  25. Think Cloud OpenStack
  26. Canonical OpenStack
  27. CT Cloud Platform
  28. vScaler OpenStack
  29. T2 Cloud OS
  30. InCloud OpenStack
  31. Oracle OpenStack
  32. Rackspace OpenStack Private Cloud Software
  33. Metacloud
  34. Red Hat OpenStack Platform
  35. UnitedStack OpenStack Cloud 4.0

--

--